存储空间无法自动挂载
扩容后如果使用了 LVM + RAID5 存储空间(如飞牛默认的存储空间配置),可能会出现每次开机存储空间不能自动挂载的问题
1. 确认是否遇到此问题
开机后执行以下命令检查:
`bash
sudo lsblk
`
正常输出示例:
`
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 931.5G 0 disk
**─sda1 8:1 0 931.5G 0 part
**─md0 9:0 0 3.6T 0 raid5
**─trim\_xxxxxxxx\_xxxx\_xxxx\_xxxx\_xxxxxxxxxxxx-0 253:0 0 3.6T 0 lvm /vol1
...
`
如果 `/vol1` 没有出现在 MOUNTPOINTS 列,说明存储空间未自动挂载。
2. 获取必要的卷组名称
`bash
sudo vgdisplay
`
输出示例:
`
--- Volume group ---
VG Name trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx
System ID
Format lvm2
VG Size <3.81 TiB
VG UUID fCbUaA-HCmJ-vNgr-IAFe-CksL-2ryV-S1kmLl
...
`
记下 `VG Name` 字段的值,例如 `trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx`。
`bash
sudo lvdisplay
`
输出示例:
`
--- Logical volume ---
LV Path /dev/trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx/0
LV Name 0
VG Name trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx
LV Size <3.64 TiB
`
记下 `LV Path` 或从 `VG Name` 推导设备路径:`/dev/mapper/<VG_NAME>-0`
`bash
sudo lsblk -o NAME,MOUNTPOINT
`
确认挂载点,例如 `/vol1`。
3. 修复存储空间
`bash
1. 扫描 LVM
sudo vgscan
`
输出类似:
`
Found volume group "trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx" using metadata type lvm2
WARNING: Couldn't find device with uuid xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx.
WARNING: VG trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx is missing PV xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx.
`
`bash
2. 移除丢失的 PV 记录(替换为你的 VG Name)
sudo vgreduce --removemissing trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx
`
输出:
`
WARNING: Couldn't find device with uuid xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx.
Wrote Y bytes to update metadata.
WARNING: Physical Volume /dev/md0p1 not found in volume group.
Removed missing PVs from volume group trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx.
`
`bash
3. 激活卷组
sudo vgchange -ay trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx
`
输出:
`
1 logical volume(s) in volume group "trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx" now active
`
`bash
4. 挂载存储空间(替换为你的挂载点)
sudo mount /dev/mapper/trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx-0 /vol1
`
4. 验证挂载成功
`bash
sudo lsblk -o NAME,MOUNTPOINT
df -h /vol1
`
正常输出:
`
/dev/mapper/trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx-0
3.6T 1.2G 3.4T 1% /vol1
`
5. 配置开机自动挂载
`bash
备份 VG 配置
sudo vgcfgbackup
`
`bash
添加 fstab 条目(替换为你的 VG Name 和挂载点)
echo "/dev/mapper/trim_xxxxxxxx_xxxx_xxxx_xxxx_xxxxxxxxxxxx-0 /vol1 ext4 defaults,nofail 0 2" | sudo tee -a /etc/fstab
`
参数说明:
- `nofail`:挂载失败不阻止开机(防止磁盘顺序变化导致无法开机)
6. 重启验证
`bash
sudo reboot
`
重启后检查:
`bash
sudo lsblk -o NAME,MOUNTPOINT
df -h /vol1
`
如果 `/vol1` 已挂载,问题解决。
原因说明
扩展系统分区后,md0 设备的分区标识符发生变化(从 `/dev/md0p1` 变为 `/dev/md0`),LVM 无法通过原来的 UUID 找到 PV。移除丢失的 PV 并重新激活后,LVM 会使用新的设备路径识别存储空间。