修复"EFI stub: ERROR: failed to read file"

For English version, please view: Repair “EFI stub: ERROR: failed to read file”

周五,照常开机. 结果在启动 Arch Linux 时 systemd-boot 提示:

下面是测试以及修复步骤:

测试

  1. 接上带有ZFS支持的Arch Linux安装镜像.
  2. 试图导入 zpool 并挂载至 /mnt: 成功. 排除是ZFS的错误.
  3. 挂载其他分区至 /mnt – 成功. 似乎没有问题.
  4. 检查 /mnt/boot – 无异常. 所有配置文件以及二进制文件均存在. 引导程序问题排除.
  5. chroot 进入 /mnt 并试图重建 initrd – 失败. 提示 boot 分区只读.

问题定位: 存在错误的 boot 分区使引导程序无法正确读取 内核 以及 initrd.

修复

  1. 卸除 /mnt/boot 并执行 fsck – 发现多个问题并修复成功.
  2. 重新挂载 boot 分区并重新生成 initrd – 成功. 写入正常.
  3. 重启 – 顺利进入Arch Linux. 问题解决.

修复总耗时 15 分钟. (手边正好有恢复盘,十分幸运)

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注