Ok, so I finally got the courage to attempt a dualboot with Win8 again. Installation was painless after cleaning up C: and then shrinking the volume to make room for the openSUSE partitions. Everything behaved normally (and exceptionally, bravo on 13.1) until I booted into Windows 8.1 again. Now GRUB is totally gone (as expected). I am using a Sony Vaio Fit 15 with Windows 8.1. I installed openSUSE 13.1 64 bit with UEFI and Secureboot enabled. I am also using btrfs as I intent to experiment with getting Bumblebee to work.
Ideally, I’d like to be able to chainload GRUB from the Windows bootloader so that I won’t run into this problem again. I have encountered this problem invariably with Windows 8 on several machines, and am thus unwilling to simply reinstall openSUSE or GRUB. The Vaio uses UEFI and GPT. In this regards EasyBCD does not work with Windows 8.x as it can’t handle GPT. Previous installations were rendered inoperative by EasyBCD.
This problem came as I was writing a tutorial on the topic.
I spent some time looking for ways to do that in a UEFI environment. As best I can tell, it cannot be done. The Windows boot manager does not appear to have suitable capabilities for booting non-Windows systems in a UEFI box.
On my UEFI box (using to post this message), I use the grub2-efi boot loader and have it load Windows when I want to boot that.
Create a bootable USB drive for SuperGrub disc and boot through it (I boot my system using my rooted Android phone with DriveDroid app).
Then choose “Detect any GRUB2 configuration file (grub.cfg)”
Use the opensuse option in the given list if available, which will make opensuse to boot.
open YaST2 -> Boot Loader and try to configure your bootloader by choosing either GRUB or GRUB2 (if using grub2 , make sure “Probe Foreign OS” selected)
save and restart.
I have fixed my GRUB 2 bootloader using the above step but I don’t have UEFI on my system.
**Caution:**If the above doesn’t fix the issue, your windows may not boot either but that can be easily fixed using windows 8.1 installation media’s recovery option.
The grub2-efi booting is probably still intact, but perhaps the NVRAM entry for it has been deleted. That happens on some computers. There’s a work-around for it. But I first need to find out if that is the problem for Shadowolf7
linux-o05u:~ # file /boot/efi/EFI/Microsoft/Boot/memtest.efi
/boot/efi/EFI/Microsoft/Boot/memtest.efi: PE32+ executable (Unknown subsystem 0x10) x86-64, for MS Windows
linux-o05u:~ # file /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
/boot/efi/EFI/Microsoft/Boot/bootmgfw.efi: PE32+ executable (DLL) (EFI application) x86-64, for MS Windows
linux-o05u:~ # file /boot/efi/EFI/opensuse/grubx64.efi
/boot/efi/EFI/opensuse/grubx64.efi: PE32+ executable (EFI application) x86-64 (stripped to external PDB), for MS Windows
So files that Microsoft installs are not EFI executables at all (with single exception of bootmgfw.efi). Extension .efi is highly misleading here. They are more “plugins” into bootmgfw.efi, and cannot be executed without it.
I do not know if API is made available (anyone?) If yes, we could write own plugin that just launches normal EFI executable …
Hi. But I am just wondering that in addition to what Rescatux offers at the link. What I’ve always tried and found to be fairly successful is using the Ubuntu Remix from here: https://wiki.ubuntu.com/UbuntuGNOME/ReleaseNotes/12.10
from the website:
Since the original Ubuntu GNOME Remix 12.10 release didn’t boot on EFI computers, we released a new image (12.10.1) on Tuesday, October 23 to fix this problem.
I do believe it comes with Boot repair. If it does not, and I’ll be surprised that it won’t as I usually find it there when I find occasion to use it, open Ubuntu’s Terminal
For safety, you might want to first boot linux from a CD or USB, mount the EFI partition, then make sure that “/EFI/opensuse/shim.efi” exists relative to the mount point.
What I described is working fine for me. Whenever Windows takes over booting, it boots into the grub menu.
For safety, you might want to first boot linux from a CD or USB, mount
the EFI partition, then make sure that “/EFI/opensuse/shim.efi” exists
relative to the mount point.
What I described is working fine for me. Whenever Windows takes over
booting, it boots into the grub menu.
Hi
Wouldn’t you also need to ensure the system (Windows) does a full
shutdown, not a hybrid one…
–
Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
openSUSE 13.1 (Bottle) (x86_64) GNOME 3.10.2 Kernel 3.11.6-4-desktop
If you find this post helpful and are logged into the web interface,
please show your appreciation and click on the star below… Thanks!
Copy/paste should be fine. But I still recommend that you make sure the referenced file exists in the efi partition. Check from a booted linux USB or CD or DVD. Use something like:
# mount /dev/sda1 /mnt
# ls -l /mnt/EFI/opensuse
The “/dev/sda1” might be wrong. It might be “/dev/sda2”, or it might be “/dev/sdb1” if a USB boot makes “sda” the name of the USB device.
You are looking for a file named “shim.efi”. Running “parted -l” might tell you which partition is the EFI partition.
OK, some weirdness. I haven’t applied the suggested fix yet. However, when I went to boot my ccomputer, it presented me with a touch-friendly boot selection screen. However when I selected openSUSE it coughed up some errors. Also now when I shut down, it gives me the text only boot selection when I turn the computer on again. I would include pictures, but susepaste won’t allow me to upload them, and Google won’t let me link them.
So the first is the usual boot selection screen, nothing unusual except it is using the text only mode. Secondly it coughs up the error “Windows failed to start. A recent hardware or software change might be the cause.” I can however boot into Windows. I’m wondering if it is due to secure boot, or the Windows bootamajig thinking openSUSE is some version of WIndows.