这涉及配置了 LVM2 的 Ubuntu 16.04,全部在 VMWare 下。物理卷是 VMWare 虚拟磁盘 (VMDK)。升级期间,机器经常耗尽 /root 上的空间。虽然它是一台家用机器,但它确实运行了家庭的所有核心服务。愚蠢的是,我没有备份。这台机器最初运行的是非必要服务,但后来变得不可或缺。它运行我们的家庭 DNS,这对家庭来说已经变得非常重要。我推迟实施备份方案太久了。
现在,我已经复制了 VMDK,因此我可以在工作副本上工作,同时将进一步的丢失风险降至最低。
我试图向包含 /root 的分区添加更多空间。我添加了一个新的物理卷并扩展了卷组以包含新磁盘。然后我尝试使用 gparted 和实时 cd 启动映像调整分区大小。不知何故,我损坏了卷组,因此没有显示逻辑卷。
原始机器无法启动,因此我创建了一个新的虚拟机(VM)并将“物理”驱动器移动到新机器,并尝试导入物理卷及其包含的卷组和逻辑卷:
root@linuxdesktop:~# pvscan
PV /dev/sdb3 VG base-vg lvm2 [49.26 GiB / 49.26 GiB free]
PV /dev/sdc1 VG base-vg lvm2 [20.00 GiB / 20.00 GiB free]
PV /dev/sdd1 lvm2 [1023.00 MiB]
Total: 3 [70.25 GiB] / in use: 2 [69.25 GiB] / in no VG: 1 [1023.00 MiB]
pvscan
显示物理磁盘 /dev/sdd1 不属于任何卷组。稍后,当一切正常时,我可以备份,然后删除未使用的物理磁盘。
接下来,我扫描了卷组。我相信我刚刚运行了vgscan
,但我在这里以 -v(详细)模式运行它以清除缓存:
vgscan -v
Wiping cache of LVM-capable devices
Wiping internal VG cache
Reading volume groups from cache.
Found volume group "base-vg" using metadata type lvm2
vgdisplay 显示已知卷组的详细信息:
root@linuxdesktop:~# vgdisplay
--- Volume group ---
VG Name base-vg
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 10
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 69.25 GiB
PE Size 4.00 MiB
Total PE 17729
Alloc PE / Size 0 / 0
Free PE / Size 17729 / 69.25 GiB
VG UUID 5XhEhi-1S2Z-yHn0-citP-aUGu-Qs8V-nAubjk
列出了两个物理卷,但没有显示逻辑卷。此卷组应包含卷。有没有办法搜索卷信息并重新创建或恢复它?我在添加 LVM 元素的过程中是否遗漏了一些简单的东西?