I've just tried putting usr in a subvol. Installation proceeds normally, no errors, but I'm dropped to a dracut prompt which indicates mount of /usr failed. dmesg follows:
[ 14.025215] systemd[1]: Starting dracut initqueue hook...
[ 14.077890] Btrfs loaded
[ 14.129987] device label fedora_f18v devid 1 transid 31 /dev/sda1
[ 14.313607] device label fedora_f18v devid 1 transid 31 /dev/sda1
[ 14.446523] systemd[1]: Started Show Plymouth Boot Screen.
[[1;32m OK [[ 14.533662] btrfs: disk space caching is enabled
0m] Started Show Plymouth Boot Screen.
[ 14.534404] systemd[1]: Started Dispatch Password Requests to Console
Directory Watch.
[ 14.534886] systemd[1]: Starting Forward Password Requests to Plymouth
Directory Watch.
[ 14.535001] systemd[1]: Started Forward Password Requests to Plymouth
Directory Watch.
[ 14.535067] systemd[1]: Starting Basic System.
[[1;32m OK [0m] Reached target Basic System.[ 15.053733] systemd[1]:
Reached target Basic System.
[ 15.094806] device label fedora_f18v devid 1 transid 31 /dev/sda1
[ 15.251736] btrfs: disk space caching is enabled
[ 15.430129] systemd[1]: Started dracut initqueue hook.
[ 15.574280] systemd[1]: Starting dracut pre-pivot and cleanup hook...
[ 15.735181] device label fedora_f18v devid 1 transid 31 /dev/sda1
[ 15.876950] btrfs: 'root' is not a valid subvolume
dracut-pre-pivot[228]: Warning: Mounting /usr to /sysroot/usr failed
dracut-pre-pivot[228]: Warning: *** Dropping you to a shell; the system will
continue
dracut-pre-pivot[228]: Warning: *** when you leave the shell.
dracut-pre-pivot[228]: Warning:
[[1;32m OK [0m] Started Show Plymouth Boot Screen.
[[1;32m OK [0m] Reached target Basic System.
dracut-pre-pivot[228]: Warning: Mounting /usr to /sysroot/usr failed
dracut-pre-pivot[228]: Warning: *** Dropping you to a shell; the system will
continue
dracut-pre-pivot[228]: Warning: *** when you leave the shell.
dracut-pre-pivot[228]: Warning:
[ 16.314849] systemd[1]: Starting Emergency Shell…
After a bit of snooping I found the dracut fstab suspicious:
dracut:/# cat /etc/fstab
/dev/disk/by-uuid/64383cfe-c31d-4d25-97c4-4e6b7e788b26 /sysroot btrfs
subvol=root,ro 0
/dev/disk/by-uuid/64383cfe-c31d-4d25-97c4-4e6b7e788b26 /sysroot/usr btrfs
subvol=usr,subvol=root,ro 1 2
Two mount options, mounting two subvols to the same mount point? Seems
problematic. But even when I try what I think is correct from a dracut prompt:
dracut:/# mount -o subvol=usr /dev/sda1 /sysroot/usr
[
1153.468711] device label fedora_f18v devid 1 transid 31 /dev/sda1
mount: /dev/sda1 is already mounted or /sysroot/usr busy
/dev/sda1 is already mounted on /sysroot
The only sda device mounted at this time is the root subvol to /sysroot. So the
additional question is if dracut maybe has a problem with multiple physical
devices being mounted more than once, which is what happens when mounting
multiple subvols? This is dracut-024-17.git20121220.fc18.
Seems like maybe two bugs?
Chris Murphy
