Ubuntu 的根分区扩容
ESXI
在ESXI管理页增加其硬盘大小。强烈建议为虚拟机拍摄快照,增加容错空间。
观察
了解系统中各个块设备的布局和状态。可见磁盘空间已增加,而分区的大小没有增加。
shell
lsblklog
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 125G 0 disk
├─sda1 8:1 0 1G 0 part /boot/efi
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 101.9G 0 part
└─ubuntu--vg-ubuntu--lv 252:0 0 101.9G 0 lvm /
sr0 11:0 1 1024M 0 rom确认新空间已被识别
shell
fdisk -llog
GPT PMBR size mismatch (220200959 != 262143999) will be corrected by write.
Disk /dev/sda: 125 GiB, 134217728000 bytes, 262144000 sectors
Disk model: Virtual disk
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 0613813F-ABE7-4621-8B36-BB9E90DD601B
Device Start End Sectors Size Type
/dev/sda1 2048 2203647 2201600 1G EFI System
/dev/sda2 2203648 6397951 4194304 2G Linux filesystem
/dev/sda3 6397952 220198911 213800960 101.9G Linux filesystem如果 /dev/sda 还是旧大小,需要扫描磁盘(或重启虚拟机)
shell
echo 1 > /sys/class/block/sda/device/rescan扩容分区
使用 growpart 工具扩容分区,这是最安全、最简单的方法。
安装工具(如果已有则跳过)
shell
apt update && apt install cloud-guest-utils -y执行扩容命令。注意命令是磁盘设备 + 空格 + 分区号
shell
growpart /dev/sda 3log
CHANGED: partition=3 start=6397952 old: size=213800960 end=220198911 new: size=255746015 end=262143966检查块设备的布局。可见分区/dev/sda3的空间已增加至 121.9G
shell
lsblklog
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 125G 0 disk
├─sda1 8:1 0 1G 0 part /boot/efi
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 121.9G 0 part
└─ubuntu--vg-ubuntu--lv 252:0 0 121.9G 0 lvm /
sr0 11:0 1 1024M 0 rom物理卷
查看卷组信息
shell
vgdisplay # 展示卷组信息log
--- Volume group ---
VG Name ubuntu-vg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 2
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size <60.95 GiB
PE Size 4.00 MiB
Total PE 15602
Alloc PE / Size 15602 / <60.95 GiB
Free PE / Size 0 / 0
VG UUID mzekn5-1LqF-mE3Y-BmHD-E5XM-BB5Q-2skPQ9扩大物理卷
shell
pvresize /dev/sda3 # 通知 物理卷管理器(LVM) 更新物理卷的信息,使其识别并利用新的、更大的磁盘空间。log
Physical volume "/dev/sda3" changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resizedshell
vgdisplay # 检查自由空间是否增加log
--- Volume group ---
VG Name ubuntu-vg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size <86.95 GiB
PE Size 4.00 MiB
Total PE 22258
Alloc PE / Size 15602 / <60.95 GiB
Free PE / Size 6656 / 26.00 GiB # 自由空间
VG UUID mzekn5-1LqF-mE3Y-BmHD-E5XM-BB5Q-2skPQ9逻辑卷
扩容逻辑卷和文件系统。使用参数 -r 自动调整文件系统大小
shell
lvextend -l +100%FREE -r /dev/mapper/ubuntu--vg-ubuntu--lvlog
Size of logical volume ubuntu-vg/ubuntu-lv changed from <101.95 GiB (26098 extents) to <121.95 GiB (31218 extents).
Logical volume ubuntu-vg/ubuntu-lv successfully resized.检验效果
看看根目录空间是否已经增加
shell
lsblk ; df -Thlog
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 125G 0 disk
├─sda1 8:1 0 1G 0 part /boot/efi
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 121.9G 0 part
└─ubuntu--vg-ubuntu--lv 252:0 0 121.9G 0 lvm /
sr0 11:0 1 1024M 0 rom
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv ext4 120G 89G 26G 78% /
/dev/sda2 ext4 2.0G 168M 1.7G 10% /boot
/dev/sda1 vfat 1.1G 6.2M 1.1G 1% /boot/efi扩容结束,完结撒花🎉。