On 08/27/2015 03:58 AM, Paul Cartwright wrote:
ok, I am running fedora 22, along with ubuntu & Windows 10. a new kernel
got installed last night, and I rebooted, but grub doesn't show it, and
still defaults to the ubuntu OS. I am new to this efibootmgr
A few things happen in sequence for Linux on UEFI systems.
After the system powers on, it loads and runs the UEFI firmware. The
firmware initializes hardware according to a local configuration, and
then searches the UEFI boot list for the first available boot device.
That list is what efibootmgr lists and edits. In the system you've
shown, Fedora, Ubuntu, and Windows all have their own boot loaders
installed in the list. You can select a boot loader from that list
(typically) by hitting the F12 key on your keyboard during the UEFI boot
sequence.
UEFI then loads shim.efi, which loads grub2. In your case, it is
loading the grub2 binary that Ubuntu installed, which searches for a
configuration file in a different location than the grub2 binary that
Fedora installed. You don't see your new Fedora kernel there, because
Fedora is updating a different configuration file. You might have other
options, but you should have at least these two: 1) you can manually
edit the Ubuntu grub.cfg file and copy the kernel sections from Fedora
there and 2) you can hit F12 to choose whether you want to load Fedora
or Ubuntu's grub.
After UEFI loads grub2, grub2 looks for its configuration file, parses
it, and gives you a menu to select which kernel to boot.
grub2 then loads the kernel and initrd into RAM, and passes execution
there. The initrd contains a small filesystem in which /sbin/init is
run, and the "real" root filesystem is mounted. The root filesystem is
pivoted so that the real root filesystem is on /, and its /sbin/init is run.
grub2-mkconfig works, but grub2-install /dev/sda gives me an error
grub2-install /dev/sda
grub2-install: error: /usr/lib/grub/x86_64-efi/modinfo.sh doesn't exist.
Please specify --target or --directory.
You don't need to use grub2-install on UEFI systems (and rarely on BIOS
systems either). It would normally build a custom grubx64.efi, but
doing so would break under Secure Boot.
this shows that the default is ubuntu. all I want is to update this & make the newest fedora kernel the default.
You could:
# efibootmbr -o 0002,0004,0003,0000,0001
I thought when a new kernel was installed, grub would automagically add
it... not with efi?
It does, as long as you've configured UEFI to use Fedora's grub.
--
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
Have a question? Ask away: http://ask.fedoraproject.org