Announcement

Collapse
No announcement yet.

Can't seem to get UEFI boot working

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Can't seem to get UEFI boot working

    I am tired of Windows but also have intense dislike of Apple. I tried PopOS but was not happy (high CPU usage + WiFi disconnecting a LOT). I am trying out Kubuntu 23.04. I very much like what I see with regards to Kubuntu from the Live USB. Especially that in three days I have not once had a WiFi disconnect. I can not get it to install correctly. I am at work so can not use the machine at home for this but will outline what I have tried. The laptop is an i5 Acer. It has a 1 TB SSD and 16 GBs of RAM. It has a 2 GB nvidia card (not sure of the exact model). Secure Boot is turned off. UEFI is enabled (not Legacy). When I first tried installing, I went into KPartition and deleted everything. I made it GPT. When I ran the installer, I opted for Minimal Install. When it came time to partition I choose manual (as I wanted Home on a separate partition). When I was complete, these were the settings:
    • 1 MB free space (self allocated when I set first partition as below)
    • 1024 MB EFI System Partition
    • 16384 MB Swap
    • 128000 MB Root (/)
    • some amount here MB Home (/home) ← sorry don't remember exact amount - it was remainder minus 3 MBs (free space at end)
    • 3 MB free space
    These were all on the /dev/sda drive (which is correct). I left the Boot Loader option as /dev/sda.
    The next page showed it would be creating the four partitions. It finished installing installing and told me to restart. I restarted, remove the drive then hit Enter. Upon restarted I had the "No Bootable Device" screen. I tried again (several times, changing something small (like Boot Loader pointing to /dev/sda1, etc)). I even tried letting the install do the Guided option.

    I keep getting "No Bootable Device." Any suggestions for a Linux noob? I really hope it is something simple that my newness is just missing/overlooking.Thank you.

    #2
    Welcome.

    1. How did you create the partitions? Before installation within the live environment with the KDE Partition Manager or during installation with the tool of the installer?
    2. You did not list the file system types and file system flags of your partitions above (/boot/efi should be fat32 and has to have the "boot, esp" flags for example)​.
    3. 1024 MB for /boot/efi is waaay too big, you will usually only use 20-60 MB of it. Even 512 MB would be - choose something between 320 and 512 MB (I recommend 320 MB due to different reasons - the Windows installer used to create a size of 100 MB by default IIRC).
    4. If you want to use the swap partition for hibernation make it slightly bigger than RAM, there are different recommendations out there regarding a swap partition - here is the one from Ubuntu : https://help.ubuntu.com/community/Sw...p_do_I_need.3F
    5. Did you check the boot options/boot order in your computer's firmware?
    Last edited by Schwarzer Kater; Jul 27, 2023, 11:12 AM. Reason: typos
    Debian KDE & LXQt • Kubuntu & Lubuntu • openSUSE KDE • Windows • macOS X
    Desktop: Lenovo ThinkCentre M75s • Laptop: Apple MacBook Pro 13" • and others

    get rid of Snap script (20.04 +)reinstall Snap for release-upgrade script (20.04 +)
    install traditional Firefox script (22.04 +)​ • install traditional Thunderbird script (24.04)

    Comment


      #3
      If the error is the grub installation you can fix it by booting to the LiveUSB and re-installing grub:

      sudo grub-install /dev/sda

      and reboot.

      Also check your BIOS and make sure you didn't inadvertently disable booting to the drive.

      As far a partitioning advice;
      You don't need a swap partition at all. The default is to use a swap file - the size of which can easily be adjusted.
      125 GB is WAAAYYY to big for any Linux root partition. 30g is a normal amount and 40 if you plan on installing LOTS of stuff. I have lots of stuff in 27.6gb
      And I agree /EFI should be 320mb, but a few hundred MB isn't that much waste so whatever.

      Please Read Me

      Comment


        #4
        As I recall, which may not be so authoritative, I did a manual install of my LTS Kubuntu with the following layout:

        lsblk -T --output NAME,FSTYPE,FSVER,LABEL,SIZE,FSAVAIL,MOUNTPOINTS
        nvme0n1 931.5G
        ├─nvme0n1p1 vfat FAT32 100M 92.4M /boot/efi
        ├─nvme0n1p2 ext4 1.0 48.8G 33.3G /
        ├─nvme0n1p3 ext4 1.0 866.2G 500.8G /home
        └─nvme0n1p4 swap 1 16.4G [SWAP]


        and directed the installer to place boot files not on the device, but on the first partition on the device.
        The next brick house on the left
        Intel i7 11th Gen | 16GB | 1TB | KDE Plasma 5.24.7 | Kubuntu 22.04.4 | 6.5.0-28-generic


        Comment


          #5
          Originally posted by jglen490 View Post
          […]
          and directed the installer to place boot files not on the device, but on the first partition on the device.
          I have tried both in Ubiquity (edit: this is the installer that Kubuntu uses) - strangely it doesn't seem to make any difference…
          Last edited by Schwarzer Kater; Jul 27, 2023, 05:43 PM.
          Debian KDE & LXQt • Kubuntu & Lubuntu • openSUSE KDE • Windows • macOS X
          Desktop: Lenovo ThinkCentre M75s • Laptop: Apple MacBook Pro 13" • and others

          get rid of Snap script (20.04 +)reinstall Snap for release-upgrade script (20.04 +)
          install traditional Firefox script (22.04 +)​ • install traditional Thunderbird script (24.04)

          Comment


            #6
            I have tried both in Ubiquity (edit: this is the installer that Kubuntu uses) - strangely it doesn't seem to make any difference…
            -- Agree with that.
            An intellectual says a simple thing in a hard way. An artist says a hard thing in a simple way. Charles Bukowski

            Comment


              #7
              This for Ubuntu install, but same issue, and with solution. Might be helpful? https://itsfoss.com/no-bootable-device-found-ubuntu/
              Using Kubuntu Linux since March 23, 2007
              "It is a capital mistake to theorize before one has data." - Sherlock Holmes

              Comment


                #8
                Originally posted by jglen490
                ...and directed the installer to place boot files not on the device, but on the first partition on the device.
                IIUC that was a kludge for BIOS/MBR, directing the boot loader into a fake (sort of) MBR and MBR gap on the partition rather than that of the device. With UEFI there's typically a boot entry in the NVRAM, an executable in the EFI system partition, and the rest, most, goes in /boot/grub. The kudge was mostly used to trick the installer into not overwriting your existing boot.

                With UEFI grub-install has options --efi-directory and --boot-directory. I don't know how installers interpret that device spec, if at all, or if they use the grub options I refer to.
                Regards, John Little

                Comment


                  #9
                  In my case, the first partition is EFI, and yes there is a 2048 byte unused gap before the first defined partition, which again is the EFI. That has never failed, because UEFI is looking for an EFI partition on a bootable device. It may have BEEN a kludge, but it works. If it it ain't broke, don't!
                  The next brick house on the left
                  Intel i7 11th Gen | 16GB | 1TB | KDE Plasma 5.24.7 | Kubuntu 22.04.4 | 6.5.0-28-generic


                  Comment


                    #10
                    IME, the installer will look for the ESP (EFI System Partition) on the device you specify, like on sda (no need to specify partition). It's that simple.
                    Now, if you have more than one ESP on your system (whether it is on one drive or several drives), you must turn off all ESPs except the one you wish the installer to use. You turn an ESP off by removing the 'esp, boot' flag (or however it is marked), and you do that using Gparted or KDE partition manager.
                    An intellectual says a simple thing in a hard way. An artist says a hard thing in a simple way. Charles Bukowski

                    Comment


                      #11
                      And, once again, Qqmike states it better!

                      I have one device with one EFI, and one OS. I told the Kubuntu installer to place the boot files in the EFI (/dev/nvme0n1p1). That's where UEFI is configured to look, and there is no need to refer to anywhere else to execute boot. Been doing it that way since the first time I kicked MBR to the curb.
                      The next brick house on the left
                      Intel i7 11th Gen | 16GB | 1TB | KDE Plasma 5.24.7 | Kubuntu 22.04.4 | 6.5.0-28-generic


                      Comment


                        #12
                        Hello. I appreciate the suggestions. Unfortunately I am still having the same issue. I am currently lost on this. I followed the suggestions above (most). I removed the swap partition. I will go with a swap file. I decreased the root partition to 75 GB. I have tried partitioning with GParted as that allowed me to assign flag. I was not able to figure out how to do that with the Installer. I have a screenshot of the gparted screenshot:



                        I still have the boot directory at 1024MB for a reason. PopOS explanation below.

                        I also ran the fdisk command and here is that output:



                        So I mentioned PopOS with the GParted screenshot. After many attempts to get Kubuntu installed I tried installing PopOS. It installed and said it required at least 1GB for boot partition. So I installed and used the sizes as listed above. PopOS installed and when I rebooted it started up. No issues with a missing /boot/ file. So when that was installed I kept the partitions and tried installing Kubuntu again. I did use "format" for the ext4 root and ext4 home partitions. That was not an option using the Installer for the EFI partition. But when I restarted I received the same No Boot Device screen.

                        I read on some pages that EFI requires the information to be in /boot/efi. So I booted into the Live USB drive and then went into Dolphin. This is a screenshot of the boot folder:



                        I do not see an "efi" file or folder in there. Could that be the problem?

                        Are there some commands I can run that will allow me to put the efi folder/file in this location? Or do I need to somehow (again, Linux noob here) tell the system to go somewhere else to find the efi boot information?

                        I am really lost on this. I do apologize for what I am sure are simple questions.

                        Thank you.

                        Comment


                          #13
                          Hello. I appreciate the suggestions. Unfortunately I am still having the same issue. I am currently lost on this. I followed the suggestions above (most). I removed the swap partition. I will go with a swap file. I decreased the root partition to 75 GB. I have tried partitioning with GParted as that allowed me to assign flag. I was not able to figure out how to do that with the Installer. I have a screenshot of the gparted screenshot.

                          I still have the boot directory at 1024MB for a reason. PopOS explanation below.

                          I also ran the fdisk command and here is that output.

                          So I mentioned PopOS with the GParted screenshot. After many attempts to get Kubuntu installed I tried installing PopOS. It installed and said it required at least 1GB for boot partition. So I installed and used the sizes as listed above. PopOS installed and when I rebooted it started up. No issues with a missing /boot/ file. So when that was installed I kept the partitions and tried installing Kubuntu again. I did use "format" for the ext4 root and ext4 home partitions. That was not an option using the Installer for the EFI partition. But when I restarted I received the same No Boot Device screen.

                          I read on some pages that EFI requires the information to be in /boot/efi. So I booted into the Live USB drive and then went into Dolphin. This is a screenshot of the boot folder.

                          I do not see an "efi" file or folder in there. Could that be the problem?

                          Are there some commands I can run that will allow me to put the efi folder/file in this location? Or do I need to somehow (again, Linux noob here) tell the system to go somewhere else to find the efi boot information?

                          I am really lost on this. I do apologize for what I am sure are simple questions.

                          Sorry if this is a repost. My previous response was listed as "Unapproved" but I was unable to delete the post.

                          Thank you.​

                          Comment


                            #14
                            Originally posted by KubuntuNewToLinux View Post
                            […]
                            I still have the boot directory at 1024MB for a reason.[…]
                            /boot/boot/efi
                            A "boot" partition is not equal to an "EFI" partition.

                            But in *Ubuntu (and many others) the "EFI" partition is normally mounted in the /boot/efi directory with an entry in /etc/fstab - and /boot resides in a "static" sub-directory of your system's "root" partition.

                            For a real "boot" partition (that is mounted in your system's "root" partition with an entry in /etc/fstab​) I would even use 2048 to be sure to have enough space in the future…

                            ---

                            Basically the GParted screenshot looks good, if you want to use a swapfile.
                            Be aware that the *Ubuntu installer will automatically put the swapfile in / (your system's "root" partition).

                            Now you have to tell the installer manually to use
                            /dev/sdb1 for /boot/efi ("EFI"),
                            /dev/sdb2 for / (system's "root") and
                            /dev/sdb3 for /home (user('s) "home(s)")
                            - and after the installation process everything should be OK (apart from an oversized "EFI" partition…).
                            Last edited by Schwarzer Kater; Jul 29, 2023, 04:26 PM.
                            Debian KDE & LXQt • Kubuntu & Lubuntu • openSUSE KDE • Windows • macOS X
                            Desktop: Lenovo ThinkCentre M75s • Laptop: Apple MacBook Pro 13" • and others

                            get rid of Snap script (20.04 +)reinstall Snap for release-upgrade script (20.04 +)
                            install traditional Firefox script (22.04 +)​ • install traditional Thunderbird script (24.04)

                            Comment


                              #15
                              After you do what S-K says, and you do the installation, the /efi will appear under your /boot folder.
                              And how do you mark /dev/sdb1 as the /boot/efi in the installer? Answer: The way S-K says to do it: the installer has an option labeled, "use as" (or "use for"), with a drop-down list of choices.
                              Edit: first, you highlight the partition you are dealing with, then you select "change" (I think that's what it's called, can't quite recall), then you use the drop-down list "use as" ....
                              (Sometimes sdb1 is referred to as the ESP: EFI System Partition. The top-level directory in the /boot/efi is EFI: /boot/efi/EFI, and in there is all the UEFI Grub boot stuff that the installer installs.)
                              Last edited by Qqmike; Jul 29, 2023, 05:21 PM.
                              An intellectual says a simple thing in a hard way. An artist says a hard thing in a simple way. Charles Bukowski

                              Comment

                              Working...
                              X