9

Short version

I reinstalled Ubuntu 15.10 on my Dell XPS 13 (Option: Erase disk and install Ubuntu) but on boot, I have a message that no bootable system has been found. When I display the boot options and select the SSD ('Legacy'), UEFI says it's not bootable (Ubuntu installed in UEFI mode).

How can I fix this? (Reinstallation is an option)

Context

Upgrading 14.04 to 15.10

I had some minor quirks with the installed 14.04 and wished to upgrade. I just used the settings so that Ubuntu would upgrade to the latest version, which worked. But I did not have any network available.

15.10 Fresh install, legacy mode

I went for the clean install (USB stick, Unetbootin) and that's when I think I made my real mistake: selecting the Erase disk and install Ubuntu option.

Since then, it does not boot. I was able to boot it manually from boot menu, but saw that the UEFI section under which Ubuntu was previously visible has now disappeared.

15.10 Fresh install, UEFI mode

I tried reinstalling it in UEFI mode, but no luck. I was afraid the system scraped a partition used for boot, but no, an efi partition is present (Ubuntu actually mentioned he would write an ESP partition before doing the partition changes).

Booting in Legacy mode is no longer an option (obviously...).

The BIOS (updated to the latest version Dell supplies, from November 2015) does not seem to see the UEFI partition. When going through the settings and trying to add a BOOT option, though, I can see the Ubuntu part, but it fails to be added.

And now?

Is there any right way to fix it?

  • Please run the Boot Info Script. This will generate a file called RESULTS.txt. Post that file to a pastebin site and post the URL to your document here. This will give us more details about your configuration, which is required to base an answer on more than guesswork. – Rod Smith Feb 10 '16 at 15:30
  • Is your SSD set as primary boot device in BIOS? Sometimes it happened that the boot order is messed up. – Thomas Feb 10 '16 at 16:41
  • @Thomas The SSD is set as primary if I set the BIOS to legacy mode, but it doesn't work anymore now that I installed in UEFI mode (corrected the question). UEFI does not see anything to boot. – Chop Feb 12 '16 at 9:16
  • @RodSmith I will, as soon as I can (away from the machine for a few days). Thanks. – Chop Feb 12 '16 at 9:16
12

This is visibly a known bug for Ubuntu 15+ when installing on Dell XPS 13 9343. A workaround has been documented on Launchpad. This answer is solely based on this ticket (which solved my problem).

Cause

The cause of the problem is the explained on this ticket:

The dev/sda1 is wiped removing the EFI boot partition
This is replaced but the dell bios expects to find /EFI/boot/bootx64.efi, but ubuntu only add EFI/ubutnu/*.efi entries, so consequently can not find the hard drive at all.

Workaround

The workaround is the following:

Create bootx64.efi

Boot with a live CD, open a terminal, and type the following commands:

sudo mount /dev/sda1 /tmp
cd /tmp/EFI
sudo mkdir boot
sudo touch boot/bootx64.efi
sudo reboot

Configure your boot

  1. Open the boot settings (when the DELL logo appears, press F2 until a yellow message appears in the upper right corner).
  2. Select Boot Sequence.
  3. Click Add Boot Option.
  4. In the new window, type the following:
    • Boot Option Name: Ubuntu
    • File Name: tap the three dots and select EFI/ubuntu/shimx64.efi
  5. Check the Ubuntu entry and uncheck UEFI: SAMSUNG SSD...
  6. Apply and Exit

Enjoy your working system!

| improve this answer | |
  • This happened for me on a Dell Precision Tower using Xubuntu 16.04.2. This fix works! – Paul van Schayck May 31 '17 at 13:48
  • 1
    This fixed it temporarily but when I boot with usb connected, it fails and I have to go to boot settings and setup boot sequence again. Doing boot-repair from (help.ubuntu.com/community/Boot-Repair) helped – MoneyBall Aug 7 '18 at 1:26
  • Initially you said to create a file called "bootx64.efi", and then you said to select a file called "shimx64.efi". Is this a typo? Why to create one file and then select another file? In any case, I do not have any file called "shimx64.efi"... – Erel Segal-Halevi Oct 16 '18 at 7:17
  • @ErelSegal-Halevi I'm sorry, I don't remember as this was two years ago.The solution is the same as the one on bugs.launchpad.net/dell-sputnik/+bug/1499323. It was also for a specific model of XPS13 and may not be valid. Maybe the other answer to this thread may help you? askubuntu.com/a/828415/433631 – Chop Oct 17 '18 at 9:34
  • This worked on a Dell Optiplex 3020 – Jacob Jennings Sep 9 at 19:58
3

I ended up fixing this slightly differently on Elementary OS, but it should apply to other operating systems.

  1. Install Elementary OS in UEFI mode as normal.
  2. Reboot to find that you get a black screen.
  3. Reboot into the USB disk that you used to install the OS.
  4. When grub comes up and prompts you with the "try elementary" option, hit c and drop to the grub command line.
  5. Use ls to try and determine which one of the available drives and partitions is the one you just installed /root onto. This may not be possible if you went with full disk encryption, but I just encrypt my /home. Once you find that out, set it to your root in grub. For me, it looks like this: set root=(hd1,2).
  6. Use the elementary provided grub config to boot into your Elementary OS install: conffile /boot/grub/grub.cfg. If that file doesn't exist then you probably picked the wrong drive/partition in the previous step.
  7. It should boot into Elementary OS. At this point, you can take out the USB stick and it should work just fine.
  8. (possibly optional) Drop to a root shell and create the file that was mentioned in the other answer: sudo touch sudo touch /boot/bootx64.efi
  9. Update grub: sudo update-grub
  10. Reboot into the dell bios
  11. Navigate to the boot sequence screen
  12. Add an option, call it Ubuntu (or whatever)
  13. Tap on the three dots to select the efi file. You should be able to pick EFI\ubuntu\grubx.efi or something like that. The other answer had you picking shimx64.efi, but I assume grub won't update that.
  14. Go to the advanced boot options menu
  15. Disable the legacy ROM option. For some reason I have to do this or I get the black screen again.
  16. Save it, apply, restart, win.

It persists too. I haven't updated my kernel yet so I can't say for sure it will work forever. Because of this, I now carry a live USB at all times.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.