Am 29.01.19 um 15:11 schrieb Thomas Lange: > Solved! > > > Btw, the last entry right before the kernel panic is: > > <snip> > > /init: error while loading shared libraries > > </snip> > > This line in your disk_config causes the error: > > vgmain-vartmp /var/tmp 1GiB ext4 defaults,noexec,nosuid,nodev > > > dracut is using /var/tmp when creating the initrd. Since you've > mounted it with noexec, the call of ldd to resolve the dependencies on > executables will fail, because ldd says this is not a dynamic > executable and so a lot of shared .so libraries are missing in the > initrd. If you mount it without noexec it works. Another solution could > be to change the tmpdir that dracut uses. > Confirmed!
Thomas, I can't say how much I appreciate your effort. It's all logical now, but before it felt like the search for the needle in the haystack. The solution is a hook in hooks/instsoft.DRACUT: <snip> #!/bin/bash error=0; trap 'error=$(($?>$error?$?:$error))' ERR # save maximum error code mkdir $target/etc/dracut.conf.d # FIXME: Remove the 'crc32c' kernel module as it is not available # on Ubuntu 18.04 and leads to an error message preventing # successful creation of the initramfs. if ifclass UBUNTU; then fcopy -v /etc/dracut.conf.d/10-debian.conf fi # Instruct dracut to use a different directory for extracting temporary # files, if /target/var/tmp is mounted noexec. echo "tmpdir=/var/cache" > $target/etc/dracut.conf.d/10-tempdir.conf exit $error </snip> Thank you very much! Robert