Can't boot from USB on Surface device with Ubuntu installed

Last month I replaced Windows 10 that was on my Surface Go with Ubuntu. Whilst Ubuntu is working just fine I recently came across Zorin and want to give it a go.

I have the bootable USB drive working as I have tested it with another laptop. But it is my old Surface device that I want to actually try it on. When I boot it up and access the grub menu there isn't an option to select to boot from USB. I have checked the UEFI settings and USB is selected as the top for booting.

I have tried a couple of suggestions from the forums for trying to update GRUB to get the USB to show up, but to no luck. Wondering if anyone has any suggestions?

Does your computer have a key for boot menu? Like F8 or DEL? Some laptops has a physical little button you have to press.

I can get to the UEFI menu by holding down power and volume down.
And esc for grub. But the issue is grub only shows options for Ubuntu.

Welcome to the Forum!

Your BIOS should have something like ''Boot Order'' or similar called. When You there choose the stick and click Enter it should started. Maybe You could post a couple of Pictures of Your BIOS if possible?

Other Things:

  • What Tool did You used to create the bottable USB Stick?
  • Because of Your UEFI BIOS: Does the stick have the GPT Partition Sheme?
  • Are Secure Boot and Fast Boot turned off?
  • Is Fast Start-Up in Windows turned off?
1 Like

Thanks! I also asked on Mastodon who also confirmed that I was looking at the wrong thing thinking it was an issue with Grub.

I have attached photos of the security section and the boot configuration for Surface UEFI.


Okay, can You click on the ''USB Storage'' Entry in Picture 2 to start it? or navigate with the Arrow Keys to it and press Enter?

The Secure Boot irritates me a bit. There stands ''Secure Boot is Enabled with Microsoft'' and under it stands ''Disabled''

No, it's very limited what I can actually do from this menu... All I can do is change the hierarchy.

I'm going to try and re do the usb tomorrow using a different method. UEFI is very picky and the default usb boot might not be recognised easily?

I redid the USB using Rufus this time with the settings below. But it still wasn't showing up in the boot. Microsoft really hasn't made Surface UEFI pleasant to use.

You use Rufus; that is a good Choice. Okay, I see Your USB Stick has 64GB of Storage. The GPT Partition Sheme for UEFI is good. But under ''File System'' stands ''Large FAT32 (Default)''. Do You have there other Options?

I do have the option for NTFS, I went with FAT32 first as I had read elsewhere that sometimes there are issues with NTFS being read?

Is it worth trying that file system?

I would say that FAT32 is Correct.

I see you have "Boot from USB devices" active.

At any point, have you tested using a different USB stick? Everything about this suggests the stick is the problem.

It's the same one I used to install Ubuntu onto that Surface laptop in the first place. And it worked fine when I tested it on another laptop (which I don't want to install it on yet). But, I'll try and get hold of another USB stick of a similar size soon to try.

1 Like

I noticed on your UEFI/Security screenshot, TPM set as Enabled.
I am aware Secure Boot should be Disabled but I also wonder if that is worth looking at changing TPM to Disabled if only Linux (not Windows) will be used.
Other members may wish to comment on this suggestion.

2 Likes

No, I thought, that You might have exFAT. But then stay with the default.

I have since turned the TPM off, but it hasn't made a difference here.

I haven't got round to testing the stick being formatted as NTFS yet though.

If you can access the grub menu, or boot into Ubuntu, surely someone here can tell you how to add a custom grub entry to boot from your USB. Then you won't have to fool with your problematic EFI. If you can boot into Windows (if you still have it on your machine), surely you can just go edit the boot time value, on boot menu select Other, select Devices, and select USB.

This was why I initially thought the solution to my problem was with Grub.
The only OS I have installed is Ubuntu. But because it is a Surface device, the Surface UEFI is still baked in, which is seemingly adding to my problems.

Could you do something like this or this also but to boot a Zorin USB instead of a Ventoy USB? If someone knows more than me, they can probably tell you how. Or failing that, can you instead put Ventoy on the USB (make sure to go to options and select the GPT partition style because the default is MBR and that might mess your machine, dunno) and then put the Zorin ISO on it (I would throw on an Ubuntu one too since you know that works already, and have it as backup).

Ok also I'm curious how you even got Ubuntu on there.

What does lsblk say? Does it even see your USB?

I have been sort of working on making grub custom entries but I'm not to the level I can really help. I have successfully made one that I can boot to my HDD and NVMe but we really need help of an expert here to help figure this out.

1 Like

Thanks, looks promising, I'll try and give it a go when I've got time to do it properly.

1 Like

Thank you so much! I have just got it working! Currently just trying it on my Surface Go for this evening.

Initially just tried the update to Grub, but when combined with using Ventoy it worked first time!

I'll continue to have a play around tomorrow and if all goes well I'll mark this as solved.

Update: All installed and working!

1 Like