[SOLVED] Can /boot/efi/EFI/Slackware/elilo.conf be manually edited?
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.
Yes, you can. After all, if you edit the entries manually, you can add as many entries as you want and have them with a configuration that suits your needs. Also is good to learn the syntax by editing that file manually, so if you ever find a problem you can fix it on your own at the moment.
Last edited by slac; 05-02-2020 at 09:29 PM.
Reason: spellchecking
I've just started learning how to work with EFI on my X1 Carbon so I'm no expert, but no, you don't have to run anything after updating elilo.conf. Since I triple boot Windows, Slackware, and OpenBSD I actually use refind but it works pretty much the same way. I just create menu entries in refind.conf and when I reboot, they are just there.
The script: eliloconfig automates some things but it only adds one entry by default, it usually is the Slackware operative system and boots it up using the vmlinuz-huge image and initrd.gz
Quote:
Originally Posted by ardya
Yes, the goal is to add multiple entries and not have to rely on eliloconfig.
Does something have to be run after updating the elilo.conf?
No, it is not necessary to run any script after manually editing elilo.conf, if you run, ie: the script eliloconf after manually editing elilo.conf, you are going to overwrite the changes you manually made.
There is only one thing you need to do after editing elilo.conf and that is to add the files that you are going to use in the new entries at elilo.conf, ie: If you are going to add an entry to boot up slackware using the official generic kernel, you will need to manually copy from /boot the vmlinuz-generic-version file to /boot/efi/EFI/Slackware or to whatever your ELILO entry is located. Do not make symbolic links of these files, because an EFI partition uses FAT32 format and such format does not support symbolic links, just as I said before, just copy the vmlinuz and initrd files that you use in your new elilo entries.
The elilo.efi file is needed to boot up the system. That file is just a copy of the elilo-*.efi files that are stored in /boot, mine is a copy of elilo-x64_64.efi it is just renamed from such name to elilo.efi and it is stored at /boot/efi/EFI/Slackware. It only needs to be done once but I just said it in case you lost that file, so you do not have to run eliloconf and lost your elilo.conf changes.
Also you can create another ELILO entry (different from /boot/efi/EFI/Slackware, ie: /boot/efi/EFI/SlackwareELILO) and know you know how to manually get all the files that the eliloconfig script creates.
Last edited by slac; 05-02-2020 at 09:38 PM.
Reason: spellchecking
Also you can create another ELILO entry (different from /boot/efi/EFI/Slackware, ie: /boot/efi/EFI/SlackwareELILO) and know you know how to manually get all the files that the eliloconfig script creates.
If you do something like that, you will need to use the command efibootmgr. That program manipulates the UEFI boot manager.
First, you will need to create a new boot variable and add it to the boot order, ie:
Then you can set the boot order as whatever you need or like, to see the boor order and boot numbers of each entry just execute the command "efibootmgr" as root.
To set the boot order, do something like this:
Code:
efibootmgr -o 0000,0001,0002
Those are just examples, be sure to adapt the commands to your system.
I have multiboot computers some of which still boot with LILO but
most of the newer ones have EFI.
Sometimes I used to cause myself trouble by upgrading -current and forgetting to run
Lilo or eliloconfig and then I'd have to reboot the system from a usb or from another partition
and go in and manually edit and make repairs. I've spent many
a past midnight hour trying to figure out what I had done and how to get
my system back up again. I don't regret that learning curve.
I've had some flavours of Debian in the past and I've tried to learn grub2 and found it
to be quite unfriendly to me but I did reach the level that I could fix grub2 problems.
I can't say that I ever liked grub.
I have been using ReFind for quite some time and it saves me from ever having to edit
the boot directory files manually any more. ReFind works great for me and has saved my bacon
many times. I've even been able to patch complex (to me, anyway) problems with Windows10
through the use of Refind and the help pages on the Refind website.
If you do something like that, you will need to use the command efibootmgr.
That's one way to have multiple EFI boot options. As an example, below is an elilo.conf that offers a selection of 4 boot kernels with a default. If the EFI menu is invoked (press tab during boot) then all 4 boot options are displayed for selection.
I'm testing EFI booting using Virtualbox 6.0.20 as hypervisor, and slackware-current.
I was able to compile a newer kernel, cp'd the kernel and newly created initrd to /boot/efi/EFI/Slackware, edited elilo.conf and added new entry pointing to new kernel and initrd, rebooted and got the elilo menu with the two entries I have listed. Rebooted two more times just to make sure things were working, but on the second reboot instead of getting the elilo menu, I'm dumped to Virtualbox UEFI shell. Subsequent reboots dump me to this shell. I can type exit and am in the UEFI configuration menu (looks like a bios configuration menu), and from there I can boot from file and eventually find elilo.efi which then loads the elilo menu.
I don't know if this is an issue with Virtualbox's implementation of UEFI, or something on the VM I'm using to test with.
I've attached a screenshot of the UEFI shell I'm dumped into at boot, maybe it can provide some more information on my EFI configuration.
If you've installed an OS in your VirtualBox session, chances are it installed a boot loader on the EFI System Partition (ESP). Most OSes register these boot loaders with the firmware, which remembers them and boots them automatically. One quirk of VirtualBox is that it usually forgets these boot manager entries. The result is that the VM boots up into the EFI shell by default.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.