Pra*_*nav 6 filesystems partition lvm resize2fs
我有一个带有 2 TB 存储空间的专用服务器。
我的问题是整个存储分配给根分区。
每当我尝试使用 调整它的大小时lvresize,根分区都会损坏,然后我必须重新配置服务器。
是否有任何选项可以在不卸载 lvm 的情况下调整根分区的大小?我正在尝试将根分区减少到 100GB。
电压
root@s93079:/home/customer# vgs
VG #PV #LV #SN Attr VSize VFree
s93079-vg 1 2 0 wz--n- 1.82t 0
Run Code Online (Sandbox Code Playgroud)
等级
LV VG Attr LSize Pool Origin Data% Meta
% Move Log Cpy%Sync Convert
root s93079-vg -wi-ao---- 1.79t
swap_1 s93079-vg -wi-ao---- 32.00g
Run Code Online (Sandbox Code Playgroud)
fdisk -l
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 499711 497664 243M 83 Linux
/dev/sda2 501758 3907028991 3906527234 1.8T 5 Extend
/dev/sda5 501760 3907028991 3906527232 1.8T 8e Linux
Disk /dev/mapper/s93079--vg-root: 1.8 TiB, 1965782204416 byt
es, 3839418368 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/s93079--vg-swap_1: 32 GiB, 34355544064 byte
s, 67100672 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Run Code Online (Sandbox Code Playgroud)
显示
--- Volume group ---
VG Name s93079-vg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size 1.82 TiB
PE Size 4.00 MiB
Total PE 476870
Alloc PE / Size 476870 / 1.82 TiB
Free PE / Size 0 / 0
VG UUID dPrEwA-77pM-pGai-9jZB-ldMZ-iL20-HAe9
Dj
Run Code Online (Sandbox Code Playgroud)
lvdisplay /dev/s93079-vg/root
--- Logical volume ---
LV Path /dev/s93079-vg/root
LV Name root
VG Name s93079-vg
LV UUID bpGNau-XirV-P7PA-8d6k-OCOy-TAwN-HXl
FVI
LV Write Access read/write
LV Creation host, time s93079, 2016-08-27 09:22:05 -0500
LV Status available
# open 1
LV Size 1.79 TiB
Current LE 468679
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:0
Run Code Online (Sandbox Code Playgroud)
lvdisplay /dev/s93079-vg/swap_1
--- Logical volume ---
LV Path /dev/s93079-vg/swap_1
LV Name swap_1
VG Name s93079-vg
LV UUID j74PLZ-E9gK-9Bbb-EkKq-xRJv-TuU4-FgH
gm
LV Write Access read/write
LV Creation host, time s93079, 2016-08-27 09:22:05 -0500
LV Status available
# open 2
LV Size 32.00 GiB
Current LE 8191
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:1
Run Code Online (Sandbox Code Playgroud)
df-h
/dev/dm-0 1.8T 923M 1.7T 1% /
udev 10M 0 10M 0% /dev
tmpfs 3.2G 8.5M 3.2G 1% /run
tmpfs 7.9G 0 7.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 7.9G 0 7.9G 0% /sys/fs/cgroup
/dev/sda1 236M 33M 191M 15% /boot
Run Code Online (Sandbox Code Playgroud)
小智 6
不,不安全。 根据我的阅读,VG 必须可用(vgchange --available y,但未安装)。我建议您从 liveCD 或 USB 启动,以便将工具加载到内存中,但不会挂载所有文件系统。
检查文件系统,我们不想调整处于不一致状态的内容
e2fsck -f /dev/s93079-vg/root
Run Code Online (Sandbox Code Playgroud)
调整实际文件系统的大小,比最终目标小一点。
resize2fs /dev/s93079-vg/root 90G
Run Code Online (Sandbox Code Playgroud)
现在,将 LVM 缩小到所需的大小
lvreduce -L 100G /dev/s93079-vg/root
Run Code Online (Sandbox Code Playgroud)
最后,增长根文件系统以匹配目标 LVM 卷
resize2fs /dev/s93079-vg/root
Run Code Online (Sandbox Code Playgroud)
当我浏览了几个指南时,我发现关于该主题的最有用的博客是https://blog.shadypixel.com/how-to-shrink-an-lvm-volume-safely/