On Sun, Dec 08, 2002 at 11:18:28AM -0800, Dexter Graphic wrote: > Next I configured Lilo to include the new boot option. Here is my > lilo.conf file:
The problem is really simple, looking at your config [ .. ] > image=/boot/vmlinuz > label=Mandrake > root=/dev/hda1 > initrd=/boot/initrd.img > append="devfs=mount hdc=ide-scsi hdd=ide-scsi" > read-only so /boot/vmlinuz is the Mandrake kernel, got it. [ .. ] > image=/boot/vmlinuz # Actually /vmlinux but I made a symlink. > label=Debian > root=/dev/hda7 > append="hdc=ide-scsi hdd=ide-scsi" > read-only > > The above lilo configuration works fine for booting into Mandrake, but > when I try to boot into Debian it gets really ugly. From what I can tell > by reading between the error messages, it's booting the Mandrake kernel > not the Debian version. The last message before it gives up is about the > swap file. But then it allows me login at a console, and when I poke > around I can see that /dev/hda7 is indeed mounted at / and all the > Debian files are accessible. Try say ... image=/mnt/debroot/vmlinuz # Actually /vmlinux but I made a symlink. label=Debian root=/dev/hda7 append="hdc=ide-scsi hdd=ide-scsi" read-only This requires that your Mandrake system have /dev/hda7 mounted to /mnt/debroot. Keep in mind that a fundamental difference between lilo and grub is that lilo resolves locations of kernel images when you run the lilo command. OTOH, grub resolves everything at run time. > So my questions are: > 1.) Is what I am trying to do possible? Yes, as above. > 2.) What do I have to do get lilo to load the right kernel image? You need to mount all of the roots of the other dists somewhere and use those kernels. Or you can put all of your kernels in a seperate small /boot partition - you will want to not use /boot/vmlinuz in that case since you'd have several kernels. I think everybody but Debian likely puts the name of their distribution in the kernel's EXTRAVERSION in the main Makefile. If not, do this yourself and start using fully qualified versions in your lilo config. The other option is grub, which can find a kernel on any ext2/3 FS you have. (For some reason current grub in Gentoo can't handle filesystems made by current reiserfsprogs in Gentoo - since Gentoo is pretty current I will assume this is a grub problem..) In the case of grub, I still suggest a single /boot (or some other small partition which contains a symlink boot -> .) to be shared among all dists since it would give you easy access to editing grub's menu.lst file from any and all distributions. In fact, that's actually a really good idea if you use ext2/3 and also happen to use windows - keep /boot on the root of each distribution (so you need not fiddle with version names) and have a /mnt/grub which is a small (non-primary) VFAT partition. You see, this would allow you to edit the grub menu.lst file from every OS you run, trivially. In that case, I suggest keeping the menu in DOS format and using an editor in Linux which happens to be able to recognise when it should edit the file with CRLF line endings. I know vim can do this, and emacs would suck indeed if it were as huge a program as it is and it could not also. ;) If you do not run windows, then it doesn't matter where you put it as long as you can mount it somewhere on your system when you need it. At last check, grub had some issues with SCSI drives. Keep this in mind and make yourself a boot disk if you have such hardware. If these issues remain unresolved, there is the less efficient lilo solution above. > 3.) What is the map file reference for and do I need to worry about it? You don't need to worry. It's not used until after / is mounted. -- Joseph Carter <[EMAIL PROTECTED]> No conceit in my family * wichert_ imagines master without a MTA <james> wichert: ehm? that might hinder peformance of the BTS :p
msg12010/pgp00000.pgp
Description: PGP signature