Date: Fri, 27 Aug 2010 09:18:52 +0200 From: "Thomas Schmitt" <scdbackup@gmx.net> To: freebsd-hackers@FreeBSD.org Cc: dougb@FreeBSD.org Subject: Re: Is there a boot manager that can handle this? Message-ID: <95330659210611@192.168.2.69> In-Reply-To: <4C771653.1060004@FreeBSD.org> References: <4C771653.1060004@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi,
> Primary partitions:
> Windows XP, FreeBSD 9-current, FreeBSD 7-stable
> Extended partition:
> FAT32 data volume, Ubuntu Linux
> menuentry "FreeBSD 9-Current amd64" {
> set root=(hd0,3)
> chainloader +1
> }
Did you already try :
set root=(hd0,3,a)
freebsd /boot/loader
I have a machine with primary partitions
FreeBSD, FreeBSD, Solaris,
and on extended partition
Debian Lenny 5.01
Booting is done by the GRUB2 1.98 which came
with Debian.
In Debian's /boot/grub/grub.cfg i have
these entries (which all work for me):
------------------------------------------------
menuentry "Debian GNU/Linux, linux 2.6.26-2-amd64, eSATA 1.5Gbps" {
set root=(hd0,5)
search --fs-uuid --set 5badec4b-751e-47e1-a3c5-f8555d680cc4
linux /boot/vmlinuz-2.6.26-2-amd64 root=UUID=5badec4b-751e-47e1-a3c5-f8555d680cc4 ro
initrd /boot/initrd.img-ts
}
menuentry "FreeBSD-8.0 STABLE on Partition 1" {
set root=(hd0,1,a)
freebsd /boot/loader
}
menuentry "FreeBSD-8.0 RELEASE on Partition 2" {
set root=(hd0,2,a)
freebsd /boot/loader
}
menuentry "Solaris snv 134 on Partition 3" {
set root=(hd0,3)
chainloader +1
}
------------------------------------------------
Despite fat warnings
# DO NOT EDIT THIS FILE
it is well recommended by GRUB2 developers to
do experiments directly in /boot/grub/grub.cfg
and to fiddle with the generator scripts only
later.
This removes one potential level of error.
Just do _not_ run update-grub while the
changes are not yet in the scripts.
------------------------------------------------
A general method to boot systems before they
get in reach of GRUB2 is:
- Install the desired system
- Boot rescue system (in my case RIP Linux CD).
- Backup to removable media the "invisible"
blocks which sit before the start of the
first partition
dd if=/dev/sda of=... bs=512 count=31
(Address /dev/sda depends on the booted
rescue system. Number 31 was learned from
the partitioning tool.
Maybe it suffices to copy just the first
block of /dev/sda.)
To boot a particular system:
- Boot rescue system
- Copy backuped blocks to disk
dd if=... of=/dev/sda bs=512 count=31
- Reboot will bring up the originally installed
boot loader of the desired system.
I did this with FreeBSD and Solaris before i
found the necessary GRUB2 menu examples.
Have a nice day :)
Thomas
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?95330659210611>
