[elbe-devel] initrd lacks e2fsck

Manuel Traut manuel.traut at linutronix.de
Mon Apr 25 13:13:12 CEST 2016


Hi Marc,
 
> > We're using ELBE 1.0 to generate a rootfs. The problem is that the /boot/initrd lacks some tools like fsck.ext4, so when I boot the rootfs, I get messages like:
> > 
> > Begin: Checking root file system ... fsck from util-linux 2.25.2
> > fsck: error 2 (No such file or directory) while executing fsck.ext4 for /dev/mmcblk0p1
> > fsck exited with status code 8
> > done.
> > Warning: File system check failed but did not detect errors
> > 
> > Now I don't now where initrd is generated, but it is my understanding that this is part of ELBE toolchain. If so, how can I influence the contents of the initrd?
> > 
> > initrd contains:
> > 
> > $ find . -name *fsck* -o -name *ext*
> > ./etc/e2fsck.conf
> > ./lib/arm-linux-gnueabihf/libext2fs.so.2
> > ./sbin/mkfs.ext4
> > ./sbin/fsck
> > 
> 
> Okay, I think I solved my problem by adding
> 
> 	<command>update-initramfs -u</command>
> 
> to the <finetuning>. No I get a slightly bigger initrd, and it does contain the necessary ext4 programs:
> 
> $ find . -name *fsck* -o -name *ext*
> ./etc/e2fsck.conf
> ./lib/arm-linux-gnueabihf/libext2fs.so.2
> ./sbin/mkfs.ext4
> ./sbin/fsck.ext4
> ./sbin/e2fsck
> ./sbin/fsck
> 
> Not sure if it's the best way to do it, but it works for me.

It's good news that it is working for you. That's one of the reasons
why we have the finetuning rules. That you can slightly change the behaviour
of elbe and don't need to wait for a fix in elbe!

Currently we do a 'update-initramfs -u -k all' beforre we install grub.
But only if we install grub. Typically you don't have grub on armhf..

The systems i build until now have always a customized kernel and sometimes
the kernel comes with a initrd from another elbe XML or from somewhere else
and is compiled into the kernel. So i didn't run in this situation.

If we add the update-initramfs call for all image types, you don't have a
chance to delete it, because the code is running after finetuning.

I think adding it to the finetuning is not that bad. We could add an extra
finetuning tag for that to make it more obivously that this needs to be specified
by the user, if a initrd is wanted. Then we could even remove it from the install
grub code.

What do other people think about that?

  Manuel




More information about the elbe-devel mailing list