使用 grub 定制程序时出现“/usr/sbin/grub-probe:错误:无法获取“。”的规范路径

使用 grub 定制程序时出现“/usr/sbin/grub-probe:错误:无法获取“。”的规范路径

我已更新至 Ubuntu 14.04.1,现在无法进入 Grub Customizer。
我收到以下错误:

chroot '/media/grub-customizer_recovery_root_mountpoint' grub-mkconfig couldn't be executed successfully. error message:
 Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.13.0-34-generic
Found initrd image: /boot/initrd.img-3.13.0-34-generic
Found linux image: /boot/vmlinuz-3.2.0-67-generic
Found initrd image: /boot/initrd.img-3.2.0-67-generic
Found linux image: /boot/vmlinuz-3.0.0-32-generic
Found initrd image: /boot/initrd.img-3.0.0-32-generic
Found linux image: /boot/vmlinuz-2.6.38-10-generic
Found initrd image: /boot/initrd.img-2.6.38-10-generic
Found linux image: /boot/vmlinuz-2.6.38-7-generic
Found initrd image: /boot/initrd.img-2.6.38-7-generic
cat: /video.lst: No such file or directory
/usr/sbin/grub-probe: error: failed to get canonical path of `'.
No path or device is specified.
Usage: grub-probe [OPTION...] [OPTION]... [PATH|DEVICE]
Try 'grub-probe --help' or 'grub-probe --usage' for more information.

有什么想法或帮助吗?

答案1

我不熟悉 grub customizr,但我认为它会调用底层脚本,即 grub-mkconfig,但这可能会失败。

从这里运行调试命令Debian 错误 736928

sudo sh -x /usr/sbin/grub-mkconfig >/dev/null 2>grub-mkconfig.err

并查看 grub-mkconfig.err,它向我展示了问题所在,一个自定义的 00_header 文件不再有效。

你可能还面临一个问题,即 GRUB 安装到 /boot/grub/i386-pc,但 GRUB_PREFIX 变量没有在任何地方设置,就像提到的那样这里

修复这个问题的方法是备份 /usr/sbin/grub-mkconfig,并在顶部添加以下几行,其中设置了其他变量

GRUB_PREFIX="/boot/grub/i386-pc"
export GRUB_PREFIX

您也可以将变量设置在其他地方,这取决于您。

相关内容