Grub: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 36: | Line 36: | ||
Defaults env_keep = "DISPLAY ..." # add DISPLAY env var to the list of kept var |
Defaults env_keep = "DISPLAY ..." # add DISPLAY env var to the list of kept var |
||
ALL ALL = (ALL) NOPASSWD: /usr/sbin/grubonce |
ALL ALL = (ALL) NOPASSWD: /usr/sbin/grubonce |
||
== Restore / Troubleshoot == |
|||
To repair a broken / lost GRUB, do from any grub prompt (live CD...) [http://forums.fedoraforum.org/showthread.php?p=1255524]: |
|||
grub> '''find /boot/grub/stage1''' |
|||
find /boot/grub/stage1 |
|||
(hd0,4) |
|||
grub> '''root (hd0,4)''' |
|||
root (hd0,4) |
|||
Filesystem type is ext2fs, partition type 0x83 |
|||
grub> '''setup (hd0)''' |
|||
setup (hd0) |
|||
Checking if "/boot/grub/stage1" exists... yes |
|||
Checking if "/boot/grub/stage2" exists... yes |
|||
Checking if "/boot/grub/e2fs_stage1_5" exists... yes |
|||
Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 23 sectors are embedded. |
|||
succeeded |
|||
Running "install /boot/grub/stage1 (hd0) (hd0)1+23 p (hd0,4)/boot/grub/stage2 /boot/grub/grub.conf"... succeeded |
|||
* try '''find /grub/stage1''' if the first find command doesn't work |
|||
* In my example I set root to (hd0,4) make sure you set it to whatever the find command returns |
|||
* Always run 'setup (hd0)' to install grub on the MBR of the first drive. For second drive use (hd1) etc |
Revision as of 00:59, 9 September 2009
Documentation
- Official manual here.
Boot from CDROM
When booting on HDD, it is possible to tell Grub to boot from CDROM instead.
- Press esc to quit Grub GUI menu.
- Press c to go to command-line mode.
- Enter the following commands (adapt hd2 according to your configuration):
grub>rootnoverify (hd2) grub>chainloader +1 grub>boot
Note that this might be actually a hack that only works on my machine. More information on normal way to tell Grub to boot on CDROM:
- http://www.mail-archive.com/bug-grub@gnu.org/msg10280.html
- http://gentoo-wiki.com/TIP_Chainloading_a_bootable_CD-ROM_from_GRUB
Grubonce
grubonce is an handy tool to force the system to immediately boot a given grub entry at the next reboot.
(as root) $ grubonce 0: openSUSE 11.0 - 2.6.25.20-0.1 1: Failsafe -- openSUSE 11.0 - 2.6.25.20-0.1 2: windows 3: Floppy $ grubonce 2
By default, grubonce can only be run by root. We can use sudo to allow any user to use grubonce.
% su $ visudo ... edit the /etc/sudoers file $ exit % sudo grubonce 2
Make the following change to the sudoers file:
Defaults env_keep = "DISPLAY ..." # add DISPLAY env var to the list of kept var ALL ALL = (ALL) NOPASSWD: /usr/sbin/grubonce
Restore / Troubleshoot
To repair a broken / lost GRUB, do from any grub prompt (live CD...) [1]:
grub> find /boot/grub/stage1 find /boot/grub/stage1 (hd0,4) grub> root (hd0,4) root (hd0,4) Filesystem type is ext2fs, partition type 0x83 grub> setup (hd0) setup (hd0) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/e2fs_stage1_5" exists... yes Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 23 sectors are embedded. succeeded Running "install /boot/grub/stage1 (hd0) (hd0)1+23 p (hd0,4)/boot/grub/stage2 /boot/grub/grub.conf"... succeeded
- try find /grub/stage1 if the first find command doesn't work
- In my example I set root to (hd0,4) make sure you set it to whatever the find command returns
- Always run 'setup (hd0)' to install grub on the MBR of the first drive. For second drive use (hd1) etc