文章目录
- 方法一:
- **1. 检查磁盘和分区情况**
- **2. 扩展 `vda3` 分区**
- **3. 扩展 LVM 物理卷**
- **4. 扩展 LVM 逻辑卷**
- **5. 扩展文件系统**
- 方法二:
- 1. 查看当前磁盘分区情况
- 2. 创建新分区
- 3. 重新加载分区表
- 4. 扩展物理卷(PV)
- 5. 扩展逻辑卷(LV)
- 6. 调整文件系统大小
- 7. 验证
root@localhost:~# hostnamectlStatic hostname: localhostIcon name: computer-vmChassis: vmMachine ID: c38978581e3c4361bac50d57e000c539Boot ID: e376e2cd1e554c63acf58b193183a767Virtualization: kvmOperating System: Ubuntu 20.04.6 LTSKernel: Linux 5.4.0-204-genericArchitecture: x86-64
方法一:
1. 检查磁盘和分区情况
从 lsblk
输出中可以看到:
- 磁盘
vda
总大小为 100G。 vda3
分区大小为 8.3G,已经全部用于 LVM 物理卷。- 磁盘上还有未分配的空间(100G - 8.3G = 91.7G)。
root@localhost:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 63.3M 1 loop /snap/core20/1828
loop1 7:1 0 91.9M 1 loop /snap/lxd/24061
loop2 7:2 0 91.9M 1 loop /snap/lxd/29619
loop3 7:3 0 49.9M 1 loop /snap/snapd/18357
loop4 7:4 0 63.7M 1 loop /snap/core20/2434
loop5 7:5 0 44.4M 1 loop /snap/snapd/23545
vda 252:0 0 100G 0 disk
├─vda1 252:1 0 1M 0 part
├─vda2 252:2 0 1.8G 0 part /boot
└─vda3 252:3 0 8.3G 0 part └─ubuntu--vg-ubuntu--lv 253:0 0 8.3G 0 lvm /
root@localhost:~# df -Th
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs tmpfs 795M 1020K 794M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv ext4 8.1G 3.6G 4.1G 47% /
tmpfs tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/vda2 ext4 1.7G 109M 1.5G 7% /boot
/dev/loop1 squashfs 92M 92M 0 100% /snap/lxd/24061
/dev/loop2 squashfs 92M 92M 0 100% /snap/lxd/29619
/dev/loop3 squashfs 50M 50M 0 100% /snap/snapd/18357
/dev/loop0 squashfs 64M 64M 0 100% /snap/core20/1828
/dev/loop4 squashfs 64M 64M 0 100% /snap/core20/2434
/dev/loop5 squashfs 45M 45M 0 100% /snap/snapd/23545
tmpfs tmpfs 795M 0 795M 0% /run/user/0
2. 扩展 vda3
分区
首先需要扩展 vda3
分区以利用未分配的空间。
使用 growpart
工具扩展分区:
root@localhost:~# growpart /dev/vda 3
这将扩展 vda3
分区以占用所有可用空间。
验证分区是否扩展成功:
root@localhost:~# lsblk
确认 vda3
分区的大小是否已增加。
3. 扩展 LVM 物理卷
扩展物理卷(PV)以使用新的分区空间:
root@localhost:~# pvresize /dev/vda3
检查物理卷的可用空间:
root@localhost:~# pvs
确认 Free
列显示有可用空间。
4. 扩展 LVM 逻辑卷
扩展逻辑卷(LV):将使用所有可用空间扩展逻辑卷。
root@localhost:~# lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
检查逻辑卷的大小:
root@localhost:~# lvs
确认逻辑卷的大小已增加。
5. 扩展文件系统
最后,扩展文件系统以使用新的逻辑卷空间。
/
分区使用的是 ext4
文件系统(根据 df -Th
输出),运行以下命令:
root@localhost:~# resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
验证文件系统是否已扩展:
root@localhost:~# df -Th
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs tmpfs 795M 1.0M 794M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv ext4 97G 3.6G 90G 4% /
tmpfs tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/vda2 ext4 1.7G 109M 1.5G 7% /boot
/dev/loop1 squashfs 92M 92M 0 100% /snap/lxd/24061
/dev/loop2 squashfs 92M 92M 0 100% /snap/lxd/29619
/dev/loop3 squashfs 50M 50M 0 100% /snap/snapd/18357
/dev/loop0 squashfs 64M 64M 0 100% /snap/core20/1828
/dev/loop4 squashfs 64M 64M 0 100% /snap/core20/2434
/dev/loop5 squashfs 45M 45M 0 100% /snap/snapd/23545
tmpfs tmpfs 795M 0 795M 0% /run/user/0
root@localhost:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 63.3M 1 loop /snap/core20/1828
loop1 7:1 0 91.9M 1 loop /snap/lxd/24061
loop2 7:2 0 91.9M 1 loop /snap/lxd/29619
loop3 7:3 0 49.9M 1 loop /snap/snapd/18357
loop4 7:4 0 63.7M 1 loop /snap/core20/2434
loop5 7:5 0 44.4M 1 loop /snap/snapd/23545
vda 252:0 0 100G 0 disk
├─vda1 252:1 0 1M 0 part
├─vda2 252:2 0 1.8G 0 part /boot
└─vda3 252:3 0 98.3G 0 part └─ubuntu--vg-ubuntu--lv 253:0 0 98.3G 0 lvm /
方法二:
1. 查看当前磁盘分区情况
使用 lsblk
查看了磁盘分区情况。可以看到 vda
磁盘有 100G,但只有 vda3
分区(8.3G)被用于 LVM。
root@localhost:~# df -Th
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs tmpfs 795M 988K 794M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv ext4 8.1G 4.2G 3.5G 55% /
tmpfs tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/vda2 ext4 1.7G 109M 1.5G 7% /boot
/dev/loop0 squashfs 64M 64M 0 100% /snap/core20/2434
/dev/loop2 squashfs 92M 92M 0 100% /snap/lxd/29619
/dev/loop1 squashfs 64M 64M 0 100% /snap/core20/1828
/dev/loop3 squashfs 92M 92M 0 100% /snap/lxd/24061
/dev/loop4 squashfs 45M 45M 0 100% /snap/snapd/23545
/dev/loop5 squashfs 50M 50M 0 100% /snap/snapd/18357
tmpfs tmpfs 795M 0 795M 0% /run/user/0
root@localhost:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 63.7M 1 loop /snap/core20/2434
loop1 7:1 0 63.3M 1 loop /snap/core20/1828
loop2 7:2 0 91.9M 1 loop /snap/lxd/29619
loop3 7:3 0 91.9M 1 loop /snap/lxd/24061
loop4 7:4 0 44.4M 1 loop /snap/snapd/23545
loop5 7:5 0 49.9M 1 loop /snap/snapd/18357
vda 252:0 0 100G 0 disk
├─vda1 252:1 0 1M 0 part
├─vda2 252:2 0 1.8G 0 part /boot
└─vda3 252:3 0 8.3G 0 part └─ubuntu--vg-ubuntu--lv 253:0 0 8.3G 0 lvm /
2. 创建新分区
使用 fdisk
或 parted
创建一个新分区来使用剩余的磁盘空间。
root@localhost:~# fdisk /dev/vda
root@localhost:~# fdisk /dev/vda
Welcome to fdisk (util-linux 2.34).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.GPT PMBR size mismatch (20971519 != 209715199) will be corrected by write.
The backup GPT table is not on the end of the device. This problem will be corrected by write.Command (m for help): n # 这里输入n创建分区
Partition number (4-128, default 4): # 直接回车使用默认分区号
First sector (20969472-209715166, default 20969472): # 直接回车使用默认起始扇区
Last sector, +/-sectors or +/-size{K,M,G,T,P} (20969472-209715166, default 209715166): # 直接回车使用默认的结束扇区(这将使用所有剩余的磁盘空间)Created a new partition 4 of type 'Linux filesystem' and of size 90 GiB.Command (m for help): w # 输入w保存并退出
The partition table has been altered.
Syncing disks.
在 fdisk
中:
- 输入
n
创建一个新分区。 - 选择默认的分区号。
- 使用默认的起始扇区。
- 使用默认的结束扇区(这将使用所有剩余的磁盘空间)。
- 输入
w
保存并退出。
3. 重新加载分区表
使用 partprobe
重新加载分区表:
root@localhost:~# partprobe /dev/vda
4. 扩展物理卷(PV)
将新分区添加到现有的物理卷中:
root@localhost:~# pvcreate /dev/vda4
root@localhost:~# vgextend ubuntu-vg /dev/vda4
5. 扩展逻辑卷(LV)
扩展逻辑卷以使用新的空间:
root@localhost:~# lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
6. 调整文件系统大小
最后,调整文件系统的大小以使用新的逻辑卷空间:
root@localhost:~# resize2fs /dev/ubuntu-vg/ubuntu-lv
7. 验证
使用 df -Th
和 lsblk
验证 /
分区是否已成功扩展。
root@localhost:~# df -Th
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs tmpfs 795M 1.2M 794M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv ext4 97G 4.8G 88G 6% /
tmpfs tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/vda2 ext4 1.7G 109M 1.5G 7% /boot
/dev/loop2 squashfs 92M 92M 0 100% /snap/lxd/29619
/dev/loop0 squashfs 92M 92M 0 100% /snap/lxd/24061
/dev/loop1 squashfs 64M 64M 0 100% /snap/core20/1828
/dev/loop3 squashfs 64M 64M 0 100% /snap/core20/2434
/dev/loop4 squashfs 45M 45M 0 100% /snap/snapd/23545
/dev/loop5 squashfs 50M 50M 0 100% /snap/snapd/18357
tmpfs tmpfs 795M 0 795M 0% /run/user/0
root@localhost:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 91.9M 1 loop /snap/lxd/24061
loop1 7:1 0 63.3M 1 loop /snap/core20/1828
loop2 7:2 0 91.9M 1 loop /snap/lxd/29619
loop3 7:3 0 63.7M 1 loop /snap/core20/2434
loop4 7:4 0 44.4M 1 loop /snap/snapd/23545
loop5 7:5 0 49.9M 1 loop /snap/snapd/18357
vda 252:0 0 100G 0 disk
├─vda1 252:1 0 1M 0 part
├─vda2 252:2 0 1.8G 0 part /boot
├─vda3 252:3 0 8.3G 0 part
│ └─ubuntu--vg-ubuntu--lv 253:0 0 98.2G 0 lvm /
└─vda4 252:4 0 90G 0 part └─ubuntu--vg-ubuntu--lv 253:0 0 98.2G 0 lvm /