Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#1013203: os-prober: Dual boot Windows 10 grub-probe error unknown filesystem

611 views
Skip to first unread message

Steven Zalek

unread,
Jun 18, 2022, 6:50:03 PM6/18/22
to
Package: os-prober
Version: 1.80
Severity: normal
X-Debbugs-Cc: zalek....@gmail.com

Dear Maintainer,

What led to the situation:
Debian Testing new linux kernel 5.18.0-1 and updated grub 2.06-3 installed via
apt package manager; the new linux kernel installation prompted the update-grub
function to run.

By default this new version of grub does not run the the os-prober package,
hence, the Windows 10 partition was not detected and was eliminated from the
grub.cfg list of bootable partitions.

What I did that was effective/ineffective (part 1):
- Added 'GRUB_DISABLE_OS_PROBER=false' to /etc/default/grub and ran 'sudo
update-grub', forcing os-prober/grub to search for Windows partition
- this resulted in the Windows 10 partition on this computer (box0) to be
recognized, but with errors >>
[incidentally, this exact procedure worked perfectly on my dual-boot Debian
Testing/Windows 10 laptop - no errors]

terminal output >>
---------------------------------------------------------------------------------------
zaleksf@box0:~$ sudo update-grub
[sudo] password for zaleksf:
Generating grub configuration file ...
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Found linux image: /boot/vmlinuz-5.18.0-1-amd64
Found initrd image: /boot/initrd.img-5.18.0-1-amd64
Found linux image: /boot/vmlinuz-5.17.0-1-amd64
Found initrd image: /boot/initrd.img-5.17.0-1-amd64
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot
entries.
/usr/sbin/grub-probe: error: unknown filesystem.
Found Windows Boot Manager on /dev/sda1@/EFI/Microsoft/Boot/bootmgfw.efi
/usr/sbin/grub-probe: error: unknown filesystem.
Adding boot menu entry for UEFI Firmware Settings ...
done
---------------------------------------------------------------------------------------

Outcome:
Upon rebooting and seeing the main grub list screen, there were the usual
entries for booting to Debian, Windows, etc. However, upon selecting the
Windows boot entry, I received an error indicating
'/EFI/Microsoft/Boot/bootmgfw.efi does not exist'

This was false, as I could find this file from both the Debian OS and Windows
OS file manager, and I could boot directly into Windows 10 from the BIOS using
the 'Enter/F12' key combination to bring up a list of boot partition choices
(which did show both Debian and Windows as options).

I investigated grub.cfg file and found that the 30_os-prober section for
Windows to be significantly truncated from its usual entry (and other Linux
kernel entries) >>

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows Boot Manager (on /dev/sda1)' --class windows --class os
$menuentry_id_option 'osprober-efi-/dev/sda1' {
insmod part_gpt
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
### END /etc/grub.d/30_os-prober ###

What I did that was effective/ineffective (part 2):
Since my laptop (box1) also is dual-boot Debian Testing/Windows 10 with a
virtually identical set-up, I tried an experiment of copying its complete (and
functioning) 30_os-prober section to grub.cfg on this misbehaving desktop
system (box0). I tweaked this section (using logic) to point to the proper
Windows partition, etc. (since I really have no experience with grub at all).
Manually changed section 30_os-prober to this >>

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows Boot Manager (on /dev/sda1)' --class windows --class os
$menuentry_id_option 'osprober-efi-/dev/sda1' {
insmod part_gpt
insmod fat
set root='hd0,gpt1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-
efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1 82CB-1126
else
search --no-floppy --fs-uuid --set=root 54C7-5867
fi
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
### END /etc/grub.d/30_os-prober ###

Saved grub.cfg, rebooted machine and selected Windows entry from grub.

Outcome:

Can boot into the Windows 10 partition perfectly, just as before. All grub list
entries work correctly.

If I run 'update-grub' again, the grub-probe error is indicated in the
terminal, and the truncated/broken section 30_os-prober returns to
/boot/grub/grub.cfg

My machine (and Windows and Debian) works just fine. This machine has been
dual-boot Debian Testing/Windows 10 for the last 5 years and has never
experienced this issue before this version of grub/os-prober was introduced.

My recommendation is to look into why the os-prober successfully recognizes a
dual-boot Windows partition for some machines and not others. Please let me
know if I can send additional files to support troubleshooting and/or
development.

Best regards, SZ


-- System Information:
Debian Release: bookworm/sid
APT prefers testing
APT policy: (800, 'testing'), (500, 'unstable'), (200, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.18.0-1-amd64 (SMP w/16 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages os-prober depends on:
ii grub-common 2.06-3
ii libc6 2.33-7
ii mount 2.38-4

os-prober recommends no packages.

os-prober suggests no packages.

-- no debconf information

waltermd

unread,
Jan 8, 2023, 12:00:04 PM1/8/23
to
Package: os-prober
Version: 1.79
Severity: normal
X-Debbugs-Cc: zalek....@gmail.com

Dear Maintainer, Mr. Zalek,
I would report the same issue on my laptop

Manufacturer: Dell Inc.
model: Inspiron 14 5410 2-in-1
BIOS vers.: 2.9.0

Linux nomehost 5.10.0-20-amd64 #1 SMP Debian 5.10.158-2 (2022-12-13) x86_64 GNU/Linux

/etc/debian_version 11.6

The issue happened after an update to latest Debian release.
the dual boot is with Windows 11

here the output of the comand update-grub

utente@PCxxxx:~$ sudo update-grub
[sudo] password di utente:
Generating grub configuration file ...
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Found linux image: /boot/vmlinuz-5.10.0-20-amd64
Found initrd image: /boot/initrd.img-5.10.0-20-amd64
Found linux image: /boot/vmlinuz-5.10.0-10-amd64
Found initrd image: /boot/initrd.img-5.10.0-10-amd64
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
/usr/sbin/grub-probe: errore: file system sconosciuto.
Found Windows Boot Manager on /dev/nvme0n1p1@/EFI/Microsoft/Boot/bootmgfw.efi
/usr/sbin/grub-probe: errore: file system sconosciuto.
Adding boot menu entry for UEFI Firmware Settings ...
done

I solved the problem in the same way as Mr. Zalek modifying manually the file /boot/grub/grub.cfg

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows Boot Manager (on /dev/nvme0n1p1)' --class windows --class os $menuentry_id_option 'osprober-efi-/dev/nvme0n1p1' {
insmod part_gpt
insmod fat
set root='hd0,gpt1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=nvme0n1,gpt1 --hint-baremetal=ahci0,gpt1 C4E0-C8D8
else
search --no-floppy --fs-uuid --set=root C4E0-C8D8
fi
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
### END /etc/grub.d/30_os-prober ###

here the outpu of the comand os-prober

xxxx@xxx:~$ sudo os-prober
/dev/nvme0n1p1@/EFI/Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows:efi

and the related section from messages log

Dec 30 17:53:42 PC os-prober: debug: running /usr/lib/os-probes/mounted/05efi on mounted /dev/nvme0n1p1
Dec 30 17:53:42 PC 05efi: debug: /dev/nvme0n1p1 is a FAT32 partition
Dec 30 17:53:42 PC 05efi: debug: /dev/nvme0n1p1 partition scheme is gpt
Dec 30 17:53:42 PC 05efi: debug: /dev/nvme0n1p1 partition type is c12a7328-f81f-11d2-ba4b-00a0c93ec93b
Dec 30 17:53:42 PC 05efi: debug: running subtest /usr/lib/os-probes/mounted/efi/10elilo
Dec 30 17:53:42 PC 05efi: debug: running subtest /usr/lib/os-probes/mounted/efi/20microsoft
Dec 30 17:53:42 PC 20microsoft: result: Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows
Dec 30 17:53:42 PC 05efi: debug: bootloader Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows found by subtest /usr/lib/os-probes/mounted/efi/20microsoft
Dec 30 17:53:42 PC 05efi: result: /dev/nvme0n1p1@/EFI/Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows:efi
Dec 30 17:53:42 PC os-prober: debug: os detected by /usr/lib/os-probes/mounted/05efi
Dec 30 17:53:42 PC os-prober: debug: running /usr/lib/os-probes/50mounted-tests on /dev/nvme0n1p2
Dec 30 17:53:42 PC 50mounted-tests: debug: /dev/nvme0n1p2 type not recognised; skipping
Dec 30 17:53:42 PC os-prober: debug: os detected by /usr/lib/os-probes/50mounted-tests
Dec 30 17:53:42 PC os-prober: debug: running /usr/lib/os-probes/50mounted-tests on /dev/nvme0n1p3
Dec 30 17:53:42 PC os-prober: debug: running /usr/lib/os-probes/50mounted-tests on /dev/nvme0n1p4
Dec 30 17:53:42 PC kernel: [ 403.532431] device-mapper: uevent: version 1.0.3
Dec 30 17:53:42 PC kernel: [ 403.532516] device-mapper: ioctl: 4.43.0-ioctl (2020-10-01) initialised: dm-d...@redhat.com
Dec 30 17:53:42 PC 50mounted-tests: debug: mounted using GRUB ntfs filesystem driver
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/05efi
Dec 30 17:53:42 PC 05efi: debug: /dev/nvme0n1p4 is ntfs partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/10freedos
Dec 30 17:53:42 PC 10freedos: debug: /dev/nvme0n1p4 is not a FAT partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/10qnx
Dec 30 17:53:42 PC 10qnx: debug: /dev/nvme0n1p4 is not a QNX4 partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/20macosx
Dec 30 17:53:42 PC macosx-prober: debug: /dev/nvme0n1p4 is not an HFS+ partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/20microsoft
Dec 30 17:53:42 PC 20microsoft: debug: Skipping legacy bootloaders on UEFI system
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/30utility
Dec 30 17:53:42 PC 30utility: debug: /dev/nvme0n1p4 is not a FAT partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/40lsb
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/70hurd
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/80minix
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/83haiku
Dec 30 17:53:42 PC 83haiku: debug: /dev/nvme0n1p4 is not a BeFS partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/90linux-distro
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/90solaris
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/efi
Dec 30 17:53:42 PC os-prober: debug: running /usr/lib/os-probes/50mounted-tests on /dev/nvme0n1p5
Dec 30 17:53:42 PC 50mounted-tests: debug: mounted using GRUB ntfs filesystem driver
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/05efi
Dec 30 17:53:42 PC 05efi: debug: /dev/nvme0n1p5 is ntfs partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/10freedos
Dec 30 17:53:42 PC 10freedos: debug: /dev/nvme0n1p5 is not a FAT partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/10qnx
Dec 30 17:53:42 PC 10qnx: debug: /dev/nvme0n1p5 is not a QNX4 partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/20macosx
Dec 30 17:53:42 PC macosx-prober: debug: /dev/nvme0n1p5 is not an HFS+ partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/20microsoft
Dec 30 17:53:42 PC 20microsoft: debug: Skipping legacy bootloaders on UEFI system
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/30utility
Dec 30 17:53:42 PC 30utility: debug: /dev/nvme0n1p5 is not a FAT partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/40lsb
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/70hurd
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/80minix
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/83haiku
Dec 30 17:53:42 PC 83haiku: debug: /dev/nvme0n1p5 is not a BeFS partition: exiting
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/90linux-distro
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/90solaris
Dec 30 17:53:42 PC 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/efi
Dec 30 17:53:42 PC os-prober: debug: /dev/nvme0n1p7: is active swap
Dec 30 17:54:15 PC gnome-shell[1421]: Couldn't find child [0x55f247572000 Gjs_ui_windowPreview_WindowPreview ("gedit")] in window slots
Dec 30 17:54:15 PC gnome-shell[1421]: Couldn't find child [0x55f247572000 Gjs_ui_windowPreview_WindowPreview:last-child ("gedit")] in window slots
Dec 30 17:54:31 PC tracker-extract[3223]: Set scheduler policy to SCHED_IDLE
Dec 30 17:54:31 PC tracker-extract[3223]: Setting priority nice level to 19

Since the output of os-prober and the messages log I suggest to extend the bug to the package grub-common because os-prober seems working well but update-grub doesn't
update the configuration file grub.cfg rightly
I'm at your disposal for any fhurther information was needed

kind Regards

Walter Medda
0 new messages