起因
由于组内服务器先前 CPU 坏了(难以见到的事情但是被我们遇上了),导致重装了两次系统:
第一次装在了 /dev/sdb 这个机械硬盘内(6.5T)且开了 LVM
第二次装在了 /dev/sda 这个 SSD 里(900G),但没有开 LVM
在第二次装的时候,没有把 /dev/sdb 这个机械硬盘加入到系统内,导致整个系统可用磁盘空间只有不到 900 G
运行 lsblk 如下图所示:

而现在这个 SSD 的空间完全不够用了,因此需要把原本没挂载的机械硬盘挂上,并启用 LVM 分卷方便日后扩盘。
步骤
格式化
Danger
格式化前保证磁盘内没有需要导出的数据
首先我们使用 fdisk 格式化磁盘:
sudo fdisk /dev/sdb在 fdisk 的 TUI 界面首先输入 d(有几个分区就输入几次)
然后输入 g 来创建分区表,输入 n 来创建分区(只需要一个分区),输入 t 来选择文件系统类型,填入 30(选择 Linux LVM,如果没有显示这个,输入 L 来找到 Linux LVM 对应的数字)
最后,输入 w 来格式化并写入
创建 LVM
LVM 需要经过:物理卷 (PV) → 卷组 (VG) → 逻辑卷 (LV) 三个步骤。
我们将使用整个磁盘 /dev/sdb 来创建物理卷,输入命令:
# 物理卷
# 输出为 Physical volume "/dev/sdb" successfully created.
sudo pvcreate /dev/sdb
# 卷组
# 输出为 Volume group "vg0" successfully created
sudo vgcreate v0 /dev/sdb
# 逻辑卷
# 输出为 Logical volume "lv0" created.
sudo lvcreate -l 100%FREE vg0 -n lv0至此,一个可用的 LVM 设备已经创建完成,其完整路径为:/dev/mapper/vg0-lv0 或 /dev/vg0/lv0。
格式化逻辑卷并挂载
我们使用最常见的 ext4 文件系统进行格式化,然后将此逻辑卷挂载到 /home 目录下
Attention
为了保证同步问题,在这里我们需要暂停所有使用
/home目录文件的进程,并使用root用户操作
# 格式化
sudo mkfs.ext4 /dev/mapper/vg0-lv0
# 挂载
sudo mkdir /mnt/ubuntu
sudo mount /dev/mapper/vg0-lv0 /mnt/ubuntu
# 同步 home 目录的内容(所需时间取决于目录大小)
sudo rsync -aAXv /home/ /mnt/ubuntu/
# 清理磁盘空间并重新挂载(可以先挂载测试)
sudo rm -rf /home
sudo mount /dev/vg0/lv0 /home这样,就可以成功将拓展后的磁盘加到 /home/ 目录下:

加入到开机自动挂载
首先获取 UUID:
sudo blkid /dev/mapper/vg0-lv0然后写入到 /etc/fstab 中:
sudo vim /etc/fstab在最后一行填上:
UUID=62e24271-55c6-4fc4-8c00-da5833f41d8d /home ext4 defaults 0 2