进入U盘系统后使用LVM安装Ubuntu 18.04

首先参考如何制作Ubuntu 18.04 LTS安装启动U盘制作一个Ubuntu18.04 LTS系统的U盘引导盘,然后从U盘启动进入Ubuntu 18.04系统,在这个只读系统里面使用LVM安装Ubuntu 18.04,和普通安装只有如下这一步有差异,需要勾选"Use LVM with the new Ubuntu installation",然后一路点击确认即可(安装完以后不要重启):
在这里插入图片描述

减少LVM根文件系统大小

前面安装LVM根文件系统会使用整个磁盘,假设该磁盘有3.5TB,而我们只想分配给根文件系统500GB,其他的分配给 /home文件夹。减小LVM根文件系统需要提前umount,所以我们只能在当前的U盘文件系统里面执行如下命令:

$ sudo pvdisplay /dev/sdb2
$ sudo lvreduce -r -L -3000G /dev/ubuntu-vg/root

如果命令运行成功,那么我们可以看到根文件系统已经变小了:

$ sudo lvdisplay /dev/ubuntu-vg/root
  --- Logical volume ---
  LV Path                /dev/ubuntu-vg/root
  LV Name                root
  VG Name                ubuntu-vg
  LV UUID                tNe8dc-TsSa-5IpB-Wnwz-Ggyu-xyzZ-TFgoXV
  LV Write Access        read/write
  LV Creation host, time ubuntu, 2020-12-01 15:06:17 +0800
  LV Status              available
  # open                 1
  LV Size                500.00 GiB
  Current LE             128000
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
 - currently set to     256
  Block device           253:0

创建LV /home文件夹并且扩展磁盘大小,替换原始的/home文件夹

现在我们可以拔掉U盘引导盘,然后重启进入刚才安装的Ubuntu 18.04,这时候可以使用sudo vgdisplay命令看到还有3T空间没有使用,我们想把新的/dev/sdc也加入到这个卷组(VG),组成新的/home文件夹,然后替换系统原始的/home,方法如下:

  • 使用pvcreate命令准备供LVM使用的PV sudo pvcreate /dev/sdc
  • 使用vgextend将新的PV添加到现有的卷组(VG)中sudo vgextend ubuntu--vg /dev/sdc
  • 键入sudo vgdisplay以显示有关VG的统计信息,包括其剩余可用大小为6.7T
  • 使用lvcreate创建新的逻辑卷(LV),如下所示sudo lvcreate -L 6700G -n home ubuntu–vg
  • 键入sudo lvdisplay以确认创建的LV大小合适。你可以使用lvresize调整大小或使用lvremove删除它,然后重试
  • 在LV上创建一个文件系统,如下所示sudo mkfs -t ext4 /dev/mapper/ubuntu--vg-home
  • 将新的LV挂载到具体文件夹,例如sudo mount /dev/mapper/ubuntu--vg-home /mnt
  • 复制/home到/mnt,我喜欢使用sudo cp -a
  • 编辑/etc/fstab以便启动后自动挂载新的LV /home
  • 将当前/home重命名为其他名称(例如/home-orig),并创建一个新的空/home目录作为挂载点
  • 重新启动并希望它能工作,如果一切正常,请删除旧的/home-orig目录
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐