从另一个 LV 可用空间创建逻辑卷

从另一个 LV 可用空间创建逻辑卷

我已经使用LVM在我女朋友上网本的整个磁盘上安装了elementaryOS。现在我想安装 Manjaro XFCE 而不是 eOS,但我遇到了一个问题,我在安装 eOS 时使用的自动 LVM 分区利用了磁盘中的所有空间,而不是分隔和/home/我猜 Fedora 安装程序会这样做)类似的事情会自动发生)。我想要做的是使用该 LV 上的可用空间创建一个 25Gb 的 LV/分区,并将其余部分留给其/home本身,这样我就不必格式化整个磁盘并丢失所有重要数据。

这是我的输出pvdisplay

--- Physical volume ---
PV Name               /dev/sda5
VG Name               elementary-vg
PV Size               148.81 GiB / not usable 2.00 MiB
Allocatable           yes (but full)
PE Size               4.00 MiB
Total PE              38095
Free PE               0
Allocated PE          38095
PV UUID               E6FkuA-qK2X-1lP5-XCRX-t4x3-U2xn-EqjSBg

vgdisplay

--- Volume group ---
VG Name               elementary-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               0
Max PV                0
Cur PV                1
Act PV                1
VG Size               148.81 GiB
PE Size               4.00 MiB
Total PE              38095
Alloc PE / Size       38095 / 148.81 GiB
Free  PE / Size       0 / 0   
VG UUID               wfV8tN-uvVa-ARcS-3MWU-9gBr-vzMd-Tgp5Av

lvdisplay

--- Logical volume ---
LV Path                /dev/elementary-vg/root
LV Name                root
VG Name                elementary-vg
LV UUID                pAyHGC-e8J3-AdWM-uwPX-cP5j-0qZt-RsVPtl
LV Write Access        read/write
LV Creation host, time elementary, 2016-05-15 19:33:59 +0000
LV Status              available
# open                 0
LV Size                147.82 GiB
Current LE             37841
Segments               1
Allocation             inherit
Read ahead sectors     auto
- currently set to     256
Block device           254:0

--- Logical volume ---
LV Path                /dev/elementary-vg/swap_1
LV Name                swap_1
VG Name                elementary-vg
LV UUID                PDkMDH-z6GN-CDHW-5jv9-JnF3-XIoZ-NnFNnX
LV Write Access        read/write
LV Creation host, time elementary, 2016-05-15 19:34:00 +0000
LV Status              available
# open                 0
LV Size                1016.00 MiB
Current LE             254
Segments               1
Allocation             inherit
Read ahead sectors     auto
- currently set to     256
Block device           254:1

这可能吗?

答案1

比喻时间:架子(磁盘)上有盒子(逻辑卷)。你有一个小盒子和一个大盒子,它们一起占据了所有的架子空间。您想将第三个盒子放在架子上。大箱子几乎是空的。嗯,你不能只利用这个空间里面大箱子可以放另一个箱子旁边它。但是您可以将大盒子中的内容转移到较小的盒子中,并且将较小的盒子放在架子上,您将有空间放置第三个盒子。

LVM 让事情变得更容易:它的盒子可以调整大小。您可以缩小root逻辑卷以为另一个卷腾出空间。

但在此之前,您需要缩小卷内的文件系统。在缩小卷之前先缩小文件系统!否则文件系统将被不可挽回地损坏。

据我所知,elementary OS 默认使用 ext4 文件系统。您可以缩小 ext4 文件系统,但只能在未安装时进行。因此,您需要从某些恢复介质启动才能运行resize2fs

resize2fs /dev/elementary-vg/root 25G

现在您可以将逻辑卷缩小到相同的大小。请注意,在 LVM 中,G表示 10 9字节,您需要使用小写字母g来表示 2^ 30,如resize2fs.

lvreduce -L 25g elementary-vg/root

卷组上现在有可用空间来创建新的逻辑卷。我建议暂时在磁盘上保留一些可用空间,这样您就可以稍后决定使用它,/或者/home取决于哪个空间填充得更快。

lvcreate -L 80g -n home elementary-vg
mkfs.ext4 /dev/elementary-vg/home

现在将已有的数据移动/home到新卷中。最简单的方法仍然是从恢复系统中执行此操作。

mkdir /mnt/root /mnt/home
mount /dev/elementary-vg/home /mnt/home
mount /dev/elementary-vg/root /mnt/root
mv /mnt/root/home/* /mnt/home/
echo '/dev/elementary-vg/home /home ext4 errors=remount-ro 0 2' >>/mnt/root/etc/fstab

瞧,您可以重新启动进入系统。

相关内容