由于启动分区丢失,系统无法启动?

由于启动分区丢失,系统无法启动?

我几天前删除了启动分区,但无法恢复。为了解决这个问题,我在闪存驱动器上安装了具有相同参数的相同映像,然后将该启动分区复制到我的硬盘驱动器上。我现在收到一条错误消息,表明 vmlinuz 映像通过 uuid 搜索根分区,并且可以找到我的硬盘驱动器。让事情变得更复杂的是,我的 hd 是 lvm+LUKS。我可以编辑 vmlinuz 和 initrd.img 吗?还有其他方法可以解决这个问题吗?或者我应该放弃它并重新安装?

我正在使用 32 位 Debian Jessie,并且能够访问硬盘驱动器上的所有剩余文件。

编辑——我没有旧的 vmlinuz 或 initrd.img,它们已被删除。

答案1

您的引导参数由引导加载程序在启动时将参数传递给 vmlinuz 来处理。假设您正在使用 grub,那么grub.cfg将会有一个参数表明root=应该包含您的 UUID。由于您使用 LUKS,更困难的部分是可能有一个 initramfs 映像在启动时启动并实际安装和解密您的分区,并且很可能将 UUID 存储在映像内。

最简单的恢复是找到一个支持 LUKS 的 live 发行版并从它启动(Debian 安装通常在 livecd 启动时有一个恢复模式)。然后挂载加密的根目录、解密、挂载 boot,然后 chroot 到已挂载的分区。进入后,您可以重新运行 ramdisk 实用程序,看看是否会更新您的所有信息。确保/boot在 chroot 之前也安装了。

update-initramfs -c -k <kernel>
update-grub

退出 chroot,卸载所有内容并重新启动。

答案2

1) 从 Live CD 启动

2)像ext4一样再次创建启动分区

3) 在启动分区上安装 Linux 映像

sudo mount /dev/sdax /mnt/myroot(其中 sdax 是您的根分区)

sudo mount /dev/sday /mnt/myroot/boot (我们需要挂载 boot,因为它位于另一个分区 /dev/sday)

sudo mount ‐‐bind /dev /mnt/myroot/dev
sudo mount ‐‐bind /proc /mnt/myroot/proc
sudo mount ‐‐bind /sys /mnt/myroot/sys

挂载所有其他分区/boot/var、等/usr/tmp确保您已将它们全部挂载。

复制resolv.conf

cp -L /etc/resolve.conf /mnt/debian-example/etc/resolve.conf

chroot

 sudo chroot /media/bin:/sbin:/usr/bin:/usr/sbin /mnt/tmp...

重新安装丢失的内核映像

从根目录移动 initrd.img:

mv initrd.img initrd.img.OLD

安装Linux镜像

apt-cache search 'linux-image'
apt-get install linux-image-x.x-generic

换成linux-image-x.x-generic你的。

恢复 grub

sudo grub-install /dev/sda

重启。

答案3

就我而言,根分区默认不挂载。必须通过手动安装的地方shell root 提示符启动时按 键,使用该命令的高级启动选项ctrl+alt+f3 | f4 | f5

  1. fsck挂载前对所有分区执行彻底检查。lsblk将显示所有分区名称。

  2. fsck /dev/{partition-name}

  3. 重新挂载所有具有读写访问权限的分区 mount -n -0 remount, rw /

  4. 类型exit恢复你的靴子没有重新启动
  5. 您现在应该可以登录了。

为一个永久解决方案,必须找到根分区 6.使用命令lsblk 或手动从目录/dev/your-root-partition中查找。你可以 cat /etc/fstab 来找到根分区 它会说

# / was on /dev/{your-partition-name} during installation
  1. 编辑fstab中的 来/etc/fstab 在启动时自动挂载根分区读写访问并添加

    /dev/{your-boot-directory} / ext3 rw 0 1

  2. 保存文件并更新你的 grub

    sudo update-grub

  3. reboot现在应该可以正常登录了。

学分:

https://bbs.archlinux.org/viewtopic.php?id=118114

由于启动分区丢失,系统无法启动?

https://geek-university.com/linux/etc-fstab-file/

https://linux.die.net/man/8/mount

相关内容