没有lvm的情况:
标准挂载流程
假设 /dev/vda2 是根分区,/dev/vda1 是 /boot 分区。

第一步:挂载根目录
将原系统的根目录挂载到救援系统的 /mnt 目录下:

mount /dev/vda2 /mnt

第二步:挂载虚拟文件系统(关键步骤)
为了让救援环境能够运行原系统的命令(如 passwd 或 grub-install),必须挂载内核相关的虚拟目录:

for i in /dev /dev/pts /proc /sys /run; do mount --bind $i /mnt$i; done

第三步:挂载其他分区(可选)
如果原系统有独立的 /boot 或 /home 分区,也需要一并挂载:

mount /dev/vda1 /mnt/boot

如果 /dev/vda2 是 LVM (Logical Volume Management) 卷,那么标准的挂载方式会有所不同,因为你不能直接挂载分区,而是需要先激活卷组(VG)并挂载逻辑卷(LV)。

以下是处理 LVM 分区的标准救援步骤:

1. 扫描并激活 LVM 卷

在 Rescue 模式下,系统默认不会自动挂载 LVM。你需要手动让内核识别它们:

# 1. 扫描物理卷
pvscan

# 2. 扫描卷组 (VG)
vgscan

# 3. 激活所有检测到的卷组
vgchange -ay

2. 确认逻辑卷 (LV) 路径

激活后,使用 lvdisplay 或 lsblk 确认根目录所在的逻辑卷名称。

lsblk
# 你通常会看到类似 /dev/mapper/ubuntu--vg-root 或 /dev/vg0/root 的路径

3. 标准挂载流程 (针对 LVM)

假设你的根分区 LV 路径是 /dev/mapper/vg0-root,而 /dev/vda1 是非 LVM 的 /boot 分区:

第一步:挂载根目录

mount /dev/mapper/vg0-root /mnt

第二步:绑定虚拟文件系统

这是确保 chroot 后网络、磁盘信息正常的关键:

for i in /dev /dev/pts /proc /sys /run; do mount --bind $i /mnt$i; done

第三步:挂载 Boot 分区 (如果有)

如果 /boot 是独立分区(通常 vda1 是 boot),必须挂载,否则无法修复内核或 GRUB:

mount /dev/vda1 /mnt/boot

4. 进入系统环境 (Chroot)

chroot /mnt /bin/bash

现在你已经身处原系统中了。你可以执行 passwd 改密码,或者修复 fstab 错误。


5. 卸载与清理 (退出时必做)

操作完成后,请务必按顺序退出并停用 LVM,否则重启后可能会由于文件系统未干净卸载导致磁盘自检:

  1. 退出: exit
  2. 递归卸载: umount -R /mnt
  3. 停用 LVM (安全做法): vgchange -an