grub for Debian --------------- GRUB is a GPLed bootloader intended to unify bootloading across x86 operating systems. In addition to loading Linux and FreeBSD, it implements the Multiboot standard, which allows for flexible loading of multiple boot images (needed for modular kernels such as the GNU Hurd). One unique featue of GRUB is that it can understand filesystems at boot time, rather than just simple blocklists. Hence, you can load any kernel in the file system from the boot prompt without having to edit configuration files or rerun a special installation program. more documentation ------------------ the full grub documentation is available in the grub-doc package. quick setup ----------- after installing the package: 1) grub-install /dev/hda or if /boot is a separate partition grub-install --root-directory=/boot /dev/hda using in place of /dev/hda the device that you boot from 2) update-grub which will create a menu.lst for you if one does not exist or manually create one, and skip to step 4 3) edit /boot/grub/menu.lst or if /boot is a separate partition edit /boot/boot/menu.lst and change groot, and kopt to whatever settings you need. modify anything else in the menu.lst you want, re-run update-grub to update the lines for each kernel to those that you specified with groot and kopt 4) thats it, making sure you have a rescue disk or some other way to boot your machine attempt to reboot using grub! note: that you need to run grub-install each time a new grub package is installed, this script updates the grub images in /boot/grub or /boot/boot/grub and installs grub into the boot sector. for more detailed information see the info documentation or manpages update-grub ----------- This script is a debian specific addon used to generate a menu.lst for you either intially, or automatically everytime you install a new kernel. To set this up for automatic updates add to your /etc/kernel-img.conf the following lines: postinst_hook = /sbin/update-grub postrm_hook = /sbin/update-grub do_bootloader = no for further information see the manpage kernel-img.conf(5) or update-grub(8) jfs and xfs ----------- the patches that support these filesystems came from: http://tzukanov.narod.ru/grub-jfs_xfs/ from the url: This patch provides native IBM JFS and SGI XFS file systems support for the GNU GRUB. JFS part seems to be stable, XFS is beta. Patch divided into two files: grub-jfs+xfs-0.9-core and grub-jfs+xfs-0.9-build. You can use just the first (and run automake/autoconf) or both (and no automake). initrd ------ not claiming to know much about this but be warned if your initrd image is larger than 4MB it is bigger than the default ramdisk size and you will need to use a kernel command line option like the following: ramdisk_size=16384 netbsd/freebsd/*bsd ------------------- From http://www.gnu.org/software/grub/#bsd : "We really need help by BSD hackers. Currently, almost nobody works for BSD-based operating systems, such as FreeBSD, NetBSD, and OpenBSD. So we have critical problems in booting later versions of NetBSD and OpenBSD. FreeBSD is not a big problem, because GRUB can boot it via /boot/loader for now. If you're willing to give help to us, please contact us."