基本上,在我重新安装grub-legacy
(grub1)后,它应该有menu.lst
而/boot/boot/grub/menu.lst
不是/boot/grub/menu.lst
因此,当我重新启动系统时,它会停止在 grub 命令控制台,我需要手动运行configfile /grub/menu.lst
来加载配置文件。
我暂时符号链接/boot/boot/grub/menu.lst
到/boot/grub/menu.lst
,但我想知道为什么重新安装grub
会让它寻找menu.lst
而/boot/boot
不是/boot
我能想到的一件事是,我有/boot
和的单独分区/
,尽管我不确定这是否有区别。
我用来重新安装 grub 的命令是:
bash> grub
grub> root (hd1,0)
grub> setup (hd1)
在哪里:
hd1,0
我的/boot
hd1,1
我的/
在重新安装之前grub-legacy
,我已经grub2
安装了。
答案1
正如你所怀疑的,原因是分开“引导”分区。菜单列表(例如 grub-legacy 期望找到它的地方)位于/启动/grub文件夹上的“引导”分割:(hd1,0)/启动/grub. 当您安装“引导”划分为/启动文件夹根文件系统,这将转化为: /boot/boot/grub/菜单.lst。
而不是链接/boot/boot/grub/菜单.lst(正确的地方)/boot/grub/菜单.lst(错误的地方),移动你的整个/启动/grub文件夹/启动/启动/grub.这样/启动/grub你的文件夹“引导”分区将位于正确的位置。之后,您可以符号链接/启动/启动/grub到/启动/grub为了方便。
简而言之:grub-legacy 期望找到/启动/grub文件夹菜单列表在你的“引导”分区。然后又安装在/启动你的文件夹根文件系统分割。
我希望我已经足够清楚地解释了这一点。