[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: