Bug 1044760 - os-prober doesn't find other os
Summary: os-prober doesn't find other os
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: os-prober
Version: 20
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Hedayat Vatankhah
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-12-18 22:57 UTC by Erik P. Olsen
Modified: 2014-05-17 06:32 UTC (History)
3 users (show)

Fixed In Version: os-prober-1.58-6.fc19
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-05-17 06:28:24 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
os-prober output to file messages. (24.08 KB, text/plain)
2013-12-19 23:03 UTC, Erik P. Olsen
no flags Details

Description Erik P. Olsen 2013-12-18 22:57:20 UTC
Description of problem:

I have on my laptop (Lenovo L430) two Fedora systems. One F19 with /boot on /dev/sda1 and one F20 on /dev/sda8. After installation of F20 only F20 was bootable. Ran os-prober in order to create F19 entry in grub2 of F20 but no output from os-prober.


Version-Release number of selected component (if applicable):
os-prober 1.58-4


How reproducible:
every time


Steps to Reproduce:
1.boot F20
2.run os-prober
3.

Actual results:
No output

Expected results:
/dev/sda1:Fedora (3.11.10-200.fc19.x86_64) 19 (Scrödinger's Cat):Fedora:linux


Additional info:

Comment 1 Hedayat Vatankhah 2013-12-19 15:05:10 UTC
Please give the os-prober output in /var/log/messages, this is certainly not a general problem since it works fine on my system. Also, make sure that your Fedora 19 is rebooted/shut down cleanly.

Comment 2 Erik P. Olsen 2013-12-19 20:30:36 UTC
(In reply to Hedayat Vatankhah from comment #1)
> Please give the os-prober output in /var/log/messages, this is certainly not
> a general problem since it works fine on my system. Also, make sure that
> your Fedora 19 is rebooted/shut down cleanly.

I've reinstalled grub2 on F19 so I could boot it. Going back to F20 using same method didn't succeed so I can't boot F20 at the moment. Using the rescue feature I can chroot F20 and running os-prober in this way does not produce any output neither on the terminal nor /var/log/messages.

I will reinstall F20 and see what it brings. Will come back when it's done.

Comment 3 Erik P. Olsen 2013-12-19 23:03:14 UTC
Created attachment 839259 [details]
os-prober output to file messages.

Comment 4 Hedayat Vatankhah 2013-12-21 17:04:07 UTC
And where is the / partition of F19?

Comment 5 Erik P. Olsen 2013-12-21 18:26:41 UTC
(In reply to Hedayat Vatankhah from comment #4)
> And where is the / partition of F19?

I have following layouts:

F19:
/dev/sda1:  /boot
/dev/sda2:  /usr
/dev/sda3:  /var
/dev/sda5:  /tmp
/dev/sda6:  /
/dev/sda7:  /home

F20:
/dev/sda8:  /boot
/dev/sda9:  /home
/dev/sda10: /usr
/dev/sda11: /tmp
/dev/sda12: /var
/dev/sda13: /

Comment 6 Hedayat Vatankhah 2013-12-21 18:48:49 UTC
I think I found the problem. This is probably because your /usr is separate. I'll try to fix the issue. 
Thanks for your report.
Unfortunately, I'll probably be absent for a while but I'll fix it ASAP.

Comment 7 Erik P. Olsen 2013-12-21 19:41:24 UTC
(In reply to Hedayat Vatankhah from comment #6)
> I think I found the problem. This is probably because your /usr is separate.
> I'll try to fix the issue. 
> Thanks for your report.
> Unfortunately, I'll probably be absent for a while but I'll fix it ASAP.

Merry Christmas

Comment 8 Erik P. Olsen 2014-01-27 00:13:43 UTC
Any progress with fixing this bug?

Comment 9 Hedayat Vatankhah 2014-02-24 09:00:44 UTC
I'm back. Please wait a little, I'll try to fix it soon. However, I think it needs some thought since the 'usermove' concept of Fedora and using a separate /usr breaks a fundamental assumption in os-prober in detecting "Linux" OS.

Comment 10 Leslie Satenstein 2014-03-03 21:07:11 UTC
Hi Erik, 

os-prober does  not see Fedora 20 on /dev/sdd (gpt partition btrfs format)

I have a day to day Fedora 20 on my /dev/sda.  After reinstalling Fedora 20 on the /dev/sdd partitioned gpt, and with using anaconda's choice to use btrfs, this system installed correctly, and shows all the operating systems on this computer.
However, the Fedora 20 on /dev/sda (msdos org, formatted ext4 as non btrfs and non lvm), does not see the other F20. 
Is it a problem with gpt, or a problem with having chosen btrfs via anaconda? 

There is also a fedora19 on this system at /dev/sdc (MSDOS partitions and using ext4 (non lvm and not btrfs).

My work around for now is to boot from the newer installation, but by default, start the version on /dev/sda

Comment 11 Erik P. Olsen 2014-03-03 22:32:18 UTC
(In reply to Hedayat Vatankhah from comment #9)
> I'm back. Please wait a little, I'll try to fix it soon. However, I think it
> needs some thought since the 'usermove' concept of Fedora and using a
> separate /usr breaks a fundamental assumption in os-prober in detecting
> "Linux" OS.

I have never seen this problem before. I have always used this partition scheme latest with F18 which would see all other linux systems, so I assume this is a problem with F20.

Comment 12 Hedayat Vatankhah 2014-04-24 07:08:00 UTC
Well, a new Fedora can see other distributions including older Fedora's without usermove feature, but the problem is 'see'ing newer Fedora's. 

Would you please check if this will fix the problem on your system:
run os-prober and give the output. Then:

In /usr/libexec/os-probes/mounted/90linux-distro find the following line
if (ls "$dir"/lib*/ld*.so*  && [ -d "$dir/boot" ] || ls "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then

And change it to:
if [ -L "$dir"/lib ] || (ls "$dir"/lib*/ld*.so*  && [ -d "$dir/boot" ] || ls "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then

run os-prober again and see if the output shows recognition of F19.

Comment 13 Erik P. Olsen 2014-04-27 09:18:48 UTC
(In reply to Hedayat Vatankhah from comment #12)
> Well, a new Fedora can see other distributions including older Fedora's
> without usermove feature, but the problem is 'see'ing newer Fedora's. 
> 
> Would you please check if this will fix the problem on your system:
> run os-prober and give the output. Then:
> 
> In /usr/libexec/os-probes/mounted/90linux-distro find the following line
> if (ls "$dir"/lib*/ld*.so*  && [ -d "$dir/boot" ] || ls
> "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then
> 
> And change it to:
> if [ -L "$dir"/lib ] || (ls "$dir"/lib*/ld*.so*  && [ -d "$dir/boot" ] || ls
> "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then
> 
> run os-prober again and see if the output shows recognition of F19.

Right on. It certainly does fix the problem.

Thanks a lot.

Comment 14 Hedayat Vatankhah 2014-04-29 09:16:53 UTC
Thank you :)
So my guess about the problem was correct. However, this is still not the solution. I'll check further to see how it can be properly solved.

Comment 15 Erik P. Olsen 2014-05-02 15:06:31 UTC
(In reply to Hedayat Vatankhah from comment #14)
> Thank you :)
> So my guess about the problem was correct. However, this is still not the
> solution. I'll check further to see how it can be properly solved.

An added comment which may be a little pessimistic. It is true that os-prober finds the other OSes (F19 and F16) when it is executed from the command line. But when I boot F20 only F16 is found. Isn't it os-prober that finds the other OSes when F20 is booted?

Comment 16 Hedayat Vatankhah 2014-05-02 19:04:07 UTC
No, when Fedora is booted no OS is being 'found'. Boot menu comes from grub config file. To generate a new config using the fixed os-prober you should do the following:
grub2-mkconfig -o /boot/grub2/grub.cfg

grub2-mkconfig uses os-prober to found other OSes, and generates the config for them.

Comment 17 Erik P. Olsen 2014-05-05 10:52:26 UTC
(In reply to Hedayat Vatankhah from comment #16)
> No, when Fedora is booted no OS is being 'found'. Boot menu comes from grub
> config file. To generate a new config using the fixed os-prober you should
> do the following:
> grub2-mkconfig -o /boot/grub2/grub.cfg
> 
> grub2-mkconfig uses os-prober to found other OSes, and generates the config
> for them.

OK. Ran grub2-mkconfig and F19 showed up at boot.

Very nice.

Comment 18 Fedora Update System 2014-05-07 07:28:37 UTC
os-prober-1.58-6.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/os-prober-1.58-6.fc20

Comment 19 Fedora Update System 2014-05-07 07:28:54 UTC
os-prober-1.58-6.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/os-prober-1.58-6.fc19

Comment 20 Erik P. Olsen 2014-05-07 22:15:31 UTC
(In reply to Fedora Update System from comment #18)
> os-prober-1.58-6.fc20 has been submitted as an update for Fedora 20.
> https://admin.fedoraproject.org/updates/os-prober-1.58-6.fc20

I am sorry but I can't see that you have made any change to os-prober. The bug is back after installing the update.

Comment 21 Hedayat Vatankhah 2014-05-08 06:08:21 UTC
That's weird. Would you please run:
grep "\-L" /usr/libexec/os-probes/mounted/90linux-distro

and give the output?

Comment 22 Erik P. Olsen 2014-05-08 07:30:40 UTC
(In reply to Hedayat Vatankhah from comment #21)
> That's weird. Would you please run:
> grep "\-L" /usr/libexec/os-probes/mounted/90linux-distro
> 
> and give the output?

[root@epohost ~]# grep "\-L" /usr/libexec/os-probes/mounted/90linux-distro
[root@epohost ~]#

Comment 23 Fedora Update System 2014-05-08 10:09:58 UTC
Package os-prober-1.58-6.fc19:
* should fix your issue,
* was pushed to the Fedora 19 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing os-prober-1.58-6.fc19'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-6117/os-prober-1.58-6.fc19
then log in and leave karma (feedback).

Comment 24 Erik P. Olsen 2014-05-08 11:00:59 UTC
(In reply to Fedora Update System from comment #23)
> Package os-prober-1.58-6.fc19:
> * should fix your issue,
> * was pushed to the Fedora 19 testing repository,
> * should be available at your local mirror within two days.
> Update it with:
> # su -c 'yum update --enablerepo=updates-testing os-prober-1.58-6.fc19'
> as soon as you are able to.
> Please go to the following url:
> https://admin.fedoraproject.org/updates/FEDORA-2014-6117/os-prober-1.58-6.
> fc19
> then log in and leave karma (feedback).

Vil that also work for fc20?

Comment 25 Erik P. Olsen 2014-05-08 12:31:28 UTC
well, changed fc19 with fc20 and ran the update and now the bug was gone (again :-)

Comment 26 Hedayat Vatankhah 2014-05-08 20:47:50 UTC
So the update works fine. I wonder what did you do initially as the update was NOT installed.
Anyway, it would be nice if you leave a karma in the update page.

Comment 27 Erik P. Olsen 2014-05-08 21:24:25 UTC
In comment 18 you announced that os-prober was submitted for update so I ran yum update os-prober but apparently I got the old buggy os-prober.

I would be happy to leave a karma but in my vocabulary karma is something you cannot leave. If you mean feedback isn't that what I've done so far?

Comment 28 Hedayat Vatankhah 2014-05-09 08:48:17 UTC
:)
Looks like that you are not much familiar with Fedora update system. Comment 18(19 and 23) are not from mine, but fedora update system. It says the package is 'submitted' as an update, but it takes some time for it to actually enter updates repo. Comment 23 says that it has entered 'testing' repo. And, it is not yet in Fedora updates repository. 

And about karma, well I'm talking about karma in bodhi vocabulary:
> Please go to the following url:
> https://admin.fedoraproject.org/updates/FEDORA-2014-6117/os-prober-1.58-6.
> fc19
> then log in and leave karma (feedback)
In that URL, you can leave feedback and also mark if the update works fine for you. That mark is called karma (if negative, it is -1 karma and +1 if positive). If the package reaches +3 karma, it'll be pushed to updates repository automatically. If not, I can push the update to updates repository after at least 1 week if I believe that that the update is OK.

Comment 29 Erik P. Olsen 2014-05-10 20:00:04 UTC
Yes, you are right. I am not familiar with the update system. 

I went to the link for leaving the karma, logged in and found no place to leave it. Maybe there is a place but my intuition isn't good enough to find it.

I surely would leave the karma if I could.

Comment 30 Hedayat Vatankhah 2014-05-10 20:38:22 UTC
:) Sorry for not being more clear.
After logging in, you should see "Add a comment >>" at the bottom of the page. When clicked, you can add a comment and select one of these: Untested (no karma), Works for me (+1 karme), Does not work (-1 karma). Even if there is no comment, you should press 'Add Comment" to add the karma.

Comment 31 Fedora Update System 2014-05-17 06:28:24 UTC
os-prober-1.58-6.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 32 Fedora Update System 2014-05-17 06:32:22 UTC
os-prober-1.58-6.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.