Windows 7 + Ubuntu dual boot + UEFI BIOS

efimulti-bootUbuntuuefiwindows 7

I received a new Lenovo T420 laptop with Windows 7.

The disk now contains:

  • a hidden SYSTEM_DRV boot partition (1.17GB, 400MB used). I'm guessing this is the UEFI partition; the laptop comes with UEFI instead of a legacy BIOS. This partition is NTFS formatted, and I suppose contains the Windows Boot Manager and other useful boot things (but I'm not certain, so if anyone knows if this can/should be deleted say so)
  • the Windows 7 partition
  • a rescue partition

As I've come to understand, the BIOS is UEFI but MBR is used, not GPT.

This is a follow-up on my previous question about doing the same thing using GPT partitioning – I decided not to go on with that because it's overly complicated at the moment and there are a couple of serious bugs in Ubuntu running around.

How can I install Ubuntu on this machine (using the usual MBR partitioning), and how will that installation affect the Windows installation, taking into consideration the UEFI partition and the boot manager it contains?

If anyone has looked into such issues (related to UEFI) please advise – maybe there's something I don't understand.

UPDATE 1: My guess that this SYSTEM_DRV partition is the UEFI partition may be completely wrong of course, looking into that.. It may be something else, something lenovo-related like the recovery partition.

UPDATE 2: I opened the SYSTEM_DRV partition using a Linux boot cd, and there are several files inside. On the root of the drive there's a file 'sdrive' which has this as content:

"Lenovo Service Partition Version 1.0.0.2009"

There are also boot folders, with a Windows Boot Manager. What's going on?

I'm starting to thing this is a separate Windows installation that boots when you press the ThinkVantage button to do some rescue and recovery operations. I still don't know how this is related to the "Lenovo Recovery" partition (if it is).

Best Answer

Your "hidden" 1GiB partition is a Microsoft System Reserved partition. This is a Poor Man's equivalent to a system partition. It isn't a true system partition, and it isn't an EFI System Partition. The boot manager that it contains is the Microsoft Boot Manager. However it is your system partition. Delete it and your machine will be unbootable.

As described, there's no indication that your laptop actually has EFI anything. It doesn't have an EFI System Partition, doesn't have an EFI partition table, and isn't bootstrapping in the EFI way. From your description, it is bootstrapping in the old PC/AT way, with the Microsoft System Reserved partition as the "startable"/"active" partition, whose VBR invokes Microsoft Boot Manager.

(Checking with the IBM support WWW pages, it turns out that this is indeed the case. Lenovo Thinkpads with Windows 7 are installed with the firmware configured to bootstrap in the old PC/AT way.)

As such, installing Ubuntu is done just as one would do on an old PC/AT compatible machine:

  1. Make a boot volume for Ubuntu, moving and resizing partitions to make room using your favourite tools.
  2. Install Ubuntu, and its boot loader (GRUB2) into that boot volume. Just boot from the installation disc, and point the installation utility when required at the boot volume that you made for Ubuntu.
  3. Add en entry for that boot volume to the Microsoft Boot Manager menu using the bcdedit tool. Cyril Voisin describes one way to do this, that needs to make a copy of the Ubuntu boot volume's Volume Boot Record in a file on your system volume; and so must be done after installing Ubuntu's boot loader.

You don't need to do anything with respect to the Poor Man's system volume. It remains the "startable"/"active" partition throughout. You don't need to do anything with the Master Boot Record, either. Do not (allow Ubuntu to) muck around with the MBR.