Re: runit equivalent of "telinit u"

From: Colin Booth <cathexis_at_gmail.com>
Date: Mon, 25 Aug 2014 20:23:31 -0700

On Fri, Aug 22, 2014 at 8:20 AM, Joe M <joe9mail_at_gmail.com> wrote:
> Hello,
>
> Just wanted to check regarding this. Is there an equivalent command
> of "telinit u" for runit?
There isn't one. The closest you're going to get is `sv e $service'
which will down the service, exit the runsv process, which will then
cause runsvdir to restart it. This is of course assuming you don't
have a down file in the service directory or started the service with
`sv once'.
>
> I maintain a read-only root filesystem and when there is any upgrade,
> the old file (runit-init or runsv) is still used (lsof shows the file
> having been deleted but still used by the said process). telinit u
> reloads the init with the new file. Just wanted to check how that
> would work with runit.
Barring having a clean lsof table there's no real need. The deleted
runsvdir and runsv binaries are happily in memory doing their
supervision work. Any new services will start with a "normal"
(non-deleted) runsv but there should be no difference between the
deleted and non-deleted ones.

As for runsv-init, there's no way that I know of to recover that
particular instance of the file since I don't think it's possible to
tell runit to re-exec into itself. Again though, it doesn't matter
since the running processes should still be monitoring their control
fifos and any interactions should be with the in-memory program.
>
> Thanks
> Joe

Cheers!

-- 
"If the doors of perception were cleansed every thing would appear to
man as it is, infinite. For man has closed himself up, till he sees
all things thru' narrow chinks of his cavern."
  --  William Blake
Received on Tue Aug 26 2014 - 03:23:31 UTC

This archive was generated by hypermail 2.3.0 : Sun May 09 2021 - 19:44:18 UTC