Linux逻辑卷管理(LVM)系统折腾者的利器(上)-分分钟再加一个Linux

在我的前2篇日记中,讲了配置“RAID0 加快磁盘速度” 和“把 "Linux 安装到 RAID0+LVM"上,今天这篇日记以两个有代表性的系统使用场景为例,以视频演示的方式介绍Linux逻辑卷管理(LVM)对 Linux 系统安装分区调整的方便性。一个场景是 Linux 根分区磁盘空间不够怎么一个命令扩大其容量,一个场景是怎样在分分钟内腾出一块分区恢复另一个备份的Linux发行版。

一、系统现状
现在运行的系统是 Deepin Linux 20.2.4,安装在一块128G的磁盘上,使用 3 个 LVM 逻辑卷 /dev/myvg/{swap,deepinroot,deepinhome} 分别容纳 swap(8G)、/(30G)、/home(90G) 分区。

二、调整目标
1、缩小 /home 为20G
2、扩大根分区 / 为50G
3、腾出一个20G大小的空间来恢复安装用 tar 备份的 Lubuntu
4、剩下的空间备用

三、步骤
因为在 LVM 中缩小分区时分区必须是卸载的,所以我们利用上篇日记中提到的 Deepin 安装光盘的 Live 环境来操作。
1、安装光盘运行中,在显示选择语言时,切换到 tty2 等控制台,执行startx即可。
2、进入 deepin live 模式可以设置一下分辨率之类的显示方面的东西。
3、查看并激活逻辑卷

sudo lvscan
sudo lvchange -a y /dev/myvg/{deepinroot,deepinhome} -v
sudo lvscan

4、建立临时挂载点,查看分区并挂载 tar 备份的 Lubuntu 所在分区

 sudo mkdir /mnt/{tmp1,tmp2} -v
 sudo fdisk -l
 sudo mount /dev/sdb1 /mnt/tmp1 -v

5、调整 Deepin 的 /home 、/ 分区

sudo lvresize -L 20G -r /dev/myvg/deepinhome -v
sudo lvresize -L 50G -r /dev/myvg/deepinroot -v

6、创建供Lubuntu使用的逻辑卷 lubuntu

sudo lvcreate -L 20G -n lubuntu myvg

7、格式化 lubuntu 并把 tar 备份的系统恢复到 lubuntu 逻辑卷上

sudo mkfs.ext4 -L LUBUNTU /dev/myvg/lubuntu
sudo mount /dev/myvg/lubuntu /mnt/tmp2 -v
sudo tar -xpzvf /mnt/tmp1/lubuntu2110.tar.gz -C /mnt/tmp2/
cd /mnt/tmp2
sudo mv media m -v
cd m/*/*/
sudo mv * /mnt/tmp2/ -v

8、修改 Lubuntu 中的 fstab 和 grub.cfg中的根分区挂载设备为 /dev/myvg/lubuntu

cd ../../../
sudo vim etc/fstab
sudo vim boot/grub/grub.cfg

9、卸载光盘,重启进入 Deepin 中更新 grub 菜单
10、重启进入 Lubuntu 中更新 grub 全部菜单项
11、重启进入 Deepin 再次更新 grub 菜单,这次会添加更新过的 Lubuntu 菜单
完毕。

四、小结
Linux 下的 LVM 可以方便的扩大、缩小、添加、减少逻辑分区,喜欢尝试各种 Linux 发行版的朋友可以试用一下。如果需要安装不支持 LVM 的操作系统(如 Windows)在同一块硬盘上。你可以在创建 LVM 之前,对硬盘多分几个物理分区,LVM 也可以方便的加入或删除物理分区,这样你就可以腾出物理分区安装其它不支持 LVM 的操作系统了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注