The grub2 bootloader doesn't show a cauldron install on BTRFS partitions after a fresh dual-iso install. os-prober shows errors about btrfs: [root@dual5beta1i586 u]# os-prober /usr/lib/os-probes/50mounted-tests: line 80: btrfs: command not found /usr/lib/os-probes/50mounted-tests: line 81: btrfs: command not found /usr/lib/os-probes/50mounted-tests: line 82: btrfs: command not found /usr/lib/os-probes/50mounted-tests: line 80: btrfs: command not found /usr/lib/os-probes/50mounted-tests: line 81: btrfs: command not found /usr/lib/os-probes/50mounted-tests: line 82: btrfs: command not found /dev/sda6:Mageia 4 (4):Mageia:linux [root@dual5beta1i586 u]# rpm -qa | grep os-prober os-prober-1.64-3.mga5 [root@dual5beta1i586 u]# see also https://bugs.launchpad.net/ubuntu/+source/os-prober/+bug/1294638 (thx barjac) so it looks like an upstream issue. I hit it in a old fashioned non-efi install, btw.
cc'ing some people because I don't know whether the combination btrfs + grub2 is used so often, that this should be fixed before beta1 release
Keywords: (none) => UPSTREAMCC: (none) => davidwhodgins, eeeemail, ennael1, tmb, wilcal.intWhiteboard: (none) => 5beta1
is btrfs-progs installed marja? I wouldn't think it likely to block beta 1 but should be release blocker imho.
Guessing os-prober is missing a require on btrfs-progs from the error msgs
(In reply to claire robinson from comment #2) > is btrfs-progs installed marja? > no, it wasn't right after installing it, I get [root@dual5beta1i586 u]# os-prober /dev/sda6:Mageia 4 (4):Mageia:linux [root@dual5beta1i586 u]# so the errors disappeared, but a Mageia / btrfs partition on sda5 is still not detected. I'll reboot, in case that was needed
after reboot I still get: [root@dual5beta1i586 u]# os-prober /dev/sda6:Mageia 4 (4):Mageia:linux [root@dual5beta1i586 u]#
os-prober-1.64-4.mga5 pushed with requires on btrfs-progs thanks Claire ;)
That's not a correct fix ... os-prober dont _need_ btrfs-progs to work. It's an installer issue... if btrfs fs is selected, then the installer should install the tools needed as done for other fs
(In reply to Thomas Backlund from comment #7) > That's not a correct fix ... > > os-prober dont _need_ btrfs-progs to work. > > It's an installer issue... if btrfs fs is selected, then the installer > should install the tools needed as done for other fs For the sake of clarity: I did not install to a btrfs partition, but the existing btrfs install wasn't recognised by os-prober and still isn't. Installing btrfs-progs didn't make os-prober see that btrfs install
(In reply to Thomas Backlund from comment #7) > That's not a correct fix ... > > os-prober dont _need_ btrfs-progs to work. > It errors when trying to detect *other* os's without it - see https://bugs.mageia.org/show_bug.cgi?id=14467#c4 > It's an installer issue... if btrfs fs is selected, then the installer > should install the tools needed as done for other fs I agree, but if there are existing btrfs OS's and the current install is not to btrfs then os-prober will error without it. Maybe the installer should *always* install btrfs-progs in which case it need not be 'Required' by os-prober. @marja > Installing btrfs-progs didn't make os-prober see that btrfs install No but I think that's another issue, it did fix the error messages.
(In reply to Barry Jackson from comment #9) > I agree, but if there are existing btrfs OS's and the current install is not > to btrfs then os-prober will error without it. And that is a os-prober bug. it should _never_ call out to a utility before checking if it's actually available... blindly assuming is bad design... > Maybe the installer should *always* install btrfs-progs in which case it > need not be 'Required' by os-prober. So install more bloat on systems not needing it...
I don't really see how checking it's there will help it to find it if it's not there. No idea then :\ It's actually academic at present as I can not find a fix for this bug. I have searched for and tried all the various patched versions of os-prober including Fedora's latest along with grub2 from git (which is only a few commits ahead of us) but no change. It refuses to detect a system with a btrfs root. I have asked upstream grub about this - no reply yet.
I started digging into the code and I have found it! It seems that Debian-installer only uses btrfs sub-volumes for their installations and therefore os-prober only looks for (and into) sub-vols to detect systems. We AFAICT don't use sub-vols by default so our installations are not found. I have patched os-prober so it now looks at btrfs base partitions as well as sub-vols where they exist. It works for me, with my limited testing so please test by installing: os-prober-1.64-5.mga5 from updates_testing. There is no need to do anything other than install it, the grub2 menu should be updated during install and on next boot you should see the btrfs installations that were previously missing from the menu. I would be happier if someone else were to check my patch ;)
It's actually os-prober-1.64-6.mga5 from updates_testing now - I left a stray debugging command in the previous one.
Thanks, Barry, that fixed it :-) Btw, accidentally tested on a wrong laptop first (64bits non-efi, without btrfs partitions), but you might like to hear that i didn't see any regression there. Closing as fixed, feel free to reopen when needed.
Status: NEW => RESOLVEDResolution: (none) => FIXED
Reopening, because the fix is only in updates_testing now
Status: RESOLVED => REOPENEDResolution: FIXED => (none)
I pushed it to core release so closing again - thanks for testing.
Status: REOPENED => RESOLVEDResolution: (none) => FIXED
Forgot to mention that I will send the patch upstream next week, assuming nothing breaks in the meantime.
Patch with comment added upstream here: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=688336
Note that the 1/2015 edition of Linux Format reports the availability of Mageia-5, and that: "The btrfs file systyem will be used by default."
CC: (none) => maurice