The Intel Compute Stick is a tiny computer that lets you run desktop apps on a TV when you plug the stick into an HDMI port. Intel offers Windows and Ubuntu Linux versions of the Compute Stick: but the operating system isn’t the only thing that makes one model different from the other.
If you buy the Intel Compute Stick with Windows, you get a model with 2GB of RAM and 32GB of storage. The Ubuntu model has just 1GB of RAM and 8GB of built-in storage.
The good news is that the Ubuntu model sells for about $50 less than the Windows model. The bad news is that there’s so little built-in storage space that as soon as you turn on the computer you’ll note that there’s less than 1GB of free space for files and apps.
So can you install Ubuntu on the Windows model?
Yep. And now it’s easier than ever.
When I first reviewed the Intel Compute Stick, I noted that you could install Ubuntu yourself… but WiFi and Bluetooth wouldn’t work properly.
As Intel prepared to release the Ubuntu model of the Compute Stick, I asked the company if there were any plans to release a downloadable version of Ubuntu that would let users install the operating system on their own.
The answer? Nope… but you could sort of build your own software by downloading the software from Ubuntu.com, getting the latest Intel graphics drivers, and then writing to Realtek to ask for wireless drivers.
I don’t know anyone that has actually managed to get a response from Realtek though.
Enter Ian Morrison. For the past few years, he’s been working on porting Ubuntu to run on a variety of mini PCs and a little while ago he enlisted my help in testing various builds for the Intel Compute Stick.
Recently Liliputing published an article explaining how to download Morrison’s build of Ubuntu 14.10 and install it on a Compute Stick and then jump through some hoops to get wireless connections and audio to work properly. But to be honest, it was a bit complicated.
Then something funny happened: while Intel had announced that the Compute Stick with Ubuntu would launch in mid-July, it has yet to go on sale in the United States. But Morrison found one in Australia.
After examining the software running on the 1GB/8GB Compute Stick, he figured out how to get Ubuntu 14.04 LTS 64-bit to run on the 2GB/32GB model.
Best of all, you don’t need to jump through any extra hoops to modify the bootloader. You can boot his build of Ubuntu 14.04 from a USB flash drive to try the software before installing it. And if you’re happy with what you see, just click the Install Ubuntu icon on the desktop and follow the instructions to either install the operating system.
You can overwrite Windows if you’d like, or repartition the built-in storage to leave Windows in place and create a setup with both operating systems on the same storage . You can even install Ubuntu to a microSD card if you don’t want to touch the built-in storage (although you will need to write the bootloader to built-in storage).
Keep in mind, this setup will not create a dual-boot system. Since Windows only boots with a 32-bit bootloader and you’re installing a 64-bit version of Ubuntu and a 64-bit bootloader, the only way to switch between Ubuntu and Windows is to delete the ubuntu bootloader as described below (which should automatically restore the Windows bootloader), and change the operating system type from Ubuntu 64-bit to Windows 32-bit in the UEFI settings.
You could also follow our guide for installing Ubuntu 14.10 64-bit with a 32-bit bootloader to create a true dual-boot setup. But if you don’t care about running Windows, the steps below should be simpler and quicker to follow.
Also note that Intel doesn’t officially support installing Ubuntu on the Windows model. This mean you may void your warranty if you break anything… and Ian’s disk image isn’t exactly the same as the software that runs on the Ubuntu model. Instead, he’s compiled a build of Ubuntu based on Canonical’s open source software and software that Canonical and Intel have worked on together.
Note that while these instructions worked for Ian and for me, there’s no guarantee that they’ll work for you, and just like Intel, we take no responsibility if something goes wrong.
Update: There are also now several other methods for installing Ubuntu. The simplest involves downloading Ian Morrison’s “unofficial official” Ubuntu 14.04 disc image, writing it to a USB flash drive, and using that to install the operating system.
The other method would be to install Ubuntu using the official Ubuntu 14.04 ISO and then apply Ian Morrison’s patch script.
There’s also a script that simplifies the process of booting Ubuntu 14.04 64-bit from a 32-bit bootloader.
Unlike the method outlined below, this will result in the GRUB bootloader hiding the Windows boot option altogether.
But the good news is that the “unofficial official” Ubuntu ROM includes software packages from Canonical, which means that they’re officially supported and don’t rely on a custom kernel.
This means that you can upgrade the kernel without losing access to the software that allows the WiFi, Bluetooth, and audio to work properly.
How to Boot Ubuntu 14.04 from a liveUSB
1. Download Ian Morrison’s ISO disk image or his unofficial “official” build for Ubuntu 14.04.2 LTS (Update: Or you can grab a newer build based on Ubuntu 14.04.3 LTS). Either will work, but the latter doesn’t have a modified kernel, which makes it easier for users to update the kernel themselves.
2. If you’re using Linux, use the “dd” command to transfer the disc image to a USB flash drive. Windows users can download the Rufus bootable USB drive utility and use it for this step.
3. Connect a USB hub to the USB 2.0 port on the Compute Stick and plug in a keyboard, mouse, and the USB flash drive you just prepared.
4. Connect a power cable to turn on the Compute Stick and quickly press the F2 key to enter the UEFI/BIOS setup utility.
5. Use the arrow keys on your keyboard to navigate to the Configuration menu and then move down to the “Select Operating System” section and change the selected OS from Windows 32-bit to Ubuntu 64-bit.
6. Hit the right-arrow key to go to the Exit menu and choose to save your changes and exit.
7. Now the computer will reboot. Press F10 right away to get to the boot options menu.
8. Choose the USB flash drive.
9. The GRUB bootloader should appear, asking if you’d like to Try Ubuntu without installing or if you’d like to install Ubuntu. Select the first options, which will let you run the OS from the USB flash drive without writing anything to your device’s built-in storage.
That’s pretty much it. Wait a few minutes and the Ubuntu desktop should load. You can connect to a wireless network, surf the web, and even install apps. Just keep in mind that nothing you do will be saved.
If you’re happy with what you see, you can install Ubuntu. There are a few different options for doing that, but here’s one of the safest:
Installing Ubuntu to a microSD card
Note: If you’ve previously installed Ubuntu or another operating system, make sure to remove any changes to your bootloader before proceeding. This tutorial assumes you’re starting from a system that boots to Windows automatically. If you already have GRUB installed, you’ll probably run into problems… but the troubleshooting section below may help.
1. Prepare a liveUSB as described in the section above and use it to boot into Ubuntu.
2. Double-click the “install Ubuntu” icon on the desktop.
3. Follow the on-screen instructions and when you’re asked if you’d like to unmount any disks, select yes.
4. When you get to the Installation Type option, choose “something else” and scroll down until you find “/dev/mmcblk1″ which should be your microSD card.
4. Choose the “New Partition Tablet” option for mmcblk1 and click the + icon to create a new partition. Choose / as the mount point and Ext4 for the file system.
Note that you should not change the location of the bootloader. It should be set to mmcblk0, which means the bootloader will be written to your Compute Stick’s internal storage (you can undo this if you decide to remove Ubuntu later).
Also note that you may see a message alerting you that you have not selected any Swap space. You can set some up if you want, but I didn’t bother.
5. Follow the rest of the instructions, entering your time zone, keyboard layout, and username and password when asked.
6. The installer may take 10 – 30 minutes to complete. When it’s finished, you can reboot your device and remove the USB flash drive.
7. The GRUB bootloader will now appear when the computer boots, giving you an option to boot Ubuntu.
If you don’t see GRUB or if it doesn’t work, you can also hit F10 while the computer is booting to bring up the boot options menu. From here, choose the option that says Ubuntu. Sometimes this works better.
That’s it: you should now have a working version of Ubuntu 14.04 that you can run at any time. If you followed my steps, Ubuntu is running from a microSD card and Windows is still hanging out on the internal storage of your Compute Stick.
Alternately, you could overwrite Windows or repartition the built-in storage. I felt more comfortable using a microSD card and leaving the original software untouched. Either way, you get an Ubuntu Compute Stick with 2GB of RAM, which is twice as much as you’d get if you bought the version of the Compute Stick that comes with Ubuntu pre-installed.
From time to time the Compute Stick did lock up on me when running from the microSD card. I suspect heat may be a factor: the Compute Stick can get rather warm when it’s in use, and when I eject the microSD card it feels hot to the touch. It’s possible that you may get better performance if you install Ubuntu to built-in storage… or stick a big fan or air conditioner next to the Compute Stick.
How to remove the GRUB bootloader
Want to uninstall Ubuntu and go back to using only Windows?
Just boot into Ubuntu, open a terminal window, and type “efibootmgr” to see a list of boot entries.
Then type “sudo efibootmgr -b [the number of the entry you want to remove] -B” to remove.
For example, if you see Boot0000 ubuntu, you would type “sudo efibootmgr -b 0000 -B” to remove Ubuntu.
You should remove every listing you see. This should cause the Windows bootloader to automatically re-appear when you reboot the Compute Stick. If it doesn’t work, see the troubleshooting section below.
When you’ve finished you should be able to remove the microSD card, change the UEFI/BIOS settings so that the computer is set to boot Windows 32-bit, and the Intel Compute Stick should boot to Windows every time.
What if I want to upgrade to a newer version of Ubuntu?
To be honest, that’s beyond the scope of this article. Ubuntu 14.04 is an LTS release, which means that Canonical will supported through April, 2019.
Right now you can upgrade from Ubuntu 14.04 to a newer version of the operating system, but you may lose support for WiFi, Bluetooth, or audio if Canonical hasn’t released official packages for the version of Ubuntu that you’re using yet.
Advanced users may be able to re-enable the drivers manually. But for most casual users, it’s probably best to stick with Ian Morrison’s “unofficial official” LTS release, which should allow you to get the latest kernel and driver updates from Canonical.
Did something go wrong? Here are a few things to try:
Help! I rebooted my system and now GRUB doesn’t show up and I can’t get past the bootloader at all!
1. Turn on the computer and hit F2 to enter the UEFI setup utility.
2. Enable the Internal UEFI Shell option, save, and reboot.
3. Now hit F10 when the computer boots, and select UEFI Shell.
4. Type the following (without quotes): “FS0:”
5. Type “cd EFI\ubuntu” and then “grubx64.efi”
This should bring up the GRUB bootloader and give you the option to boot into Ubuntu. If it doesn’t work or you only see a GRUB command line, you might want to reboot and try again.
Once you’ve booted Ubuntu, you might want to clean out the EFI settings and try re-installing. Here’s how to do that:
1. Open a terminal window and type “sudo efibootmgr -v”
2. You may or may not see a list of boot entries. Or you might get an error that says efibootmgr isn’t available. In that case, type “sudo apt-get install efibootmgr” to install it.
3. Now, whether you see any EFI entries or not, type “sudo efibootmgr -b 0005 -B” and hit return. You’ll probably get an error message. That’s fine. Now we’re going to do a little countdown: enter the following commands one after the other:
- sudo efibootmgr -b 0004 -B
- sudo efibootmgr -b 0003 -B
- sudo efibootmgr -b 0002 -B
- sudo efibootmgr -b 0001 -B
- sudo efibootmgr -b 0000 -B
That should get rid of any pesky entries that are causing problems. Of course, now you don’t have a bootloader at all, so let’s set one up.
4. Type “efibootmgr -c -d /dev/mmcblk0 -p 1 -l \\EFI\\ubuntu\\grubx64.efi -L ubuntu”
If you want to double-check before rebooting, you can type “sudo efibootmgr -v” again, and you should see an entry marked “ubuntu.”
Now when you reboot your Compute Stick, it should automatically load GRUB and let you boot Ubuntu. If the system freezes, try hitting F10 at boot and choosing the ubuntu option from the boot menu.
Help! I want to remove Ubuntu, but following the steps above did not restore the Windows bootloader!
OK, don’t panic. Just use the steps I just outlined to enable the UEFI Shell, navigate to the EFI/ubuntu menu, and manually run grubx64.efi in order to boot Ubuntu again.
This time, once Ubuntu is loaded, go ahead and delete any EFI entries again using the “sudo efibootmgr -b [number] -B” command again.
When you’re done, run this command: “efibootmgr -c -d /dev/mmcblk0 -p 1 -l \\EFI\\Boot\\bootia32.efi -L Windows” and reboot the computer, change the UEFI settings so that the Compute Stick uses a 32-bit bootloader, and you should be all set.