Dual boot: Windows 8 + Ubuntu 14.04

Updated: May 19, 2014

Listen very carefully. What I'm going to do today is nothing short of awesome. I am going to show you how to install Ubuntu 14.04 alongside Windows 8.1 in a side-by-side setup, professionally known as dual boot. But that, on its own, is not that special.

What really matters is that I have the following setup. An Asus VivoBook, an Ultrabook, with Windows 8.X preinstalled, including the vendor's complex scheme of recovery and hidden partitions. The machine comes with a GPT partition table, UEFI and Secure Boot, so it's all one can possibly dread. And despite all that, we will install the two together. You won't find a better guide across the entire Internet. After me.


1. Some preliminary reading (kind of must)

In order to master this guide in the best way possible, please consider reading some of my earlier works. We're talking extensive, step-by-step guides that you should really give you knowledge and confidence needed for this kind of work. Specifically:

GRUB 2 menu

2. Install Windows 8 (any version)

This applies to Windows 8, Windows 8.1 or higher. It's all the same. Now, if you have a preinstalled system, skip this step. If you're installing from scratch, then please take a look at my guide explaining how to do this. I've written it less than a month ago.

Install now

3. Boot into Ubuntu live session

This is what we need to do right now. We will perform a nice dual-boot installation, specifically with Windows 8.X, on this laptop. Yes, you have seen me install Ubuntu many times before, and less than a month back, I've written a new step-by-step tutorial that explains the installation process for Ubuntu 14.04. But not with Windows 8 specifically, and never with UEFI + Secure Boot + GPT. This makes it a unique, new experiment.

In my case, Ubuntu Trusty Tahr boots just fine on the Asus VivoBook. However, earlier versions failed to boot! This time, it's flawless. While you're reading about my experience, here's a good opportunity for you to get a good first impression of the latest Ubuntu release. Overall, I was quite pleased, and this is a great operating system.

Live desktop

4. Examine hardware setup

Let's take a closer look at our Asus Ultrabook. To this end, let's open the Gparted partitioning software and check the partition table on our hard disk.

Gparted, large view

Gparted, zoomed

So what do we have here?

At this point, you should be familiar with the Linux disk and filesystem notations. If not, go back up, read the homework, then come back to this step. This is important, because this is a REAL system, it has Windows 8.1 and data on it, and you do not want to botch it.

We have /dev/sda1, which is a 265MB boot partition, FAT32. This is actually the EFI partition, which contains the boot loader programs for installed operating systems that support UEFI.

We have /dev/sda2, which is 585MB in size, and it is a hidden, recovery partition.

We have a small /dev/sda3 partition, which GParted cannot read. It should not worry us, because we will not be touching it. If you ask me what it is, honestly, I do not know what setup the Asus engineers went for. You see, real-life problems!

The interesting partition is /dev/sda4. It is 450GB in size, it has 30GB in use, it is the actual Windows 8 partition, and this translates into Windows C: drive and all that. We will need this partition for later.

The last two, /dev/sda5 and /dev/sda6 are still more hidden partitions, created by Asus. One of them is even labeled Restore, and it is 20GB in size, so it most likely contains the factory image for the operating system.

Furthermore, our system has a few more unique features:

It comes with UEFI instead of plain BIOS.

It has Secure Boot enabled by default - but Ubuntu boots with or without it. And yes, you can turn it on or off in the UEFI interface. The Asus engineers have left their UEFI fully usable to the customer.

The partition table is GPT, not plain old MS-DOS scheme. I have never shown you before how to work with GPT, and now we are here, using the same tools we always have. Sounds scary, but it is fine. GPT is fully backward compatible with the legacy systems, and therefore, from the user's perspective, working with GParted or GRUB is the same.

What are we going to do?

We will resize the 450GB NTFS partition /dev/sda4, labeled OS. We will shrink it by 100GB. In the free space, we will create three new partitions. There will not be any limit on how many partitions we can create, because GPT does not have the four primary partitions limit like the MS-DOS partition tables.

The three partitions will be used for the root (/), swap and home (/home) for our Ubuntu 14.04 Trusty Tahr installation. The installation will be identical in all aspects to what I have shown you in the recent guide, and hundreds of other multi-boot reviews. The big difference is handling the hard disk scheme. This is what we are doing here.

4. Change disk and partition layout

Now, let's do all these critical operations. Remember, early reading, confidence, data backup. If you have imaged your Windows 8.1, and your personal stuff has been copied to a different disk, there is nothing to worry about.

Remember: In GParted, nothing will happen until you Apply the changes. So you can safely resize, move, create or delete partitions. If you do not like the setup, exit, start fresh.

Resize Windows 8 partition

Mark /dev/sda4. Then, right-click, Resize. Shrink it by a desired value. In our case, we will go for 100GB less. You can try any value you see fit. Just remember Linux can read Windows data, so there's no need for too much space.

Resize partition

Free space

Now, look at the GParted interface. We have 100GB unallocated free space right after /dev/sda4, which is the OS partition. The GParted log reads: Shrink /dev/sda4 from 444GB to 340GB. But this has not been done yet. This is one operation pending.

Resize plan

Create new partitions

In the free space, now, create a new partition for the root (/). Mark the free space, right-click, create new. Let's say 25GB. It is going to be a primary partition, all other options will be grayed out, EXT4 filesystem.

Create new root

Repeat the procedure. Create the swap and /home partitions. Take a look at the interface now. We have four pending operations. Shrink and three create lines, with their respective sizes. Our swap is 4GB, and our /home about 73GB.

New layout

Apply changes

GParted will warn you now. And then do its magic. In my case, this took one minute.


GParted working

GParted success

Examine new layout

And here we are, all is well:

New layout, ready

5. Continue with the installation

Now, you can actually launch the Ubuntu installer and do the regular install, as I have taught you many times before. We will be using /dev/sda7 for root (/), /dev/sda8 as our swap, and we will go with /dev/sda9 as the home (/home) partition. Very simple.

Begin install


Notice that Ubuntu does not see any operating system on the disk. Let this not fool you. The installer simply does not know how to handle all the partitions. We will have to do a manual job here. Select Something else here.

Custom partitioning

Final layout

And here's our final layout, just as we have outline earlier. We have /dev/sda7 with the mount point set as root (/), we have /dev/sda8 as swap, and /dev/sda9 will be mounted as /home. Because we have just created the partitions, the formatting is optional.

Bootloader setup

This is important. We do want the bootloader to be installed to /dev/sda. In layman's terms, this is the would-be MBR. With GPT, for all practical purposes, it is the same thing. Once you're ready, hit Install now.

6. Let the installation finish

Wait a few minutes for the Ubuntu 14.04 installation wizard to complete.

Almost done

7. Boot into Ubuntu

Reboot. If all went well, you should see the GRUB2 menu. Select Ubuntu, and then let the system boot. You can now check everything. And there we are. This is our Vivobook, as you can see from the system info. And we have GParted, showing us the partition layout. There's even a little lock symbol near several of the partitions, telling us that they are effectively mounted and in use.

Dual-boot setup complete

Furthermore, we can also see that /dev/sda1, the boot partition from earlier is in fact mounted as /boot/efi, as it should be with UEFI-supported systems. EFI partitions contain the loader images and drivers, required for operating systems that support UEFI. GRUB2 fully does that, and so does Ubuntu.

But even if our Ubuntu and GRUB2 did not fully support EFI, it's fine. UEFI does offer legacy BIOS mode boot, and it does reserve the first sector for backward compatibility, so that older systems can use their old scheme to boot. We're covered here, in this regard. Looking in the file explorer, we can see all our devices there. Good.

File exploring showing dual boot partitions

8. Boot into Windows

Now, the more interesting part. Does everything work well with Windows 8? Yes it does. No problem. In the dual-boot tutorial for Windows 7 and Ubuntu, I showed you where you might see a filesystem problem that requires a checkdisk operation. No issues here. But you should be aware of the possibility that something might go wrong, so you should be aware of how to attempt to recover Windows, as well as use the Safe Mode, when available.

Looking in the Disk Management console, we can see the new layout, the partitions and their sizes. Windows 8 cannot mount the EXT4-formatted partitions, but the system can see them.

Disk management, windows

So it's all there. The 25GB root, and the 4GB swap, and the 73GB home. Our Windows 8 boots without any issues. And we have the full dual-boot setup configured without any problems. Despite the complexity, despite UEFI, despite Secure Boot, and despite GPT. Congratulations!


There you go, another ultra-detailed, awesome and fool-proof tutorial from Dedoimedo forges, unlike any you will find elsewhere on the Web. I give you Asus VivoBook, an Ultrabook preinstalled with Windows 8, later upgraded to Windows 8.1, safely and successfully dual-booting with Ubuntu 14.04 Trusty Tahr, complete with the rather dreaded and difficult factory setup. But it all works well, and now that you're here, it's no longer so frightening.

Hopefully, this guide has taught you everything you need to know. How to install Windows 8, how to install Ubuntu 14.04, how to install these together, how to change the disk and partition layout on a GPT disk, how to setup the bootloader, and many other useful tricks. Plus we worked around UEFI and Secure Boot. All is well. You can now truly enjoy your new machine.

P.S. If you truly find this article useful, please consider supporting Dedoimedo.