[clug] Kernel without initramfs

Robert Edwards bob at cs.anu.edu.au
Wed Mar 25 23:44:12 GMT 2009


David,

I notice in one of your earlier posts that you may be using ext3 on your
CF device. May I suggest that it is a bad idea to use ext3 in particular
and most other journalling FS's in general on a "flash"-based device?

There are special FS's to use such as jffs, but I would recommend
dividing up your file-system structure into read-only bits (eg. /usr)
and writable parts. For the writable parts work out if you can afford
to write to a RAM-base FS and then copy important data back to
non-volatile storage. Logging etc., if possible, should be to an
external logging server.

Just some ideas that I have had to address in the past.

Bob Edwards.

David Cottrill wrote:
> Thanks all, the big delay was coming from the debian-live initramfs 
> bootscripts (I'm using Debian as host too).
> 
> I believe scsi was the right place to look but it is still failing at 
> the same point. Have tried all variations of root=/dev/hda1, /dev/sda1 
> LABEL=...
> 
> Inserting a generic kernel into the same image is a serious performance 
> hit - these SoC motherboards are not like a standard computer, so P2 
> 200MHz /128MB ram is actually more like 486dx 200MHz / 100MB ram. I've 
> built PII 400 desktops (Gentoo and Debian) and they are vastly different 
> beast.
> 
> Even so, the boot time has been cut down enough using debootstrap 
> instead of cdebootstrap that I can deal with the idea of having a 
> generic kernel (but I will change modules=most to modules=dep). 
> debootstrap more accurately assesses my idea of a 'minimal' system.
> 
> When I say generic kernel - I mean Debian, not vanilla.
> 
> The setting for CONFIG_RAMFS I believe is 'y' (but support for 
> initrd/initramfs is 'n') so I'll give that one last crack
> 
> Now that I'm settled on not using debian-live, I have to figure out a 
> way to reduce the number of writes to disk. CF cards don't react well to 
> that over the short term and it's positively destructive medium to long 
> term.
> 
> Interestingly I've noticed that many flash disk drive manufacturers are 
> pitching at the server market. Flash drives can take maybe a million 
> hits (cheap ones 100,000) per bit before they hit MTBF. Even with load 
> levelling, I'm betting most people out there could rack that up on a 
> serious server in a day or so.
> 
> Thanks again,
> David
> 
> On Wed, Mar 25, 2009 at 11:52 AM, Robert Edwards <bob at cs.anu.edu.au 
> <mailto:bob at cs.anu.edu.au>> wrote:
> 
>     David Cottrill wrote:
> 
>         I'm working at getting a P2 300MHz to boot in a reasonable time
>         - the
>         initramfs runtime on a generic kernel is about 2 minutes.To fix
>         this I've
>         built and will be rebuilding a custom kernel with all the
>         required modules
>         built in.
> 
>         What I've done - lsmod from the generic kernel, made sure all
>         modules listed
>         got included in the kernel in my custom version.
> 
>         The remaining problem: After finding all my devices (including
>         my hard disk)
>         the boot sequence fails to mount the root partition (local).
> 
>         The first and last error message is:
>         VFS: can't mount (insert disk label or /dev/hda1 or /dev/sda1 or
>         anything
>         else here) or block (0,0)
>         Please append a correct root=... Choose from the following
>         partitions:
> 
>         There isn't a list of partitions to choose from so I guess it is
>         the problem
>         is in the part of the kernel that recognises partitions but my
>         most recent
>         build included almost all of the partition options so I'm a
>         little bit
>         mystified.
> 
>         Any suggestions?
> 
> 
>         Thanks,
>         David
> 
> 
>     Are you compiling a kernel.org <http://kernel.org> kernel or one
>     from the Ubuntu kernel
>     source packages? The Ubuntu kernel sources include patches to find
>     the root file system by disk label. You probably should identify your
>     root fs by block device instead (eg. root=/dev/sda1 etc.) (and in
>     fstab as well...).
> 
>     Cheers,
> 
>     Bob Edwards.
> 
> 



More information about the linux mailing list