Legacy install on a UEFI box

In a recent post, I mentioned the issue of installing opensuse for legacy booting, even though the installer was booted using UEFI.  I suggested that it was possible.

I have since tested that, and it worked as expected.

Partitioning

In this case, I installed to an external drive, because my internal drives all used GPT partitioning.  And part of the issue was whether I could retain legacy partitioning.

If you want to try this, it is important that you create the partitions you want before you start the installer.  All of the evidence I have seen suggests that if you partition during the install, then the disk will be converted to GPT partitioning.  So partition first, install later.

I used an already partitioned 80G external drive.  It’s really an old IDE hard drive in an external enclosure.  It is partitioned with a 500M “/boot” (formatted “ext2”), and the rest of the disk in an encrypted LVM containing root, home and swap volumes.

Booting the installer

The computer that I used was already configured for secure-boot.  So I left it that way.  I used the opensuse 13.2 64-bit DVD installer, written to a USB.  I inserted that flash drive, powered on the computer, and hit F12 to get the firmware boot menu.  I selected the USB flash drive for booting.  Then, while it was booting, I plugged in the 80G external drive where I wanted to install opensuse.

The installer screen with suggested partitioning soon came up (after I had accepted the license agreement).  I did not accept the suggestions.  Instead, I clicked on “create partitioning”.  Then, on the next screen, I selected “expert mode”.

That gave me a list of partitions.  I selected those that I wanted to use.  And I deselected others that it had preselected.  I set it to reformat “/boot” and the root logical volume.

When I told the installer to accept the partitioning, it complained.  This was expected.  It complained that there was no FAT partition assigned to “/boot/efi”, and it warned that booting would fail.

I clicked the button to continue.  Next were the screens for setting timezone and the user name.  After that, there was a summary screen listing the software, booting, etc.

Boot setup

I clicked on the header for booting.  There, I switched from “grub2-efi” to plain “grub2”.  I set it to install to the MBR of the external drive.

I then proceeded with the install.  It went smoothly.

Rebooting

Now came the important test.  Could I boot the newly installed system.  Well, of course, that would not have worked because the computer was set for secure-boot.  So I went into the BIOS settings, and disabled secure-boot.  Then I made sure that legacy booting support (CSM or compatibility support module) was enabled.

Then I booted, and hit F12 to get the firmware boot menu.  I selected the 80G external drive.  And it booted up nicely.

My conclusion:  even if you boot the installer in UEFI mode, it is possible to install for legacy booting.  You do need a little knowledge to get it right.  The main steps are to partition before you boot the installer, and to switch to non-EFI booting (grub2 rather than grub2-efi) for the install.

Advertisements

Tags: ,

About Neil Rickert

Retired mathematician and computer scientist who dabbles in cognitive science.

2 responses to “Legacy install on a UEFI box”

  1. Swetha Shekar says :

    Hi,
    I need your help in clearing mt doubt.
    I have installed SLES 11 SP4 on my machine where boot mode is UEFI. When i change the boot mode to Legacy mode the OS fails to boot. Is this expected??

    Regards,
    Swetha

    Like

    • Neil Rickert says :

      Yes, that’s expected. The early stages of booting are different for the two.

      If you really need this, you can switch to using “grub2” for booting. But there are many traps and pitfalls, so ask if you want some directions on how to do this.

      Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: