Package: initramfs-tools Version: 0.145 Severity: normal File: initramfs Dear Maintainer,
I have reported the Busybox bug as: https://bugs.busybox.net/show_bug.cgi?id=16207 However, I don't anticipate resolution soon, as a similar bug is 3 years old: https://bugs.busybox.net/show_bug.cgi?id=14466 Steps to reproduce: 1. create a replacement copy of /usr as a subvolume of a new filesystem. 2. edit fstab to add the new /usr 3. mount this live over the existing /usr as part of / 4. update GRUB, initrd etc. 5. check appropriate helpers are in the initrd image 6. reboot 7. use a live distribution / break=bottom to rescue the system, undoing step 2. The early initial ramdisk init script fails to mount /usr properly and a kernel panic ensues. I debugged this by booting with break=bottom. I verified that the busybox mount command in the initial ramdisk ends up just mounting the whole new file system at /usr instead of the subdirectory. I also checked that /root/usr/usr/bin/mount (i.e., the util-linux mount in /usr) did work within the early init environment... I'm not entirely sure how it found its dependencies. I found the related: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=847424#161 It would be good to replace busybox mount if it is not going to be enhanced. I checked and the klibc-utils mount does not support X-mount.subdir either. For the record, this is the actual line in my fstab, showing where I have currently mounted the replacement /usr. I renamed the subdirectory to USR to make debugging a little less confusing. UUID=9ec7b727-0da5-483a-83fd-4e3220e3ee9a /usr2 bcachefs defaults,ro,X-mount.subdir=USR 0 0 Is there an easy way for end users to configure initramfs-tools to copy the util-linux mount into the initial ramdisk in preference to busybox? $ ldd /usr/bin/mount linux-vdso.so.1 (0x00007f94f4c9a000) libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x00007f94f4be9000) libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f94f4bb9000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f94f49c3000) libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x00007f94f4964000) /lib64/ld-linux-x86-64.so.2 (0x00007f94f4c9c000) libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x00007f94f48c9000) $ ldd /usr/bin/busybox linux-vdso.so.1 (0x00007fe83a1e1000) libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007fe83a0d9000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe839ee3000) /lib64/ld-linux-x86-64.so.2 (0x00007fe83a1e3000) At the very least, it would be nice if busybox would spit out warnings about ignored options. Finally while I did test with bcachefs, the X-mount.subdir option is filesystem agnostic and the failure mode is filesystem independent. Regards. -- Package-specific info: -- initramfs sizes -rw-r--r-- 1 root disk 49M Oct 13 19:08 /boot/initrd.img-6.1.0-25-amd64 -rw-r--r-- 1 root disk 53M Oct 13 19:14 /boot/initrd.img-6.10.11-amd64 -- /proc/cmdline BOOT_IMAGE=/boot/vmlinuz-6.10.11-amd64 root=/dev/mapper/vg0-root ro rootdelay=3 ignore_loglevel crashkernel=384M-:128M net.ifnames=0 quiet crashkernel=384M-:128M -- resume RESUME= -- /proc/filesystems fuseblk ext3 ext2 ext4 vfat bcachefs -- lsmod Module Size Used by rfcomm 102400 2 cmac 12288 2 algif_hash 12288 1 algif_skcipher 12288 1 af_alg 32768 6 algif_hash,algif_skcipher bnep 36864 2 snd_hrtimer 12288 1 snd_seq_midi 20480 0 snd_seq_midi_event 16384 1 snd_seq_midi snd_rawmidi 53248 1 snd_seq_midi snd_seq 110592 3 snd_seq_midi,snd_seq_midi_event tun 69632 0 snd_seq_device 16384 3 snd_seq,snd_seq_midi,snd_rawmidi sit 40960 0 tunnel4 12288 1 sit ip_tunnel 36864 1 sit binfmt_misc 28672 1 nft_chain_nat 12288 4 nf_nat 65536 1 nft_chain_nat nf_conntrack 204800 1 nf_nat nf_defrag_ipv6 24576 1 nf_conntrack nf_defrag_ipv4 12288 1 nf_conntrack ipt_REJECT 12288 2 nf_reject_ipv4 16384 1 ipt_REJECT xt_multiport 16384 1 nft_compat 20480 3 x_tables 53248 3 nft_compat,xt_multiport,ipt_REJECT rpcsec_gss_krb5 32768 0 nfsd 966656 5 auth_rpcgss 192512 2 nfsd,rpcsec_gss_krb5 nfs_acl 12288 1 nfsd nfs 602112 0 lockd 155648 2 nfsd,nfs grace 12288 2 nfsd,lockd netfs 573440 1 nfs sunrpc 864256 19 nfsd,auth_rpcgss,lockd,rpcsec_gss_krb5,nfs_acl,nfs nf_tables 372736 14 nft_compat,nft_chain_nat nfnetlink 20480 2 nft_compat,nf_tables bcachefs 2019328 2 lz4hc_compress 20480 1 bcachefs lz4_compress 24576 1 bcachefs nls_ascii 12288 1 tcp_diag 12288 0 inet_diag 28672 1 tcp_diag nls_cp437 16384 1 parport_pc 40960 0 vfat 20480 1 fat 98304 1 vfat ppdev 24576 0 lp 20480 0 parport 81920 3 parport_pc,lp,ppdev dm_crypt 61440 0 mt7921e 24576 0 mt7921_common 86016 1 mt7921e mt792x_lib 65536 2 mt7921e,mt7921_common btusb 86016 0 btrtl 32768 1 btusb snd_hda_codec_hdmi 90112 1 btintel 69632 1 btusb mt76_connac_lib 94208 3 mt792x_lib,mt7921e,mt7921_common btbcm 24576 1 btusb snd_hda_codec_realtek 208896 1 snd_hda_codec_generic 114688 1 snd_hda_codec_realtek snd_hda_scodec_component 20480 1 snd_hda_codec_realtek snd_hda_intel 61440 4 btmtk 12288 1 btusb bluetooth 1069056 30 btrtl,btmtk,btintel,btbcm,bnep,btusb,rfcomm joydev 24576 0 snd_intel_dspcfg 36864 1 snd_hda_intel mt76 131072 4 mt792x_lib,mt7921e,mt7921_common,mt76_connac_lib amd_atl 40960 1 snd_intel_sdw_acpi 16384 1 snd_intel_dspcfg amdgpu 12939264 3 snd_hda_codec 212992 4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek mac80211 1396736 4 mt792x_lib,mt76,mt7921_common,mt76_connac_lib intel_rapl_msr 20480 0 snd_hda_core 143360 5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek intel_rapl_common 49152 1 intel_rapl_msr libarc4 12288 1 mac80211 snd_hwdep 16384 1 snd_hda_codec cfg80211 1339392 4 mt76,mac80211,mt7921_common,mt76_connac_lib snd_pcm_oss 69632 0 snd_mixer_oss 28672 2 snd_pcm_oss snd_pcm 188416 6 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_pcm_oss,snd_hda_core rfkill 40960 3 bluetooth,cfg80211 edac_mce_amd 28672 0 kvm_amd 192512 0 sp5100_tco 16384 0 snd_timer 53248 4 snd_seq,snd_hrtimer,snd_pcm amdxcp 12288 1 amdgpu snd 147456 18 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_pcm_oss,snd_pcm,snd_rawmidi,snd_mixer_oss watchdog 49152 1 sp5100_tco drm_exec 12288 1 amdgpu gpu_sched 65536 1 amdgpu kvm 1343488 1 kvm_amd ccp 155648 1 kvm_amd soundcore 16384 2 snd drm_buddy 20480 1 amdgpu wmi_bmof 12288 0 k10temp 12288 0 sg 45056 0 efi_pstore 12288 0 rapl 20480 0 evdev 28672 35 pcspkr 12288 0 button 24576 0 ext4 1130496 5 crc16 12288 2 bluetooth,ext4 mbcache 16384 1 ext4 jbd2 196608 1 ext4 efivarfs 28672 1 raid10 73728 0 raid1 61440 0 raid0 24576 0 radeon 1888256 0 drm_ttm_helper 12288 2 amdgpu,radeon ttm 102400 3 amdgpu,radeon,drm_ttm_helper i2c_algo_bit 12288 2 amdgpu,radeon drm_suballoc_helper 12288 2 amdgpu,radeon drm_display_helper 262144 2 amdgpu,radeon drm_kms_helper 253952 4 drm_display_helper,amdgpu,radeon drm 749568 14 gpu_sched,drm_kms_helper,drm_exec,drm_suballoc_helper,drm_display_helper,drm_buddy,amdgpu,radeon,drm_ttm_helper,ttm,amdxcp cec 69632 1 drm_display_helper rc_core 73728 1 cec dm_raid 49152 5 raid456 196608 6 dm_raid async_raid6_recov 20480 1 raid456 async_memcpy 16384 2 raid456,async_raid6_recov async_pq 16384 2 raid456,async_raid6_recov async_xor 16384 3 async_pq,raid456,async_raid6_recov async_tx 16384 5 async_pq,async_memcpy,async_xor,raid456,async_raid6_recov md_mod 225280 5 raid1,dm_raid,raid10,raid0,raid456 xor 20480 2 bcachefs,async_xor raid6_pq 122880 4 async_pq,bcachefs,raid456,async_raid6_recov libcrc32c 12288 5 nf_conntrack,nf_nat,bcachefs,nf_tables,raid456 crc32c_generic 12288 0 dm_mod 208896 191 dm_raid,dm_crypt hid_generic 12288 0 usbhid 77824 0 hid 253952 2 usbhid,hid_generic sd_mod 81920 55 nvme 57344 2 nvme_core 192512 3 nvme ahci 49152 55 crc32_pclmul 12288 0 xhci_pci 24576 0 libahci 61440 1 ahci crc32c_intel 16384 7 t10_pi 20480 2 sd_mod,nvme_core xhci_hcd 356352 1 xhci_pci crc64_rocksoft_generic 12288 1 libata 454656 2 libahci,ahci ghash_clmulni_intel 16384 0 r8169 118784 0 crc64_rocksoft 16384 1 t10_pi sha512_ssse3 53248 0 realtek 45056 1 crc_t10dif 16384 1 t10_pi usbcore 401408 4 xhci_hcd,usbhid,btusb,xhci_pci scsi_mod 319488 3 sd_mod,libata,sg sha256_ssse3 32768 1 mdio_devres 12288 1 r8169 crct10dif_generic 12288 0 sha1_ssse3 32768 0 crct10dif_pclmul 12288 1 i2c_piix4 28672 0 crc64 16384 3 crc64_rocksoft,crc64_rocksoft_generic,bcachefs crct10dif_common 12288 3 crct10dif_generic,crc_t10dif,crct10dif_pclmul libphy 225280 3 r8169,mdio_devres,realtek scsi_common 16384 4 scsi_mod,sd_mod,libata,sg usb_common 16384 2 xhci_hcd,usbcore video 77824 2 amdgpu,radeon wmi 28672 2 video,wmi_bmof gpio_amdpt 16384 0 gpio_generic 20480 1 gpio_amdpt aesni_intel 364544 3 crypto_simd 16384 1 aesni_intel cryptd 28672 3 crypto_simd,ghash_clmulni_intel -- /etc/initramfs-tools/modules dm_raid mousedev radeon -- /etc/initramfs-tools/initramfs.conf MODULES=most BUSYBOX=auto KEYMAP=n COMPRESS=zstd DEVICE= NFSROOT=auto RUNSIZE=10% FSTYPE=auto -- /etc/initramfs-tools/update-initramfs.conf update_initramfs=yes backup_initramfs=no -- /etc/crypttab # <target name> <source device> <key file> <options> #not present c-swap /dev/mapper/vg0-swap /dev/urandom swap,cipher=aes-cbc-essiv:sha256,size=256,hash=sha256 -- /proc/mdstat Personalities : [raid6] [raid5] [raid4] [raid0] [raid1] [raid10] unused devices: <none> -- mkinitramfs hooks /etc/initramfs-tools/hooks/: /usr/share/initramfs-tools/hooks: amd64_microcode bcachefs cryptgnupg cryptgnupg-sc cryptkeyctl cryptopensc cryptpassdev cryptroot cryptroot-unlock dmsetup fsck fuse intel_microcode keymap klibc-utils kmod lvm2 mdadm ntfs_3g resume thermal thin-provisioning-tools udev xfs zz-busybox -- System Information: Debian Release: trixie/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 6.10.11-amd64 (SMP w/12 CPU threads; PREEMPT) Kernel taint flags: TAINT_WARN Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: sysvinit (via /sbin/init) LSM: AppArmor: enabled Versions of packages initramfs-tools depends on: ii initramfs-tools-core 0.145 ii linux-base 4.10.1 initramfs-tools recommends no packages. Versions of packages initramfs-tools suggests: ii bash-completion 1:2.14.0-1 -- Configuration Files: /etc/initramfs-tools/modules changed: dm_raid mousedev radeon -- no debconf information