Why my self-compiled kernel complains "unable to mount root fs"?

Please add

root=/dev/ram0

to your kernel command line.

Or, you can use rdev to modify the kernel image directly:

rdev /some/where/bzImage /dev/ram0

The original kernel images in CDlinux 0.9.6.1 and earlier are already modified with rdev. So you don't need to add the root=/dev/ram0 option if you are using a vanilla CDlinux kernel image.

Alternatively, you can also use the new CONFIG_CMDLINE option in your kernel .config file

CONFIG_CMDLINE="root=/dev/ram0"

The original kernel images in CDlinux 0.9.7 and later are compiled with this CONFIG_CMDLINE option. And this is the recommend method. According to man(8) rdev:

      The rdev utility, when used other than to find a name for  the  current
      root  device,  is an ancient hack that works by patching a kernel image
      at a magic offset with magic numbers. It does not work on architectures
      other  than  i386.   Its use is strongly discouraged. Use a boot loader
      like SysLinux or LILO instead.

You can also modify the kernel image and set a default vesa mode:

vidmode /some/where/bzImage 788

Where 788 (decimal) means 800×600@64k colors (0×314 hexadecimal). Please refer to here for other available vesa modes.

The original kernel images in CDlinux 0.9.7 and earlier are already modified with vidmode. And again, this method is deprecated. You can use the vga= or video= kernel command line parameters instead.

doc/faq/rdev.txt · Last modified: 2012/02/01 13:50 by benz
Driven by DokuWiki www.chimeric.de 文泉驿提供动力 Recent changes RSS feed Valid CSS Valid XHTML 1.0
Graciously hosted by ibiblio.org. Get CDlinux at SourceForge.net. Fast, secure and Free Open Source software downloads