openSUSE Leap 15 - Only boots with DVD

Hi All,

I’ve been handed a laptop by a friend who attempted to install openSUSE. It appears to install without a problem from a DVD she bought/received from a magazine (it looks very official rather than an image burnt on to a DVD).

Upon removing the disk and restarting the laptop it won’t boot, explaining that there is no bootable drive/media. If you put the disk in it will boot and it looks like the installation screen with an option to “boot from hard disk”. You can then go to log in and use the computer.

I’ve shifted things around in the BIOS, attempted a new install and checked there is a /boot/efi partition. I’ve gone into the command line and looked to see that the grub 2 and efi directories are populated and they are. That’s not to say these things have been done correctly.

Does anybody have any advice? I’m not a pro, but I can quite happily follow instructions.

One final oddity - The hard drive of this laptop is what I believe to be a flash-based eMMC 32GB one. Not sure if that matters.

Thanks!
James

It’s hard to know the problem without more information.

Can you boot into the Leap 15 system. And then give us the output from:


df
efibootmgr -v

Use code tags for the output.

Hi, thanks for the reply.

DF Output:

Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 1919920 0 1919920 0% /dev
tmpfs 1928624 0 1928624 0% /dev/shm
tmpfs 1928624 17932 1910692 1% /run
tmpfs 1928624 0 1928624 0% /sys/fs/cgroup
/dev/mmcblk0p2 15490048 5679440 9746928 37% /
/dev/mmcblk0p2 15490048 5679440 9746928 37% /.snapshots
/dev/mmcblk0p2 15490048 5679440 9746928 37% /var
/dev/mmcblk0p2 15490048 5679440 9746928 37% /tmp
/dev/mmcblk0p1 511720 5112 506608 1% /boot/efi
/dev/mmcblk0p2 15490048 5679440 9746928 37% /boot/grub2/i386-pc
/dev/mmcblk0p2 15490048 5679440 9746928 37% /boot/grub2/x86_64-efi
/dev/mmcblk0p2 15490048 5679440 9746928 37% /opt
/dev/mmcblk0p2 15490048 5679440 9746928 37% /srv
/dev/mmcblk0p2 15490048 5679440 9746928 37% /usr/local
/dev/mmcblk0p2 15490048 5679440 9746928 37% /root
/dev/mmcblk0p3 10664960 79820 10585140 1% /home
tmpfs 385724 16 385708 1% /run/user/1000

efibootmgr -V output:

version 14

Apologies. With Code tags:

Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 1919920 0 1919920 0% /dev
tmpfs 1928624 0 1928624 0% /dev/shm
tmpfs 1928624 17932 1910692 1% /run
tmpfs 1928624 0 1928624 0% /sys/fs/cgroup
/dev/mmcblk0p2 15490048 5679440 9746928 37% /
/dev/mmcblk0p2 15490048 5679440 9746928 37% /.snapshots
/dev/mmcblk0p2 15490048 5679440 9746928 37% /var
/dev/mmcblk0p2 15490048 5679440 9746928 37% /tmp
/dev/mmcblk0p1 511720 5112 506608 1% /boot/efi
/dev/mmcblk0p2 15490048 5679440 9746928 37% /boot/grub2/i386-pc
/dev/mmcblk0p2 15490048 5679440 9746928 37% /boot/grub2/x86_64-efi
/dev/mmcblk0p2 15490048 5679440 9746928 37% /opt
/dev/mmcblk0p2 15490048 5679440 9746928 37% /srv
/dev/mmcblk0p2 15490048 5679440 9746928 37% /usr/local
/dev/mmcblk0p2 15490048 5679440 9746928 37% /root
/dev/mmcblk0p3 10664960 79820 10585140 1% /home
tmpfs 385724 16 385708 1% /run/user/1000

Version 14

Thanks.

Not much output from “efibootmgr -v”.

Can you give us the output from:

ls -l /boot/efi/EFI/opensuse

When you have the DVD inserted, does it boot directly into your system? Or does it boot to the installer menu, where you can select “Boot from hard drive”?

Hi,

I was using capital 4 rather than lowercase.

When running efibootmgr -v as the user I get:

Absolute path to 'efibootmgr' is '/usr/sbin/efibootmgr', so running it may require superuser privileges (eg. root).

When I use sudo I get:

BootCurrent: 0002
Timeout: 0 seconds
BootOrder: 2001,2002,2003
Boot0000* Unknown Device:       HD(1,GPT,73d35fdf-2397-4504-acab-824246ff84e0,0x800,0xfa000)/File(\EFI\opensuse\grubx64.efi)RC
Boot0001* USB CDROM: HL-DT-STDVDRAM GP57EW40    PciRoot(0x0)/Pci(0x15,0x0)/USB(3,0)/CDROM(1,0x28c,0x1e84)RC
Boot0002* USB CDROM: HL-DT-STDVDRAM GP57EW40    PciRoot(0x0)/Pci(0x15,0x0)/USB(3,0)/CDROM(2,0x28c,0x1e84)RC
Boot0003* Unknown Device:       HD(1,GPT,73d35fdf-2397-4504-acab-824246ff84e0,0x800,0xfa000)/File(\EFI\opensuse\grubx64.efi)RC
Boot0004* opensuse-secureboot   HD(1,GPT,73d35fdf-2397-4504-acab-824246ff84e0,0x800,0xfa000)/File(\EFI\opensuse\shim.efi)
Boot2001* EFI USB Device        RC
Boot2002* EFI DVD/CDROM RC
Boot2003* EFI Network   RC

Running ls -l /boot/efi/EFI/opensuse:

total 3552                                                                                                                                                                                      
-rwxr-xr-x 1 root root      58 Nov 18 21:16 boot.csv
-rwxr-xr-x 1 root root     155 Nov 18 21:16 grub.cfg
-rwxr-xr-x 1 root root 1059168 Nov 18 21:16 grub.efi
-rwxr-xr-x 1 root root  178176 Nov 18 21:16 grubx64.efi
-rwxr-xr-x 1 root root 1158688 Nov 18 21:16 MokManager.efi
-rwxr-xr-x 1 root root 1208968 Nov 18 21:16 shim.efi

Thanks,
James

If that’s the only drive on the system then, 32 GB is not enough far a “default” openSUSE installation with a Btrfs system partition and XFS user partition.

Assuming that, you can boot reliably as you’ve described, after saving the user’s files to a USB-Stick, you could retry the installation from scratch but, this time install to a single ext4 partition (system and user) with a minimal amount of swap – see the “Partitioning” section of the installation procedure: <https://doc.opensuse.org/documentation/leap/startup/html/book.opensuse.startup/cha.install.html#sec.yast_install.partitioning&gt;.

BTW, ‘df’ doesn’t work for Btrfs partitions – you have to use “btrfs filesystem df /” …

That looks okay, except that opensuse is not in the boot order.

Maybe try (as root, or with “sudo”)

efibootmgr -o 4,2001,2002,2003

That should insert entry 4 (the opensuse entry) at the beginning of the boot list.

Whether this works depends on your BIOS. But it is worth trying.