why is gurb-menu hidden as default?
Peter Jones
pjones at redhat.com
Mon Feb 6 16:58:30 UTC 2012
On 02/06/2012 11:40 AM, Josh Boyer wrote:
> On Mon, Feb 6, 2012 at 11:36 AM, Matthew Garrett<mjg59 at srcf.ucam.org> wrote:
>> On Mon, Feb 06, 2012 at 05:25:08PM +0100, Reindl Harald wrote:
>>
>>> and why are there so many noobs with questions like "after a kernel
>>> update my machine does no longer boot" if this decision would
>>> be smart?
>>
>> The solution to "My kernel update doesn't boot" should be "Automatically
>> detect that that happened, give the user that information and fall back
>> to the old kernel", not "Always show the user a menu that they almost
>> always don't care about". Solve the actual problem.
>
> Agreed. Having a simple one-shot boot facility would be awesome. If anyone
> has ideas on how to accomplish this, please let me know. I'd be willing to
> look at implementing this.
So, this is something we could probably do with what we've got now. It'd
require some changes to kernel's .spec, and probably a few minor changes in
grubby, and something would have to provide a systemd service. Here's the
basic algorithm:
1) kernel's %post/%posttrans adds the new stanza using new-kernel-package/
grubby, but doesn't make the new kernel default.
2) kernel's %post saves new kernel version someplace (/etc/sysconfig/newkernel
for the purpose of this text, we can decide if there's a more appropraite
place)
3) set next boot kernel to the new kernel with grub2-reboot
4) during boot up, a systemd service compares uname to /etc/sysconfig/newkernel
a) if they match, it worked - use grubby to make it the default
b) if they don't match, it failed - do whatever it is you guys want to do.
The only problem here is that when we get to 4b, we don't *really* know
that we've attempted to boot the new kernel - the user could have manually
intervened and booted the old (or some other) kernel. Dunno how to avoid that.
--
Peter
More information about the devel
mailing list