SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I just got my first laptop with efi/gpt and have a question about making it dual-boot with the pre-installed windows 8. I enabled the legacy mode on the laptop, and the wiki at http://docs.slackware.com/howtos:sla..._uefi_hardware, suggests that I can proceed with the install as usual. I used windows native tools to shrink the windows partition, cgdisk to create the partitions I need for slackware, and went ahead with the install as usual up to the step of installing lilo.
So now I am not sure if I should install lilo to the MBR (which is what I usually do) or to the linux root partition. Or do I still need to use elilo. Based on the wiki it sounds like I should install to MBR, but since it does not specifically reference dual-boot, I wonder if this will kill the windows boot.
There is no MBR. (unless you repartitioned the disk with a MBR).
To boot with EFI from a GPT disk, you need to have (besides your normal data partitions), an EFI system partition with the EFI bootloader. You might use ELILO if you use 64-bit Slackware (I tried to boot 32-bit Slackware with ELILO and failed; besides ELILO can't boot Windows). I advice you to use GRUB2, which is capable to boot any OS.
The Windows boot won't be killed, but it will be zombified and return if you kill it. (Windows 8 seems to need to see "Windows Boot Manager" as an entry in your EFI). So I advice you to keep that ugly thing, but set it to last boot priority, which is what I did.
I understand that there is no MBR per se, but the how-to says that if you enable the legacy support/BIOS emulation (which I did) that you can proceed as normal. What does that mean, then?
Quote from RodsBooks
"To protect GPT disks against errant older disk tools, GPT keeps an MBR partition table on the first sector of the disk"
On my system I installed lilo to the mbr as always. When and if I make a mistake in my elilo.conf The boot justs fails thru to a lilo boot.
It seems that is the way it is supposed to work?
Please be aware that I do not dual boot
John
Last edited by AlleyTrotter; 12-21-2012 at 09:13 AM.
Quote from RodsBooks
"To protect GPT disks against errant older disk tools, GPT keeps an MBR partition table on the first sector of the disk"
On my system I installed lilo to the mbr as always. When and if I make a mistake in my elilo.conf The boot justs fails thru to a lilo boot.
It seems that is the way it is supposed to work?
Please be aware that I do not dual boot
John
So you install lilo during the setup and then install elilo? What purpose does elilo serve in this situation?
I've never used grub. Is there a sense (reading the tea leaves) that Slackware might be moving toward grub2 in the future if efi/gpt becomes ubiquitous?
So you install lilo during the setup and then install elilo? What purpose does elilo serve in this situation?
Brian
elilo will boot using the UEFI firmware
if there is an error in the UEFI setup then:
lilo will boot using the legacy mode of the firmware.
without lilo installed the system will just hang at an error message.
(voice of experience getting UEFI set up on my new system).
Not sure how much of a difference there is between BIOS/EFI/UEFI/WINDOWSBOOT apparently UEFI has superseded the old MBR bios boot.
Larger disk / files more partitions etc.
Personal taste: having tried several boot loaders elilo is much simpler than efiShell, grub, refind, or kernel-stub methods. I hope Slackware sticks with the new (e)lilo myself.
John
This is by far the most frustrating experience I've had with linux in many years, and is raising existential questions for me.
I have activated the "legacy mode" of the laptop, booted from the slack dvd, installed slackware and lilo. I can boot the huge kernel from the dvd and from lilo (although sometimes it hangs at one of the udevadm commands, and seems to throw udev-related errors). The generic kernel, on the other hand, does not boot, but throws many errors that fly by quickly and hangs often at a udevadm command.
I have installed elilo, and again can use it to boot the huge kernel but not the generic kernel. Also, the huge kernel does not boot consistently but sometimes hangs at one of the udevadm commands.
Booting into my system from the slack dvd with the huge kernel works sometimes but not always.
So it works, kind of, sometimes, but not consistently.
BTW, this is a brand new computer. I guess it could have hardware problems, and am running memtest right now.
I feel you're frustration
I hammered on my keyboard for about a week before success
Anyone who thinks UEFI is not a power play by Microsoft and Apple to get rid of Linux should think again.
Installing slackware from 15 floppies was much easier than installing it under UEFI.
If you can't get a consistent boot from the huge kernel you may have other problems.
When in your UEFI setup mode under the boot screen is there an option for UEFIShell?
If so try that and when you get a prompt type
help bcfg
This will describe a method from the shell to create a slot in the nvram for your linux boot.
If like my system there was no uefi shell installed you can download and install a uefi shell from http://tianocore.git.sourceforge.net
Install and use that no need to build as it runs before the OS
or
You could download and install efibootmgr to your usb boot stick. This would also allow you to add a slot to the nvram for linux https://linux.dell.com/efibootmgr/
All the above along with a stub-kernel will work on my motherboard which is a:
AsRock z77 extreme4 with UEFI firmware version 2.7
My initial breakthrough was with a 3.6.6 stub kernel using the huge config and setting all EFI configs to yes and setting the CMDLINE_CONFIG to root=/dev/sda ro then copying it to my efi partition named as Shellx64.efi and selecting boot to shell in the UEFI boot setup screen. After that the knowledge just seemed to fall into place.
John
Sorry for being so windy.
Just reread your post and see you are sometimes getting UEFI to boot. So maybe my longwindedness is of no help.
Last edited by AlleyTrotter; 12-23-2012 at 12:48 PM.
Reason: longwindedness
I really appreciate your help, John. Without your encouragement the laptop would have been thrown out the window by now.
For whatever reason the huge kernel seems to be booting with some consistency now. I will start playing with some newer kernels and configurations now.
One irritating thing is that the computer seems to ignore the boot order that I set up and insists on booting into windows unless I go into setup each time I boot and manually choose to boot from either the elilo.efi or from the internal hard drive. If it were my laptop I wouldn't care so much, but since it is for someone else it becomes one of those things that suggests to the end user that linux is more difficult, if you know what I mean.
Anyway, I'll keep going and report back here if I manage to make it work better.
Have you ever gotten it to work with a generic kernel, or a newer kernel configured basically as the generic kernel?
Anyway, I'll keep going and report back here if I manage to make it work better.
Have you ever gotten it to work with a generic kernel, or a newer kernel configured basically as the generic kernel?
Brian
Yes. I used the script slackware provides to make the initrd and put that and the generic kernel into the efi partition added an entry to elilo.conf and it worked fine.
My own system is using a 3.7.1 kernel built using a modified config-generic-3.6-rc4.x64 from testing. I usually build in the necessary file systems for booting (ext4 in my case) and don't bother using an initrd.
John
It might be worth looking at rEFInd and replacing the default bootx64.efi with it. It finds other boot efis automatically and puts them in a menu.
You might also look at compiling a generic 3.3 kernel with Pat's config in testing but with enabling the efi-stub. This will enable you to boot directly from a kernel placed in the rEFInd efi folder.
One irritating thing is that the computer seems to ignore the boot order that I set up and insists on booting into windows unless I go into setup each time I boot and manually choose to boot from either the elilo.efi or from the internal hard drive. If it were my laptop I wouldn't care so much, but since it is for someone else it becomes one of those things that suggests to the end user that linux is more difficult, if you know what I mean
When you launch efibootmgr what does it return? I mean is the boot order matching what you set?
Ciao
With the holidays I haven't been able to mess with it over the last couple of days. I'll get back to you as soon as I can, because I appreciate the help.
I've made some progress, but have some new issues. Here is an update.
I have finally manged to keep the Windows efi booter from taking over at the beginning. I moved the /boot/efi/EFI/Microsoft directory to a different location. Now the computer follows the BIOS order I set up, booting the DVD if present and otherwise launching lilo.
I have rebuilt a kernel (3.4.24) based on Pat's generic config and adding the EFI stub and now I can boot without a bunch of errors.
I haven't yet gotten elilo to work, but haven't really tried yet with the new kernel.
I'm building 3.7.1 to try with that.
My big problem right now is with resuming from hibernation. It goes into the resume mode where you see it loading the image pages, then the screen starts to get brighter and brighter and then hangs, and the X session never comes back. Suspend to RAM no longer works either. I'm going to finish building the 3.7.1 kernel before trying to solve this problem.
I don't know what you mean "launch efibootmgr".
I have been playing with refind but haven't gotten it to work yet.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.