Bug#817023: os-prober doesn't detect EFI partition on MBR
Package: os-prober
Version: 1.71
Also reproducible in os-prober 1.65
https://anonscm.debian.org/cgit/d-i/os-prober.git/tree/os-probes/mounted/x86/05efi#n42..n45
Disk has regular MBR table. It has Windows 7 and Ubuntu installed on
different partitions. Os-prober doesn't detect EFI partition on MBR
table because "udevadm info" returns "dos" partition scheme instead of
expected "msdos".
$ udevadm info /dev/sda1 | grep dos
E: ID_PART_ENTRY_SCHEME=dos
E: ID_PART_TABLE_TYPE=dos
$ fdisk -lu /dev/sda | grep -B1 -A1 ef
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 616447 307200 ef EFI (FAT-12/16/32)
/dev/sda2 616448 128134439 63758996 7 HPFS/NTFS/exFAT
Fixing conditions below resolves the issue:
- \( "$ID_PART_ENTRY_SCHEME" != gpt -a "$ID_PART_ENTRY_SCHEME" != msdos \) -o \
+ \( "$ID_PART_ENTRY_SCHEME" != gpt -a "$ID_PART_ENTRY_SCHEME" != dos \) -o \
\( "$ID_PART_ENTRY_SCHEME" = gpt -a "$ID_PART_ENTRY_TYPE" !=
c12a7328-f81f-11d2-ba4b-00a0c93ec93b \) -o \
- \( "$ID_PART_ENTRY_SCHEME" = msdos -a "$ID_PART_ENTRY_TYPE" != 0xef \) ]; then
+ \( "$ID_PART_ENTRY_SCHEME" = dos -a "$ID_PART_ENTRY_TYPE" != 0xef \) ]; then
Probably this bug relates to udevinfo replacement
(https://lists.debian.org/debian-user/2010/07/msg01134.html).
P.S. Cross-posting report in ubuntu launchpad
https://bugs.launchpad.net/ubuntu/+source/os-prober/+bug/1553678
Reply to: