https://bugzilla.novell.com/show_bug.cgi?id=767272 https://bugzilla.novell.com/show_bug.cgi?id=767272#c0 Summary: Missing boot entries for other distros. Classification: openSUSE Product: openSUSE 12.2 Version: Milestone 3 Platform: All OS/Version: openSUSE 12.2 Status: NEW Severity: Normal Priority: P5 - None Component: Bootloader AssignedTo: jsrain@suse.com ReportedBy: hippolyte@shaw.ca QAContact: jsrain@suse.com Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20100101 Firefox/12.0 Sometimes os-prober fails to mount a partition, often Ubuntu root partition but not always. As a consequence it cannot read the the Grub menu and add a boot entry. It happens randomly but regularly with different os-prober versions, on different distros and different machines. This bug is NOT the same as the one decribed here https://bugzilla.novell.com/show_bug.cgi?id=759635 which affects only ufs2 partitions (solved in version 1.5.3 in my repo). Reproducible: Sometimes Steps to Reproduce: Boot openSUSE and run os-prober. If all systems are detected, reboot another OS, such as Ubuntu, (so its root partition will be mounted), then reboot openSUSE and run os-prober again. It may take several tries before it fails. Once it fails, running os-prober multiple times will consistently fail to access the other OS, thinking it needs a file system check. Actual Results: # OSPDEBUG=yes os-prober No volume groups found /dev/sda1:Windows NT/2000/XP (loader):Windows:chain /dev/sda13:Fedora release 16 (Verne):Fedora:linux /dev/sda15:Debian GNU/Linux (squeeze/sid):Debian:linux /dev/sda3:FreeBSD:FreeBSD 8.1-RELEASE:freebsd mount: wrong fs type, bad option, bad superblock on /dev/sda6, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so /dev/sdb1:Windows NT/2000/XP (loader):Windows1:chain /dev/sdc1:Windows NT/2000/XP (loader):Windows2:chain /dev/sdc6:Gentoo Base System release 1.12.13:Gentoo:linux Expected Results: # OSPDEBUG=yes os-prober No volume groups found /dev/sda1:Windows NT/2000/XP (loader):Windows:chain /dev/sda13:Fedora release 16 (Verne):Fedora:linux /dev/sda15:Debian GNU/Linux (squeeze/sid):Debian:linux /dev/sda3:FreeBSD:FreeBSD 8.1-RELEASE:freebsd /dev/sda6:Ubuntu 11.10 (11.10):Ubuntu:linux /dev/sdb1:Windows NT/2000/XP (loader):Windows1:chain /dev/sdc1:Windows NT/2000/XP (loader):Windows2:chain /dev/sdc6:Gentoo Base System release 1.12.13:Gentoo:linux OSPDEBUG is a flag I added to prevent redirecting standard error and see what happened. Mount failures can be seen in /var/log/messages: Jun 15 05:00:35 bareil os-prober: debug: running /usr/lib/os-probes/50mounted-tests on /dev/sda6 Jun 15 05:00:35 bareil kernel: [36610.164065] EXT4-fs (sda6): INFO: recovery required on readonly filesystem Jun 15 05:00:35 bareil kernel: [36610.164069] EXT4-fs (sda6): write access unavailable, cannot proceed It seems that this partition would need a file system check (however it is not the case), which can not proceed because it is mounted read only. This is due to a call to the function ro_partition, defined in /usr/share/os-prober/common.sh: ro_partition () { if type blockdev >/dev/null 2>&1 && \ [ "$(blockdev --getro "$1")" = 0 ] && \ blockdev --setro "$1"; then cleanup_ro_partitions="${cleanup_ro_partitions:+$cleanup_ro_partitions }$1" trap cleanup EXIT HUP INT QUIT TERM fi } It explicitely sets the partition read only (blockdev --setro). Commenting out this function call in /usr/lib/os-probes/50mounted-tests solves the problem but I'm not sure how safe it is, because all partitions will be accessed read-write in this case (I guess). # ro_partition "$partition" Now sda6 can be mounted, grub.cfg can be read and the boot entry will be added (see expected results above). Next, you could uncomment ro_partition in /usr/lib/os-probes/50mounted-tests, and os-prober would mount it this time. Once a partition has been already mounted, os-prober has no problem to mount it again. Therefore a safer workaround would be to mount the failing partition manually until this bug has been fixed. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.