错误:引导系统时找不到命令 linux

错误:引导系统时找不到命令 linux

最近我在我的电脑上安装了 CentOS 7,之前我安装了 debian 7 和 manjaro。当我安装manjaro时,我覆盖了debian的引导加载程序,manjaro的grub识别了这两个系统,并且一切正常,现在我安装了CentOS,我覆盖了/boot/efi,新的grub识别了这三个系统,但只有CentOS可以工作。当我尝试启动 debian 或 manjaro 时,会出现以下消息:

error: cant't find command linux
error: cant't find command initrd

答案1

问题是在您的 centos(或任何默认启动操作系统)中找不到使用的linuxand命令。initrd/boot/efi/EFI/centos/grub.cfg

您必须将linuxtolinuxefiinitrdto替换initrdefigrub配置文件文件。所以请遵循以下操作:

1 - 启动到centos终端

2 - 安装 grub2-efi

# yum install grub2-efi

4 -/boot/efi/EFI/centos/grub.cfg使用文本编辑器打开。

# vi /boot/efi/EFI/centos/grub.cfg

笔记:如果 grub.cfg 不存在,请尝试/boot/grub2/grub.cfg...如果也不存在,请尝试生成:# grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

5 - 查找所有linux命令并替换为 linuxefi。因此,找到所有 initrd 命令并替换为 initdefi

编辑样本之前

操作系统/boot/vmlinuz-0-rescue-d1268bb1d6df49758a1ec5715984725c root=/dev/sda1
初始化程序 /boot/initramfs-0-rescue-d1268bb1d6df49758a1ec5715984725c.img

编辑示例后:

linuxefi/boot/vmlinuz-0-rescue-d1268bb1d6df49758a1ec5715984725c root=/dev/sda1
初始化 /boot/initramfs-0-rescue-d1268bb1d6df49758a1ec5715984725c.img

6 - 重新启动

相关内容