It shouldn’t be this hard. I must have installed and re-installed Ubuntu 16.04 twenty times before I found the magic combination to allow my old-ish HP laptop to boot straight into Ubuntu (or boot at all).
My son got a new laptop and discarded the beast that was his HP Pavilion. The thing must weigh 10 pounds, the fan is always on, and it was slow as molasses to boot and operate. The laptop had Windows 8.1 and who knows how many viruses after years of kid gaming usage. So I figured I’d just swap out the HDD with an old SSD I had laying around, put Ubuntu on it, and boom have a fairly useful extra computer for the family.
There are lots of tutorials about installing Linux on “Windows” laptops with UEFI and Secure Boot. If those tutorials don’t use an HP laptop, they’re useless because HP Bios and firmware is a special kind of hell.
This tutorial helped me the most. The key part (I think) was the “use gparted to wipe the hard drive”. I tried so many times to install Ubuntu that I’m actually not sure what the vital part was, but I think that helped. Certainly the first 18 times I tried, the laptop just wouldn’t boot at all, with the dreaded message haunting my dreams: “Boot device not found. Please install an operating system.”
A lot of the tutorials mention turning off UEFI (don’t) and turning on Legacy mode (don’t). I think it is vital that you turn off Secure Boot (but I’m not entirely sure).
Some tutorials will tell you to create your own Boot Partition (Don’t. I tried and the Ubuntu install crashed). Forum posts will talk about copying over existing boot files and creating new directories under /boot (don’t.).
In the end, this is roughly the process that worked for me. In all, it took me 3 days to figure this out, so some of my recollection isn’t spot on, but I hope this helps someone in the future.
1. Access the crappy HP Bios by booting into Windows and hold shift while click Restart
2. Turn off Secure Boot in the Bios
3. Alter the order of boot media so you can boot from USB or DVD
4. Leave the UEFI and Legacy boot options as is (no need for Legacy)
5. Save Bios changes and shut down
6. Here’s where I swapped out the existing hard drive for a SSD. Do that now.
7. On another computer, create a Live USB stick using Unetbootin. I put Ubuntu 16.04 on the USB but feel free to go wild
8. Insert your fresh Live USB stick in your HP laptop. On my stupid laptop, only one of the USB ports (the one on the left side, the right side ports didn’t work) was “active” at boot time and would allow the computer to boot off the USB stick.
9. Hopefully, after powering on your laptop, you should be taken to the GRUB boot screen. Choose the option to Try Ubuntu. Don’t install as you need to wipe the drive.
10. Once in Ubuntu Live, open Gparted and erase everything on your hard drive. For me it was /dev/sdb as the USB stick was /dev/sda.
11. Still in Ubuntu Live, choose Install Ubuntu.
12. When you get to the “What do you want to do?” just choose “Erase everything and install Ubuntu”.
13. At this point, I got a popup dialog stating something like, “Blah blah firmware blah blah. If you choose to force UEFI you may not be able to install other Bios OSs in the future. Blah Blah”. Make sure you force the UEFI install, continue the UEFI install, or whatever it asks you. Don’t “Go Back” or you’ll have to re-install.
14. From here it’s a regular Ubuntu install, and when you’re done, restart, remove the USB stick and you should boot straight into Ubuntu.
Easy peasy. Now I have an Ubuntu laptop my wife won’t use!