[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Debian Boot Floppy & /boot w/ initrd image on hard disk



Hi!

I've been trying to create a bootable CD-ROM from my /boot directory on
my hard drive. That directory contains a custom kernel (with LVM
support), an initrd image which is simlilar to the debian root floppy but
with LVM user tools and a full glibc 2.1.3 added, so that I can create
volume groups and logical volume before I start installing potato on my
system. Consequently, my initrd is too large to fit on a floppy, since
it's about 3.5 MB in size. 

As outlined in the CD-Writing HOWTO, you have to dd a boot floppy
to your hard disk. The name of the image created could then be passed to
mkisofs after the "-b" option. So I decided to grab a Debian boot floppy,
replace the kernel with my own  (2.2.17 with LVM 0.9 support). When
I started installing the boot loader, I ran into a major problem, however:

First of all, syslinux knows nothing about /boot, so when I specified
initrd=/boot/debian-inst.gz, it didn't work, since the documentation
coming along with syslinux told me that image file has to reside in the
same directory as the rest of the boot floppy. (In my case this was /mnt,
since I dd'ed the floppy image to my hard disk, then used losetup to
associate the file with a loop device, and then mounted that device.)

Second, when trying to use LILO with the following stanzas:

vga=normal
boot=/dev/fd0
read-only

image=/boot/vmlinuz-2.2.17
root = /dev/hda6
label = debian-2217

image = /boot/vmlinuz-2.2.17
  root = /dev/ram0
  initrd = /boot/debian-inst.gz
  label = deb-2217-inst

I was having the problem that LILO thought my initrd image was located on
my floppy, which wasn't the case, since my floppy contained no /boot
dir. The same stanza works fine when used in conjunction with my hard
drive (boot = /dev/hda instead of /dev/fd0). As you might have noticed, my
LILO config is similar to that in the Bootdisk HOWTO, but nevertheless
does not work.

So, what I tried to do was copying the boot floppy to my hard disk
(worked), exchanging the kernel (worked), running LILO on it (didn't
work) and then dd the changed image back to the floppy (didn't have chance
to test this, since I didn't get that far).

I got a few questions concerning scenario described above:

1. Which boot loader is better suited for booting from CD-ROM, SYSLINUX or
LILO? (I know for sure that SYSLINUX is used by commercial distros too,
and they are indeed loading their initrd image (which often needs
considerably more space than is available on a floppy, since I know SuSEs 
image is at least 15 MB in size) from CD-ROM.
2. How can I make SYSLINUX/LILO aware of my initrd image?
3. Has anybody got a few URLs at hand with a more detailed description of
how to make a bootable CD?
4. Or even better yet, has anybody gone through all the hassles of
creating such CD-ROM (him|her)self (one that has a large initrd image on
it, that is)?

(I know that this mail has gotten rather long, but I tried to be as
specific as possible).

Thanks for taking your time! Any help is greatly appreciated!

Greetings,

	Holger



Reply to: