Ubuntu – Live Ubuntu USB doesnt works on newer systems


What is the problem?

The USB when used with a Dell laptop (Windows 7) or a Sony Vaio (Windows 7) works perfectly. I just plug it in and start the system, and instead of windows, it boots in Ubuntu as expected. However, when I use it with my new Hp laptop (Windows 10) it just boots to Windows 10. Well, I tried another way, used "Advanced Recovery Options" and selected "Boot from USB". But that said that there was no such device found.

How I created the USB?

I flashed the installer to a spare 8Gb USB using Balena Etcher and then booted into Ubuntu Trial using the Sony Vaio laptop. There I started the installer and installed Ubuntu to a 32Gb USB.

Best Answer

Simplified Full Install of Ubuntu 20.04 to USB that Boots BIOS and UEFI Mode

It sounds like you may have created the USB in BIOS boot mode and it won't boot on your UEFI mode computer. To boot your USB in both modes tales a little more work.

  • Download BIOS/UEFI Template: https://phillw.net/isos/linux-tools/uefi-n-bios/dd_grub-boot-template-for-uefi-n-bios.img.xz

  • Flash image to target USB using Win32DiskImager, Rufus, mkusb, balenaEtcher, etc.

  • It is recommended to unplug any internal drives especially when installing in UEFI mode. Creating while booted in BIOS mode saves a few steps.

  • Boot Live Installer USB, and insert Target USB.

  • Start install process, select: Language, Keyboard, Wireless, Updates and Something Else.

  • Select Target USB for Bootloader installation.

  • (Optional Data Partition), Select the empty space on the Target drive and click the plus sign to create a FAT32 partition with mount point "/Windows". Leave at least 6GB empty space for root partition.

  • Select the empty space on the Target drive and click the plus sign to create an ext4 partition with mount point "/".

  • Select Install now, confirm partition to be formatted, enter location, name and password.

  • When install is complete copy /boot/grub/grub.cfg from root partition to overwrite /boot/grub/grub.cfg on boot,esp partition.

enter image description here

  • If created using Rufus/Etcher or in UEFI mode reinstall GRUB for BIOS boot:

    sudo mount /dev/sdx3 /mnt

    sudo grub-install --boot-directory=/mnt/boot /dev/sdx

Thanks to Sudodus for the mkusb based BIOS/UEFI Template

Related Question