supervision - discussion about system services, daemon supervision, init, runlevel management, and tools such as s6 and runit
 help / color / mirror / Atom feed
From: Bernhard Graf <list-supervision@augensalat.de>
To: supervision@list.skarnet.org
Subject: Re: using runit as init
Date: Sat, 5 Jan 2008 01:06:50 +0100	[thread overview]
Message-ID: <200801050106.53334.list-supervision@augensalat.de> (raw)
In-Reply-To: <200801031722.26992.mike@geekgene.com>

Mike Buland wrote:

> In general, if you want to retain init-style runlevels, then you
> don't want to replace SysV init.  I have switched to runit entirely,
> it manages every service, and it does indeed support "runlevels." 
> See
> http://smarden.org/runit/runsvchdir.8.html for details.  Each runit
> runlevel is really just another service directory, runsvchdir changes
> which service directory you are using.  the runit "init" program is
> provided mainly for compatibility.
>
> There is no reason for runlevels to be numbered, and the kernel
> offers no support for runlevels, nor do any bootloaders.  When you
> pass 2, 3, 4, S, etc. to the kernel, it is ignored as an unrecognized
> parameter, but made available to running processes a number of ways. 
> Runit makes the commandline as well as any variables that are set on
> the kernel commandline available to the script 1 (and maybe 2 and 3,
> but I use it in 1).  Therefore if you set a variable in the
> bootloader on the kernel commandline named "runlevel" then you can
> use that in script 1 to change your runlevel.
>
> However, I would say based on the way you are using runit as process
> 1, you would probably be better off sticking with sysvinit and adding
> runsvdir to your inittab (a script very similar to the example script
> 2 provided with runit is just what you want).

As I wrote in my previous email I want an easy way to switch from SysV 
init to runit (or may be another one that supports process 
supervision). Since I have to care for a couple of production systems 
this switch must meet some conditions:
- full support for the old init system
- keep manual adjusting to a minimum

ATM I'm starting daemontools svscan from inttab on those hosts in 
addition to the normal SysV init stuff. This works but is not really 
pretty - I'd like to have a more consistent administration interface.

The goal is to install runit with RPM, reboot and then link the 
daemontools things into runit's service directory.

> As for the runlevel code, I got this from this very list a long time
> ago, give it a shot in script 1:
>
> # Set runlevel to:
> # - single       if kernel has param: S
> # - RUNLEVELNAME if kernel has param: runlevel=RUNLEVELNAME
> # - default      if kernel has no params or unable to set requested
> runlevel grep -q '\(^\| \)S\( \|$\)' /proc/cmdline &&
> runlevel='single' runsvchdir ${runlevel:-default} || runsvchdir
> default

Good tip! /proc/cmdline seems a smart way. Question 1 resolved. :-)

> utmp/wtmp support is done, I believe, through an external program,
> check out the getty*/finish scripts that are provided with the
> default distribution.

utmpset only clears lines from utmp, there is no way of setting anything 
as the name suggest.

-- 
Bernhard Graf


  reply	other threads:[~2008-01-05  0:06 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-03 20:51 Bernhard Graf
2008-01-04  0:22 ` Mike Buland
2008-01-05  0:06   ` Bernhard Graf [this message]
     [not found]   ` <12EC84FDD73F4BD8A78E7501EB19F1E2@home.internal>
2008-01-05  7:45     ` rehan khan
2008-01-05 23:17       ` Bernhard Graf
2008-01-08  7:11         ` Vincent Danen
2008-01-08 22:28           ` Bernhard Graf
2008-01-09  2:05             ` Vincent Danen
2008-01-09 23:06               ` Bernhard Graf
2008-01-09 23:34                 ` Mike Buland
2008-01-09 23:51                   ` Charlie Brady
2008-01-10  9:22                     ` Bernhard Graf
2008-01-10  9:20                   ` Bernhard Graf
2008-01-10 20:06                     ` Mike Buland
2008-01-11  7:58                       ` Bernhard Graf
2008-01-11 14:30                         ` Mike Buland
2008-01-12 10:18                           ` Bernhard Graf
2008-01-12 17:13                             ` supervising (Re: using runit as init) Charlie Brady
2008-01-12 17:32                               ` supervising mysql (Re: supervising (Re: using runit as init)) Charlie Brady
2008-01-13  4:40                             ` using runit as init Vincent Danen
2008-01-13 15:36                               ` Charlie Brady
2008-01-13 18:28                                 ` Mike Buland
2008-01-13 18:39                                   ` Charlie Brady
2008-01-13 18:49                                     ` Mike Buland
2008-01-14  3:55                                       ` Vincent Danen
2008-01-14 15:11                                         ` Charlie Brady
2008-01-14 15:21                                           ` Vincent Danen
     [not found]                                     ` <6A64B0D384404190ACB76E0A376CD148@home.internal>
2008-01-13 21:06                                       ` rehan khan
2008-01-14  3:53                                 ` Vincent Danen
     [not found]                             ` <CDFFB8AF013F4762AE02CF6A1BDCB27A@home.internal>
2008-01-13 10:35                               ` rehan khan
2008-01-14  3:50                                 ` Vincent Danen
2008-01-13 18:52                             ` Mike Buland
     [not found]                     ` <85040AD9CA634253A8FDB9F7DA6BD200@home.internal>
2008-01-10 22:08                       ` rehan khan
2008-01-11  1:28                         ` Charlie Brady
     [not found]                   ` <C1A5323F485E4A75B75ADB58B664E35E@home.internal>
2008-01-10 21:56                     ` rehan khan
2008-01-09 23:35                 ` KORN Andras
2008-01-10  8:39                   ` Bernhard Graf

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200801050106.53334.list-supervision@augensalat.de \
    --to=list-supervision@augensalat.de \
    --cc=supervision@list.skarnet.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).