[NTLUG:Discuss] ubuntu 6.10 start up question
Robert Citek
robert.citek at gmail.com
Fri Jan 5 09:31:52 CST 2007
Leroy Tennison wrote:
> I'm assuming from what you are saying that 'break' is a kernel
> parameter. If not please explain. if so, what distributions does it
> work on? I just tried it on CentOS 4 (basically Red Hat Enterprise
> Linux 4) and nothing changed. One time I edited menu.lst and added it.
> The second time I booted to a grub prompt and added it on the 'kernel
> ...' command line with the same result.
Not so much a kernel parameter as a boot parameter, or in Knoppix
parlance, a cheatcode. I haven't dug too much into how Ubuntu boots,
but it seems different than what is described in the man pages. During
"normal" booting, grub loads the kernel which then mounts initrd, which
should be a compressed virtual block device (see 'man initrd'). In
Ubuntu, initrd is actually a compressed cpio archive. Also, instead of
/linuxrc, Ubuntu seems to use /init as the initial setup script. It was
in that script that I discovered the "break" cheatcode. I discovered
the cheatcode by grep'ing recursively for "cmdline". Here's a script
that summarizes how I found the cheatcode:
( tmpdir=$(mktemp -d)
cd $tmpdir
zcat /boot/initrd.img-2.6.15-27-386 |
cpio -i
grep -R cmdline .
rm -rf $tmpdir
)
As you can see, from the output, /init is not the only script that
parses /proc/cmdline.
I don't know why initrd is a compress cpio archive instead of a
compressed image and I don't know why the kernel used /init instead of
/linuxrc. Perhaps someone can shed some more light on this.
For more details on cheatcodes and how to discover them in Knoppix:
http://www.cwelug.org/cgi-bin/wiki.cgi?Knoppix/BootProcess#tip8
http://www.cwelug.org/cgi-bin/wiki.cgi?Knoppix/BootProcess#resources
Regards,
- Robert
More information about the Discuss
mailing list