SUSE Support

Here When You Need Us

UEFI fails to detect boot disk

This document (7023923) is provided subject to the disclaimer at the end of this document.

Environment

SUSE Linux Enterprise Server 12
SUSE Linux Enterprise Server 15

Situation

UEFI system is not able to detect boot disk. However, using SLES DVD "Boot Linux System" detect existing installed SLES OS and boot it from hard disk successfully. 

The disk with the /boot/efi device shows:
efi12sp3:~ # parted -s /dev/vda print
...
Partition Table: gpt
Disk Flags: pmbr_boot
...

Resolution

To fix this problem: 
  • Check the boot disk is not corrupted
  • Remove pmbr_boot label in case it is set
To check second point boot from SLES DVD and select “Rescue Mode”. Use parted command remove the pmbr_boot disk flag.

1. Identify the boot device with mount point /boot/efi
efi12sp3:~ # lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0     11:0    1  3.6G  0 rom 
vda    253:0    0   20G  0 disk
├─vda1 253:1    0  156M  0 part /boot/efi <==================
├─vda2 253:2    0  1.5G  0 part [SWAP]
└─vda3 253:3    0 18.4G  0 part /var/lib/mysql
2. Print the partition table
efi12sp3:~ # parted -s /dev/vda print
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: pmbr_boot <================================

Number  Start   End     Size    File system     Name     Flags
 1      1049kB  165MB   164MB   fat16           primary  boot
 2      165MB   1727MB  1562MB  linux-swap(v1)  primary
 3      1727MB  21.5GB  19.7GB  btrfs           primary
3. Remove the pmbr_boot disk flag.
efi12sp3:~ # parted -s /dev/vda disk_set pmbr_boot off
4. Confirm the pmbr_boot disk flag has been removed.
efi12sp3:~ # parted -s /dev/vda print
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: <================================

Number  Start   End     Size    File system     Name     Flags
 1      1049kB  165MB   164MB   fat16           primary  boot
 2      165MB   1727MB  1562MB  linux-swap(v1)  primary
 3      1727MB  21.5GB  19.7GB  btrfs           primary
5. Reboot to test.

Cause

One cause includes having the pmbr_boot disk flag set. It enables the boot flag on the GPT’s protective MBR partition. The pmbr_boot flag is needed for old BIOS computers to boot from GPT disks.

Additional Information

Some servers support both Legacy boot and UEFI boot. In case OS installation was done in Legacy mode, pmbr_boot is set on. In case OS installation was done in UEFI mode, pmbr_boot is set off. If the disk was moved from server to server where old server is Legacy boot and new server UEFI ; the server will not be able to boot from hard disk. 

Using old YaST bootloader to switch between GRUB2 and GRUB2 for EFI might cause such issue where YaST doesn’t remove pmbr_boot flags ; make sure yast2-bootloader-3.3.1-3.3.1 and newer is being used. 

In a GPT, the first sector of the disk is reserved for a "protective MBR" such that booting a BIOS-based computer from a GPT disk is supported, but the boot loader and O/S must both be GPT-aware.

Disclaimer

This Support Knowledgebase provides a valuable tool for SUSE customers and parties interested in our products and solutions to acquire information, ideas and learn from one another. Materials are provided for informational, personal or non-commercial use within your organization and are presented "AS IS" WITHOUT WARRANTY OF ANY KIND.

  • Document ID:7023923
  • Creation Date: 10-Jun-2019
  • Modified Date:03-Mar-2020
    • SUSE Linux Enterprise Server

< Back to Support Search

For questions or concerns with the SUSE Knowledgebase please contact: tidfeedback[at]suse.com

tick icon

SUSE Support Forums

Get your questions answered by experienced Sys Ops or interact with other SUSE community experts.

tick icon

Support Resources

Learn how to get the most from the technical support you receive with your SUSE Subscription, Premium Support, Academic Program, or Partner Program.

tick icon

Open an Incident

Open an incident with SUSE Technical Support, manage your subscriptions, download patches, or manage user access.