Skip to content

Windows installer: USB stick not UEFI-bootable. Wrong partition type / id (0xC instead of 0xEF)? #8

Description

@richardebeling

Initial state of the USB stick:

  • MBR (gparted: Device -> Create Partition Table, Type "msdos")
  • One FAT32 Partition spanning the whole drive (gparted: Partition -> New -> select fat32 -> Apply)

I run the windows installer on this drive with "Check this box if you want to format the Drive" checked. Afterwards, the USB stick does not show up in my UEFI boot device list (mainboard: MSI B550-A PRO on UEFI version 7C56vAE1 from 2023-06-09).

Windows lists the partition on the stick as FAT32 (Active, Primary Partition). fdisk -l shows it as type W95 FAT32 (LBA) with id=c and the boot asterisk set.

If I run fdisk /dev/sdb and change type (t) to ef (-> Changed type of partition '95 FAT (LBA)' to 'EFI (FAT-12/16/32)'), fdisk shows it as such, Windows shows it as Active, EFI System Partition.

Now, it shows up in the UEFI as a bootable drive and I can boot from it.

If I use the .iso file with rufus (3.22), the partition created by rufus has this type (ef).

On memtest86plus/memtest86plus#35, this comment indicated that recoverability of the USB drive after using it for memtest86+ is a concern. After changing the partition type to ef, I can no longer reset the device to a single FAT32 partition on windows as it doesn't allow changing/deleting the EFI System Partition in "Disk Management" (diskmgmt.msc).

Installer log:

Formatting D:
The type of the file system is FAT32.
QuickFormatting 29,8 GB
Initializing the File Allocation Table (FAT)...
Format complete.                         
      29,7 GB total disk space.
      29,7 GB are available.

       16.384 bytes in each allocation unit.
    1.949.247 allocation units available on disk.

           32 bits in each FAT entry.

Volume Serial Number is 006B-B31D
Extract: C:\Users\NAME\AppData\Local\Temp\nst24B.tmp\memtest32.efi
Extract: C:\Users\NAME\AppData\Local\Temp\nst24B.tmp\memtest64.efi
Extract: C:\Users\NAME\AppData\Local\Temp\nst24B.tmp\Readme.txt
Extract: C:\Users\NAME\AppData\Local\Temp\nst24B.tmp\license.txt
Extract: C:\Users\NAME\AppData\Local\Temp\nst24B.tmp\syslinux.exe
Extract: C:\Users\NAME\AppData\Local\Temp\nst24B.tmp\syslinux.cfg
Extract: C:\Users\NAME\AppData\Local\Temp\nst24B.tmp\memtest32.bin
Execute syslinux on D:
Execute: C:\Users\NAME\AppData\Local\Temp\nst24B.tmp\syslinux.exe -maf D:
Return 0
Create syslinux configuration and moving files to D:\
Copy to D:\syslinux.cfg
Copy to D:\mt86plus
Copy to D:\Readme.txt
Copy to D:\license.txt
Copy to D:\efi\boot\bootia32.efi
Copy to D:\efi\boot\bootx64.efi
Installation Done, Your USB Drive should be able to boot on CSM or UEFI 32/64 bits!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions