On Sat, Aug 6, 2022 at 12:27 PM stan via users <users@xxxxxxxxxxxxxxxxxxxxxxx> wrote: > > dracut is not putting libraries like libmount and libblkid in the > initramfs on my system for a few weeks now. Those initramfs' are not > booting. Do you know a way to explicitly request that libraries be > included in the initramfs? I haven't found a way in my research, and > in fact that research says that if programs like mount are included in > the initramfs, then the libraries needed by that executable will also be > included automatically. But, it isn't happening. Which seems strange, > since: > > $ ldd /usr/bin/mount > /usr/bin/ldd: line 160: /lib/ld-linux.so.2: cannot execute binary file: Exec format error > linux-vdso.so.1 => linux-vdso.so.1 (0x00007ffc9935e000) > libmount.so.1 => /lib64/libmount.so.1 (0x00007fd3de77a000) > libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fd3de74a000) > libc.so.6 => /lib64/libc.so.6 (0x00007fd3de572000) > libblkid.so.1 => /lib64/libblkid.so.1 (0x00007fd3de532000) > libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007fd3de492000) > /lib64/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00007fd3de83a000) > > mount is included by default in the initramfs, yet, > > # lsinitrd /boot/initramfs-5.19.0-0.rc4.20220701gita175eca0f3d7.36.20220727.fc37.x86_64.img | grep mount > usrmount > lrwxrwxrwx 1 root root 17 Jul 20 18:03 etc/mtab -> /proc/self/mounts > lrwxrwxrwx 1 root root 44 Jul 20 18:03 etc/systemd/system/initrd.target.wants/dracut-mount.service -> /usr/lib/systemd/system/dracut-mount.service > lrwxrwxrwx 1 root root 48 Jul 20 18:03 etc/systemd/system/initrd.target.wants/dracut-pre-mount.service -> /usr/lib/systemd/system/dracut-pre-mount.service > -rwxr-xr-x 1 root root 1095 Jun 19 15:35 usr/bin/dracut-mount > -rwxr-xr-x 1 root root 508 Jun 19 15:35 usr/bin/dracut-pre-mount > -rwsr-xr-x 1 root root 49240 Jul 20 18:03 usr/bin/mount > -rwsr-xr-x 1 root root 36888 Jul 20 18:03 usr/bin/umount > drwxr-xr-x 2 root root 0 Jul 20 18:03 usr/lib/dracut/hooks/mount > drwxr-xr-x 2 root root 0 Jul 20 18:03 usr/lib/dracut/hooks/pre-mount > -rw-r--r-- 1 root root 756 Jun 19 15:35 usr/lib/systemd/system/dracut-mount.service > -rw-r--r-- 1 root root 785 Jun 19 15:35 usr/lib/systemd/system/dracut-pre-mount.service > -rw-r--r-- 1 root root 1136 Jul 13 04:12 usr/lib/systemd/system/sys-kernel-config.mount > -rw-r--r-- 1 root root 465 Jul 13 04:12 usr/lib/systemd/system/umount.target > > This is what an initramfs that boots looks like with respect to mount. > > # lsinitrd /boot/initramfs-5.19.0-0.rc4.20220701gita175eca0f3d7.36.20220703.fc37.x86_64.img | grep mount > usrmount > lrwxrwxrwx 1 root root 17 Apr 19 16:17 etc/mtab -> /proc/self/mounts > lrwxrwxrwx 1 root root 44 Apr 19 16:17 etc/systemd/system/initrd.target.wants/dracut-mount.service -> /usr/lib/systemd/system/dracut-mount.service > lrwxrwxrwx 1 root root 48 Apr 19 16:17 etc/systemd/system/initrd.target.wants/dracut-pre-mount.service -> /usr/lib/systemd/system/dracut-pre-mount.service > -rwxr-xr-x 1 root root 1095 Feb 18 04:32 usr/bin/dracut-mount > -rwxr-xr-x 1 root root 508 Feb 18 04:32 usr/bin/dracut-pre-mount > -rwsr-xr-x 1 root root 49240 Apr 19 16:17 usr/bin/mount > -rwsr-xr-x 1 root root 36888 Apr 19 16:17 usr/bin/umount > -rwxr-xr-x 1 root root 292512 Apr 19 16:17 usr/lib64/libmount.so.1.1.0 > lrwxrwxrwx 1 root root 29 Apr 19 16:17 usr/lib64/libmount.so.1 -> ../../lib64/libmount.so.1.1.0 > lrwxrwxrwx 1 root root 29 Apr 19 16:17 usr/lib64/libmount.so -> ../../lib64/libmount.so.1.1.0 > drwxr-xr-x 2 root root 0 Apr 19 16:17 usr/lib/dracut/hooks/mount > drwxr-xr-x 2 root root 0 Apr 19 16:17 usr/lib/dracut/hooks/pre-mount > -rw-r--r-- 1 root root 772 Feb 18 04:32 usr/lib/systemd/system/dracut-mount.service > -rw-r--r-- 1 root root 801 Feb 18 04:32 usr/lib/systemd/system/dracut-pre-mount.service > -rw-r--r-- 1 root root 1136 Apr 19 16:17 usr/lib/systemd/system/sys-kernel-config.mount > -rw-r--r-- 1 root root 465 Apr 19 16:17 usr/lib/systemd/system/umount.target > > Or failing that, do you know a way to edit the initramfs after it has > been created, in order to add such libraries? In other words, a manual > workaround. Add this option on the dracut command line: --install-optional <file list> Or add a file in /etc/dracut.conf.d that contains this: install_optional_items+=" <file>[ <file> ...] " Specify additional files to include in the initramfs, separated by spaces, if they exist. You may need to add quite a list if it is messing up other libraries/executables. _______________________________________________ users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/users@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue