我有一个在单个硬盘驱动器上安装了多个 Red Hat 的系统。我想在运行时自动选择默认安装启动。Red Hat 执行此操作的方式(与 Grub 文档略有不同)是进入 grub shell 并说
savedefault --stage2=<Stage 2 File> --default=<default>
保存到指定的。
我使用链式加载,所以磁盘上有几个 grub.conf 文件。我只想更改与 /boot 中与 MBR 相关联的 stage2 文件,而不是与安装本身相关联的单个文件。在 grub 中,如果我说
find /boot/grub/stage2
或者
find /grub/stage2
我返回了所涉及的分区和文件的完整路径名的有效列表。在前一种情况下,类似
(hd0,1)
(hd0,2)
而在后者
(hd0,0)
我想改变的是后一种情况。但是,如果我接着说
根 (hd0,0)
savedefault --stage2=/grub/stage2 --default=1
或变体,如
savedefault --stage2=(hd0,0)/grub/stage2
savedefault --stage2=(hd0,0)/boot/grub/stage2
或类似的,我得到
Error 15: File not found
我隐约怀疑我没有正确安装分区,并且它可能是我做事的只读方式,但我所做的似乎没有改变正确的 stage2 文件。请注意,如果我只是说
savedefault --stage2=/boot/grub/stage2 --default=1
或完全关闭“--stage2=...”选项,该命令会成功,但会更改当前运行的操作系统从其引导的分区上的 stage2 文件 - 而不是与实际控制的 MBR grub.conf 关联的文件初始启动。
我在这里想念什么?