Red Hat Bugzilla – Bug 498445
boot from multi-device btrfs fails
Last modified: 2010-01-12 10:31:01 EST
Description of problem:
Initrd on Fedora 11 don't scan devices for btrfs filesystem spanning over multiple of them. It cause failure when / is on multiple devices.
Version-Release number of selected component (if applicable):
Fedora 11 preview.
Steps to Reproduce:
1. Install F11 with btrfs root (/dev/sda2 as /)
2. Boot into new installation.
3. Add second device do rootfs, using "btrfs-vol -a /dev/sdb1 /".
4. Try to boot.
Booting stop because it unable to mount /. Last lines displayed:
btrfs: failed to read chunk tree on sda2
btrfs: open_ctree failed
Succesful boot, of course.
I've looked into initrd and noticed it is missing invocation of "btrfsctl -a". This command scans block devices, finds parts of btrfs filesystems and allows kernel to assemble them.
After booting CD in rescue mode and "btrfsctl -a" I can mount this filesystem.
This bug appears to have been reported against 'rawhide' during the Fedora 11 development cycle.
Changing version to '11'.
More information and reason for this action is here:
I have somewhat the same issue except my btrfs volume is not a system filesystem (meaning not /, /usr, /var or else). But still, because it spans over multiple device, it always fail to be mounted at boot. Same fix reported by Tomasz: I have to issue a btrfsctl -a before I can mount it.
I guess this will be fixed when you issue this command in /init in the initrd image.
This is a mass edit of all mkinitrd bugs.
Thanks for taking the time to file this bug report (and/or commenting on it).
As you may have heard in Fedora 12 mkinitrd has been replaced by dracut. In Fedora 12 the mkinitrd package is still around as some programs depend on
certain libraries it provides, but mkinitrd itself is no longer used.
In Fedora 13 mkinitrd will be removed completely. This means that all work
on initrd has stopped.
Rather then keeping mkinitrd bugs open and giving false hope they might get fixed we are mass closing them, so as to clearly communicate that no more work will be done on mkinitrd. We apologize for any inconvenience this may cause.
If you are using Fedora 11 and are experiencing a mkinitrd bug you cannot work around, please upgrade to Fedora 12. If you experience problems with the initrd in Fedora 12, please file a bug against dracut.