FS#53364 - mkinitcpio 23: trying to boot to btrfs root without udev hook results in error device not found
Attached to Project:
Arch Linux
Opened by Ceriel Jacobs (cj1) - Sunday, 19 March 2017, 00:34 GMT
Last edited by Dave Reisner (falconindy) - Sunday, 19 March 2017, 14:11 GMT
Opened by Ceriel Jacobs (cj1) - Sunday, 19 March 2017, 00:34 GMT
Last edited by Dave Reisner (falconindy) - Sunday, 19 March 2017, 14:11 GMT
|
Details
Description:
Mkinitcpio hooks documentation lists for btrfs hook: "This hook is not required for using Btrfs on a single device." and: "Runs btrfs device scan to assemble a multi-device Btrfs root file system when udev hook or systemd hook is not present." This made me think that for a btrfs root device, I can remove udev hook and still be able boot into a btrfs root partition. The result for a single-disk (non RAID) btrfs FS without sub-volumes is (with and without the btrfs hook and always without udev): ERROR: device 'PARTUUID=c2...c13' not found. Skipping fsck. :: mounting 'PARTUUID=c2...c13' on real root mount: can't find 'PARTUUID=c2...c13' You are now being dropped into an emergency shell. Have I misunderstood the documentation that it would be possible to boot into btrfs without udev? Or is booting using the btrfs hook only possible for a multi-disk btrfs file system? Additional info: # lsinitcpio -a /boot/initramfs-linux-tiny.img ==> Image: /boot/initramfs-linux-tiny.img ==> Created with mkinitcpio 23 ==> Kernel: 4.10.3-1-ARCH ==> Size: 3.53 MiB ==> Compressed with: lz4 -l -> Uncompressed size: 8.32 MiB (.424 ratio) -> Estimated extraction time: 0.028s ==> Included modules: ahci [explicit] hid-generic [explicit] raid6_pq usbcore atkbd [explicit] i8042 [explicit] scsi_mod usbhid [explicit] btrfs [explicit] libahci sd_mod [explicit] xhci-hcd crc32c-intel [explicit] libata serio xhci-pci [explicit] crc32c_generic libcrc32c serio_raw [explicit] xor ehci-hcd libps2 uas [explicit] ehci-pci [explicit] ohci-hcd usb-common hid ohci-pci [explicit] usb-storage ==> Included binaries: blkid busybox dosfsck fsck fsck.vfat kmod mount switch_root # lsinitcpio /boot/initramfs-linux-tiny.img buildconfig config init init_functions VERSION lib64 sbin bin lib usr usr/lib64 usr/sbin usr/bin usr/bin/dosfsck usr/bin/fsck.vfat usr/bin/fsck usr/bin/switch_root usr/bin/mount usr/bin/blkid usr/bin/modinfo usr/bin/modprobe usr/bin/lsmod usr/bin/rmmod usr/bin/insmod usr/bin/depmod usr/bin/kmod usr/bin/yes usr/bin/wget usr/bin/wc usr/bin/vi usr/bin/uptime usr/bin/unshare usr/bin/unlink usr/bin/uniq usr/bin/uname usr/bin/umount usr/bin/truncate usr/bin/true usr/bin/touch usr/bin/tftp usr/bin/test usr/bin/telnet usr/bin/tail usr/bin/tac usr/bin/sync usr/bin/strings usr/bin/stat usr/bin/sort usr/bin/sleep usr/bin/shuf usr/bin/sha512sum usr/bin/sha256sum usr/bin/sha1sum usr/bin/sh usr/bin/setfont usr/bin/seq usr/bin/sed usr/bin/route usr/bin/rmdir usr/bin/rm usr/bin/reboot usr/bin/readlink usr/bin/pwd usr/bin/ps usr/bin/printf usr/bin/poweroff usr/bin/ping6 usr/bin/ping usr/bin/pidof usr/bin/pgrep usr/bin/openvt usr/bin/nslookup usr/bin/nsenter usr/bin/netstat usr/bin/nc usr/bin/mv usr/bin/mountpoint usr/bin/mktemp usr/bin/mkpasswd usr/bin/mknod usr/bin/mkfifo usr/bin/mkdir usr/bin/md5sum usr/bin/ls usr/bin/losetup usr/bin/loadkmap usr/bin/loadfont usr/bin/ln usr/bin/less usr/bin/killall usr/bin/kill usr/bin/kbd_mode usr/bin/iptunnel usr/bin/iprule usr/bin/iproute usr/bin/iplink usr/bin/ipaddr usr/bin/ip usr/bin/install usr/bin/init usr/bin/ifconfig usr/bin/hexdump usr/bin/head usr/bin/halt usr/bin/grep usr/bin/getopt usr/bin/fstrim usr/bin/free usr/bin/fatattr usr/bin/false usr/bin/expr usr/bin/env usr/bin/egrep usr/bin/echo usr/bin/du usr/bin/dmesg usr/bin/dirname usr/bin/df usr/bin/dd usr/bin/cut usr/bin/cttyhack usr/bin/cp usr/bin/clear usr/bin/chroot usr/bin/chown usr/bin/chmod usr/bin/chgrp usr/bin/cat usr/bin/blkdiscard usr/bin/basename usr/bin/awk usr/bin/ash usr/bin/[[ usr/bin/[ usr/bin/busybox usr/lib usr/lib/modprobe.d usr/lib/librt.so.1 usr/lib/libmount.so.1 usr/lib/libuuid.so.1 usr/lib/libblkid.so.1 usr/lib/libpthread.so.0 usr/lib/libz.so.1 usr/lib/liblzma.so.5 usr/lib/ld-linux-x86-64.so.2 usr/lib/libc.so.6 usr/lib/libcrypt.so.1 usr/lib/modules usr/lib/modules/4.10.3-1-ARCH usr/lib/modules/4.10.3-1-ARCH/modules.devname usr/lib/modules/4.10.3-1-ARCH/modules.builtin.bin usr/lib/modules/4.10.3-1-ARCH/modules.symbols.bin usr/lib/modules/4.10.3-1-ARCH/modules.softdep usr/lib/modules/4.10.3-1-ARCH/modules.alias.bin usr/lib/modules/4.10.3-1-ARCH/modules.dep.bin usr/lib/modules/4.10.3-1-ARCH/kernel usr/lib/modules/4.10.3-1-ARCH/kernel/raid6_pq.ko usr/lib/modules/4.10.3-1-ARCH/kernel/hid.ko usr/lib/modules/4.10.3-1-ARCH/kernel/ohci-hcd.ko usr/lib/modules/4.10.3-1-ARCH/kernel/xhci-hcd.ko usr/lib/modules/4.10.3-1-ARCH/kernel/crc32c_generic.ko usr/lib/modules/4.10.3-1-ARCH/kernel/xor.ko usr/lib/modules/4.10.3-1-ARCH/kernel/atkbd.ko usr/lib/modules/4.10.3-1-ARCH/kernel/scsi_mod.ko usr/lib/modules/4.10.3-1-ARCH/kernel/serio_raw.ko usr/lib/modules/4.10.3-1-ARCH/kernel/ehci-hcd.ko usr/lib/modules/4.10.3-1-ARCH/kernel/uas.ko usr/lib/modules/4.10.3-1-ARCH/kernel/usbcore.ko usr/lib/modules/4.10.3-1-ARCH/kernel/libcrc32c.ko usr/lib/modules/4.10.3-1-ARCH/kernel/serio.ko usr/lib/modules/4.10.3-1-ARCH/kernel/ohci-pci.ko usr/lib/modules/4.10.3-1-ARCH/kernel/ahci.ko usr/lib/modules/4.10.3-1-ARCH/kernel/hid-generic.ko usr/lib/modules/4.10.3-1-ARCH/kernel/libps2.ko usr/lib/modules/4.10.3-1-ARCH/kernel/i8042.ko usr/lib/modules/4.10.3-1-ARCH/kernel/libahci.ko usr/lib/modules/4.10.3-1-ARCH/kernel/usb-common.ko usr/lib/modules/4.10.3-1-ARCH/kernel/xhci-pci.ko usr/lib/modules/4.10.3-1-ARCH/kernel/libata.ko usr/lib/modules/4.10.3-1-ARCH/kernel/sd_mod.ko usr/lib/modules/4.10.3-1-ARCH/kernel/btrfs.ko usr/lib/modules/4.10.3-1-ARCH/kernel/usb-storage.ko usr/lib/modules/4.10.3-1-ARCH/kernel/usbhid.ko usr/lib/modules/4.10.3-1-ARCH/kernel/ehci-pci.ko usr/lib/modules/4.10.3-1-ARCH/kernel/crc32c-intel.ko usr/local usr/local/sbin usr/local/bin usr/local/lib etc etc/ld.so.cache etc/modprobe.d etc/modprobe.d/modprobe.conf etc/ld.so.conf etc/initrd-release etc/fstab etc/mtab tmp run dev sys proc new_root |
This task depends upon
Closed by Dave Reisner (falconindy)
Sunday, 19 March 2017, 14:11 GMT
Reason for closing: Won't fix
Additional comments about closing: https://git.archlinux.org/svntogit/packa ges.git/commit/trunk?h=packages/systemd& amp;id=c3e01781e6bac9e46a498a9910f690a0d 0ce52d0
Sunday, 19 March 2017, 14:11 GMT
Reason for closing: Won't fix
Additional comments about closing: https://git.archlinux.org/svntogit/packa ges.git/commit/trunk?h=packages/systemd& amp;id=c3e01781e6bac9e46a498a9910f690a0d 0ce52d0
Leaving with only device paths left, like /dev/sda2?
(Or custom bash scripting solution to extract the device path from blkid output?)
In general, I don't really want to support images without udev.