[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Avoid reboot by loading initramfs again



On Mon, 20 Oct 2014 11:13:38 +0100
Darac Marjal <mailinglist@darac.org.uk> wrote:

> On Sun, Oct 19, 2014 at 10:36:23PM +0200, Jimmy Thrasibule wrote:
> > Hello,
> > 
> > I wonder if one can avoid a complete reboot of the system just by
> > halting the operating system but right after load the initramfs and
> > restart from there?
> 
> I don't think you can quite do what you're thinking, but there are
> other ways around it.
> 
> > 
> > Basically when we reboot, we only want to reset the operating system
> > state but rarely to do all the hardware checks again. And for a
> > kernel update, there is kexec.
> 
> If you've got as far as halting  the system, then kexec or a full
> reboot are your only options. This is due to the fact that you've
> unmounted all the block  devices, probably  powered them  off and so
> on. I  guess you could try  jumping back into an  initramfs (that you
> loaded  into memory before shutdown), but you might as  well reset
> the kernel at that point. It'll only take a few seconds more.
> 
> The other alternative,  for a "lighter" reboot is to  drop to
> runlevel 1 (or single-user.target, in  systemd's parlance). This
> will  stop all the mutli-user services (X, httpd, sshd and so  on)
> and bring you to a point where only  a minimal number of  services
> are running (file  systems are mounted,  the  local  console  is
> active and  so  on).  You  could  use "checkrestart" (from the
> debian-goodies package) to check what remaining services are using
> outdated libraries and restart them manually. At this point, you can
> come back up to runlevel 2-5 (systemd: multi-user.target) in order to
> bring the system back up to full capacity.
> 
> I think  it depends  on what  you're trying to  achieve and  what
> you're trying to avoid.

Windows 8 achieves fast shutdown and boot times by what is basically a
partial hibernation, but of the system only. Since the shutdown is
fast, I assume the dynamic initrd is prepared much earlier, and kept
updated from time to time.

-- 
Joe


Reply to: