调整分区大小后如何将新空间添加到卷组?

K_d*_*dev 6 partitioning dual-boot lvm fstab mount

这是运行parted之前的输出lsblk

\n\n
sda                     8:0    0    90G  0 disk \n\xe2\x94\x94\xe2\x94\x80sda1                  8:1    0    40G  0 part \n  \xe2\x94\x9c\xe2\x94\x80ubuntu--vg-root   253:0    0    39G  0 lvm  /\n  \xe2\x94\x94\xe2\x94\x80ubuntu--vg-swap_1 253:1    0   976M  0 lvm  [SWAP]\n
Run Code Online (Sandbox Code Playgroud)\n\n

向虚拟机磁盘添加更多空间后,我运行以下命令来反映操作系统中的新空间:

\n\n
sudo parted /dev/sda\nresizepart 1 \nsudo resize2fs /dev/sda1\nquit\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后 o 收到此消息:

\n\n
Information: You may need to update /etc/fstab.\n
Run Code Online (Sandbox Code Playgroud)\n\n

现在的输出lsblk是:

\n\n
sda                     8:0    0    90G  0 disk \n\xe2\x94\x94\xe2\x94\x80sda1                  8:1    0    90G  0 part \n  \xe2\x94\x9c\xe2\x94\x80ubuntu--vg-root   253:0    0    39G  0 lvm  /\n  \xe2\x94\x94\xe2\x94\x80ubuntu--vg-swap_1 253:1    0   976M  0 lvm  [SWAP]\n
Run Code Online (Sandbox Code Playgroud)\n\n

但系统仍然显示 42GB,而不是新的 90GB 磁盘大小,我想我需要做一些事情来添加 ubuntu--vg-root 中的存储...

\n\n

是因为我需要更新/etc/fstab吗?如果是这样,怎么办?如果不是那么我应该运行哪些命令?

\n

Mel*_*ius 5

您的系统使用逻辑卷管理 (LVM)。在此设置中,分区不直接托管文件系统,而是托管 LVM物理卷。文件系统由包含在一个或多个物理卷上的LVM逻辑卷托管。

\n\n

我在虚拟机中重现了您的情况。仅使用resizepartusingparted不会扩展物理体积:

\n\n
$ lsblk\nNAME                  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT\nsda                     8:0    0   90G  0 disk \n\xe2\x94\x94\xe2\x94\x80sda1                  8:1    0   90G  0 part \n  \xe2\x94\x9c\xe2\x94\x80ubuntu--vg-root   252:0    0   39G  0 lvm  /\n  \xe2\x94\x94\xe2\x94\x80ubuntu--vg-swap_1 252:1    0  976M  0 lvm  [SWAP]\n\n$ sudo pvs\n  PV         VG        Fmt  Attr PSize  PFree \n  /dev/sda1  ubuntu-vg lvm2 a--  40,00g 44,00m\n
Run Code Online (Sandbox Code Playgroud)\n\n

所以你需要扩展物理卷

\n\n
sudo pvresize /dev/sda1\n
Run Code Online (Sandbox Code Playgroud)\n\n

可以使用以下方法检查结果pvs

\n\n
$ sudo pvs\n  PV         VG        Fmt  Attr PSize  PFree \n  /dev/sda1  ubuntu-vg lvm2 a--  90,00g 50,04g\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后调整逻辑卷的大小。用于-r自动调整包含的文件系统的大小。在前缀之后/dev/mapper/,指定逻辑卷名称,如下lsblk所示sda1

\n\n
sudo lvresize -r -l+100%FREE /dev/mapper/ubuntu--vg-root\n
Run Code Online (Sandbox Code Playgroud)\n\n

即使从调整大小的驱动器启动时,这两个操作也可以完成,您不需要\xe2\x80\x99 启动 Live CD。

\n\n

结果:

\n\n
$ lsblk\nNAME                  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT\nsda                     8:0    0   90G  0 disk \n\xe2\x94\x94\xe2\x94\x80sda1                  8:1    0   90G  0 part \n  \xe2\x94\x9c\xe2\x94\x80ubuntu--vg-root   252:0    0   89G  0 lvm  /\n  \xe2\x94\x94\xe2\x94\x80ubuntu--vg-swap_1 252:1    0  976M  0 lvm  [SWAP]\n
Run Code Online (Sandbox Code Playgroud)\n