[ConsoleKit] extend ConsoleKit to support fast reboot on OpenSolaris x86
Jörg Barfurth
Joerg.Barfurth at Sun.COM
Wed Sep 9 08:58:22 PDT 2009
David Zeuthen schrieb:
>>> Why would some user of CK (e.g. a program) ever want select the slow
>>> method?
>>>
>>> I think the point I was trying to make is that you only want 'slow' if
>>> you are trying to debug some oddball problem. Or if your hardware
>>> broken (in which case you edit a configuration file that reboot(8)
>>> will read so it always select 'slow').
>> I am not sure how fast/slow reboot works on Linux, but on Solaris they
>> work as follows:
>>
>> - Fast reboot does not actually reboot the machine, it just reboots the
>> Solaris kernel. So if you have a multi-OS machine, you do not go back
>> to the GRUB menu to select a different OS to boot into. This reboot
>> is much faster than a slow reboot.
>> - Slow reboot reboots the machine so you go back to the GRUB menu so
>> you can select a different OS to boot into.
>>
>> I'd say about 75% of the time I want a fast reboot because I just want
>> to reboot my machine into my Solaris kernel and I want it to be fast.
>>
>> However, there are plenty of times that I also want to reboot into a
>> different OS on my machine. Without having the choice, I'd have to
>> shut down, and then power up my machine to get back to the GRUB menu,
>> which is annoying. Personally, I would prefer to be able to choose in
>> the GUI.
>
> This assumes that it's a good idea to use GRUB UI to select what OS to
> start. Which I think is wrong. It also assumes that people has
> multiple OSes on a box which, for non-developers, I also think is
> wrong....
>
If you look back at Jedy's original mail, he mentions that a next step
would be offer a way to select a 'boot environment' to boot into.
'Boot environments' usually are differently modified clones of the same
OS, which you can use for safer updating/patching, but also for other
things. Even non-developers use them at times.
But even without this multi-boot is still quite common for end-user
machines that run Linux or Solaris at all.
> Instead, as I tried to explain, you'd configure this from within the
> OS in a "Startup Disk" preference capplet (which is why having a
> button called "Startup Disk" in the shutdown dialog might be useful).
Yes, you can select the next active boot environment or a fast vs. slow
preference for the next reboot from within the running OS, if you have
the necessary authorization.
But that means that when you trigger a reboot through CK, you may have
no idea what that will end up doing. If we offer a DBus API for reboot
or shutdown (whether CK is the appropriate place for such an API is a
different discussion), shouldn't this API also offer control over what
that action will actually do. Or should such settings be 'tunnelled'
past CK in an entirely platform-specific manner.
And the original query was also concerned with offering the choice from
GDM when not logged in (assuming the system is configured to give a GDM
user that authorization).
Forcing users to log in (what do you do, if the current BE is
misconfigured and does not let you log in?) to be able to boot into a
different BE or OS from there is very onerous for those that need it.
> Or, in lieu of such UI, you'd edit /etc/grub.conf. And reboot(8) would
> only do fast reboot if the grub.conf (or whatever) defaults to a
> kernel from the OS you are currently running.
>
I'm not user such heuristics are a sane approach. In any case the
Solaris feature allows configuring a system default fast/cold and a
one-time override, so reboot(1M) actually has options to select
fast/cold reboot explicitly. But using it requires going to a shell and
knowing how to run things on the shell with privileges.
> Note that in Fedora, we don't _even_ show GRUB anymore in the default
> install (the user has to hold down e.g. the SHIFT key to get to it).
>
The point is to give the user a way to get to it when he needs it.
Without having to jump through hoops.
- Jörg
--
Joerg Barfurth Phone: +49 40 23646662
Software Engineer mailto:joerg.barfurth at sun.com
Desktop Technology
Thin Client Software http://www.sun.com/software/sunray/
Sun Microsystems GmbH http://www.sun.com/software/javadesktopsystem/
Sitz der Gesellschaft:
Sun Microsystems GmbH, Sonnenallee 1, D-85551 Kirchheim-Heimstetten
Amtsgericht Muenchen: HRB 161028
Geschaeftsfuehrer: Thomas Schroeder, Wolfgang Engels, Wolf Frenkel
Vorsitzender des Aufsichtsrates: Martin Haering
More information about the ConsoleKit
mailing list