UEFI Mode Problems

I am trying to install the Tumbleweed snapshot from 7/25/2015. When I enter the dialoge for selecting boot devices in the UEFI firmware, my USB key never shows up as a UEFI device but just as a standard non-UEFI drive. Because of this, YaST starts up in non-UEFI mode. I used dd 3 times and downloaded Tumbleweed from a different mirror to make sure there wasn’t something wrong with the ISO image. I then downloaded 13.2 x64 and used dd to copy that to my USB key – my USB device instantly showed up as a UEFI device and I was then in the UEFI version of the YaST installer.

Is there something wrong with the latest snapshot? I’ve never seen this behavior before with Tumbleweed.

I haven’t tried it. The last that I downloaded was 20150630.

But take a look at Bug 939456 Tumbleweed installation USB key does not boot

That was reported yesterday. If I am reading it correctly, it says that the iso is not UEFI bootable but is legacy bootable. There’s a suggested workaround in comment #3 to that bug.

Thanks for the info. mksusecd didn’t work for me, and I tried it twice. I got a bunch of checksum errors thrown at me once in YaST that I skipped, then came errors about repositories. The install failed early in the process so I aborted both times. Another time I tried installing in non-UEFI mode ignoring errors during the partitioning phase, and then switching to the grub2-efi bootloader in the summary screen. That failed also, and I’m not sure if that’s even supposed to work or not.

What partitioning errors?

I’ve been meaning to try that method. If the isos are still bad by the time of my next install (probably next week), I’ll give it a try.

My assumption is that it should almost work. You would have to mount the EFI partition as “/boot/efi” during the partition section of install. But the actual install of boot loader would fail. I’m not sure at what point it would fail. So then the plan would be to boot from recovery media (the live rescue CD, for example), and reinstall booting that way.

Hmm, maybe I’ll download the latest live rescue CD and see if that, at least, boots in UEFI mode (when used from a USB).

This half-works. Assuming you created ESP during installation (it is not done automatically if no EFI is detected), you can install grub on ESP but you cannot configure firmware to use it. So you still have to manually boot openSUSE using firmware boot menu and redo bootloader installation to configure firmware.

Downloaded and written to a USB. And, no, it doesn’t boot in UEFI mode (no EFI partition).

Does it boot from CD in EFI mode?

I assume so. But I have not tried burning to a CD. Perhaps later, if I find time.

On loop mounting the iso, it appears to be suitably structured.

No, it looks broken.

El Torito images   :   N  Pltf  B   Emul  Ld_seg  Hdpt  Ldsiz         LBA
El Torito boot img :   1  BIOS  y   none  0x0000  0x00      4        4174
El Torito boot img :   2  BIOS  y   none  0x0000  0x00      1          70
El Torito boot img :   3  BIOS  y   none  0x0000  0x00   8064          70
El Torito img path :   1  /boot/x86_64/loader/isolinux.bin
El Torito img opts :   1  boot-info-table isohybrid-suitable
El Torito img path :   2  /boot/x86_64/efi
El Torito img path :   3  /boot/x86_64/efi

ESP El Torito entry is missing. Compare with 13.2 DVD

El Torito images   :   N  Pltf  B   Emul  Ld_seg  Hdpt  Ldsiz         LBA
El Torito boot img :   1  BIOS  y   none  0x0000  0x00      4        5826
El Torito boot img :   2  UEFI  y   none  0x0000  0x00      1         896
El Torito img path :   1  /boot/x86_64/loader/isolinux.bin
El Torito img opts :   1  boot-info-table isohybrid-suitable
El Torito img path :   2  /boot/x86_64/efi

Surprisingly enough OVMF can boot this image as CD-ROM. Apparently it tries to access any El Torito image, not only the one specifically marked as ESP.

But Tumbleweed image does not have partition table entry for ESP, which explains why it is not bootable as USB.

Partition offset   : 0
MBR heads per cyl  : 64
MBR secs per head  : 32
MBR partition table:   N Status  Type        Start       Blocks
MBR partition      :   1   0x80  0x17         8344       171880

vs. 13.2

Partition offset   : 0
MBR heads per cyl  : 0
MBR secs per head  : 0
MBR partition table:   N Status  Type        Start       Blocks
MBR partition      :   1   0x00  0xef         3584         8064
MBR partition      :   2   0x80  0x17        11648      9126528
MBR partition path :   1  /boot/x86_64/efi

What command are you using to list that information?

I just used dd to copy over the Tumbleweed image from 7/27/2015 to a USB key, and now, again, my USB key will not show up as a UEFI drive. It looks as though this snapshot is also broken. Can someone confirm please?

I downloaded the live rescue CD, and it is broken. It didn’t seem worth the trouble of downloading the full DVD image, when the rescue CD image is already broken. The tools/scripts/whatever that they are using to generate these isos appear to be in need of repair.

xorriso -indev /datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso -report-el-torito plain -report-system-area plain

Thanks. Appreciated.

Tried the 7/28/2015 snapshot and it’s still broken. I also tried using mksusecd again with the 7/27/2015 ISO image and that resulted in a bunch of checksum failures right away in YaST.

I already tried the rescue CD for 20150728. And it, too, is broken.

I download snapshot openSUSE-Tumbleweed-NET-x86_64-Snapshot20150728-Media.iso, still doesn’t work.

I tried mksusecd again and this time had success with the 20150728 snapshot. I installed Tumbleweed in UEFI mode without any problems. To recap, mksusecd did successfully write an ISO and I was able to boot the Tumbleweed snapshot in UEFI mode, but then in YaST got inundated with checksum errors popping up. Another time the installation failed very early on in the process and YaST dumped me into the ncurses blue screen which provides the user with a few options, such as “reboot”. You can easily add the repo by searching for this software title at https://software.opensuse.org/. I can’t say why it didn’t work the first few times but I did reformat and reinstall everything, including mksusecd. Maybe in its current state the program can be hit or miss.

I tried “mksusecd” on the live rescue CD image. It seemed to complete successfully, but said that there was something weird about the first partition. But then I looked, and still could not see an EFI partition.

Incidentally, I installed “mksusecd” in an existing Tumbleweed (from the repos) and ran it there.

My tentative plan for my next install is to switch to legacy mode in the BIOS, install that way, then later switch it to UEFI mode. I’ve been meaning to test how well that works. But then maybe the problem will be fixed by then.

You could try adding ESP explicitly:

bor@opensuse:~> LC_ALL=C /usr/sbin/sfdisk -u S -l /datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso 
sfdisk: Disk /datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso: cannot get geometry

Disk /datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso: 11 cylinders, 255 heads, 63 sectors/track
sfdisk: Warning: The partition table looks like it was made
  for C/H/S=*/64/32 (instead of 11/255/63).
For this listing I'll assume that geometry.
Units: sectors of 512 bytes, counting from 0

   Device Boot    Start       End   #sectors  Id  System
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso1   *      8344    180223     171880  17  Hidden HPFS/NTFS
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso2             0         -          0   0  Empty
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso3             0         -          0   0  Empty
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso4             0         -          0   0  Empty
bor@opensuse:~> echo '280,8064,0xef' | LC_ALL=C /usr/sbin/sfdisk -u S -N 2 --force /datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso 
sfdisk: Warning: /datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso is not a block device
sfdisk: Disk /datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso: cannot get geometry

Disk /datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso: 11 cylinders, 255 heads, 63 sectors/track
Old situation:
sfdisk: Warning: The partition table looks like it was made
  for C/H/S=*/64/32 (instead of 11/255/63).
For this listing I'll assume that geometry.
Units: sectors of 512 bytes, counting from 0

   Device Boot    Start       End   #sectors  Id  System
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso1   *      8344    180223     171880  17  Hidden HPFS/NTFS
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso2             0         -          0   0  Empty
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso3             0         -          0   0  Empty
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso4             0         -          0   0  Empty
New situation:
Units: sectors of 512 bytes, counting from 0

   Device Boot    Start       End   #sectors  Id  System
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso1   *      8344    180223     171880  17  Hidden HPFS/NTFS
        start: (c,h,s) expected (0,132,29) found (4,4,25)
        end: (c,h,s) expected (11,55,44) found (87,63,32)
partition ends on cylinder 87, beyond the end of the disk
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso2           280      8343       8064  ef  EFI (FAT-12/16/32)
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso3             0         -          0   0  Empty
/datastore/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20150727-Media.iso4             0         -          0   0  Empty
sfdisk: Warning: partition 1 does not end at a cylinder boundary
sfdisk: Warning: partition 2 does not end at a cylinder boundary
sfdisk: partition 1: start: (c,h,s) expected (0,132,29) found (4,4,25)
sfdisk: end of partition 1 has impossible value for cylinders: 87 (should be in 0-10)
Successfully wrote the new partition table


sfdisk: If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(See fdisk(8).)
bor@opensuse:~> 

I cannot test it because OVMF boots this ISO image both as CD and HDD.