Benefits
How to replace init
How to use runit with current init
How to use dietlibc
Frequently asked questions
Runlevels
Service dependencies
A collection of run scripts
The runit program
The runit-init program
The sv program
The runsvdir program
The runsvchdir program
The runsv program
The svlogd program
The chpst program
The utmpset program
To subscribe send an empty email to <supervision-subscribe@list.skarnet.org>.
Mailing list archives are available at skarnet.org, and gmane.org.
runit performs the system's booting, running and shutting down in three stages:
The program runit-init is intended to replace /sbin/init. The command init 0 tells runit to halt the system, and init 6 to reboot. Runlevels are handled through the runsvdir and runsvchdir programs. Service dependencies are resolved automatically.
runit is optimized for reliability and small size. The amount of code in process no 1 should be minimal.
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 20 16 ? S 2002 0:02 runitI recommend doing this; for instructions, see How to use dietlibc.
 # strings /proc/1/exe |grep Id
 $Id: runit.c,v 1.7 2002/02/13 09:59:52 pape Exp $
 # uptime
  11:59:13 up 365 days, 23:22,  3 users,  load average: 0.01, 0.02, 0.00
 # ps axuw |head -n20
 USER       PID %CPU %MEM   VSZ  RSS TTY      STAT START   TIME COMMAND
 root         1  0.0  0.0    20   16 ?        S     2002   0:07 runit
 root         2  0.0  0.0     0    0 ?        SW    2002   0:00 [keventd]
 root         3  0.0  0.0     0    0 ?        SWN   2002   0:51 [ksoftirqd_CPU0]
 root         4  0.0  0.0     0    0 ?        SW    2002 144:38 [kswapd]
 root         5  0.0  0.0     0    0 ?        SW    2002   0:08 [bdflush]
 root         6  0.0  0.0     0    0 ?        SW    2002   7:24 [kupdated]
 root       168  0.0  0.0  1652  168 ?        S     2002   0:27 /usr/sbin/cron
 root       174  0.0  0.0    36   24 ?        S     2002   1:06 runsvdir /var/service log: ...............................................................................................
 root       176  0.0  0.0    20   20 ?        S     2002   0:00 runsv qmail-send
 root       177  0.0  0.0    20   20 ?        S     2002   0:00 runsv getty-5
 root       178  0.0  0.0    20   20 ?        S     2002   0:00 runsv getty-4
 root       179  0.0  0.0    20   20 ?        S     2002   0:00 runsv getty-3
 root       180  0.0  0.0    20   20 ?        S     2002   0:00 runsv getty-2
 root       182  0.0  0.0    20   20 ?        S     2002   0:00 runsv socklog-unix
 root       183  0.0  0.0  1256    4 tty5     S     2002   0:00 /sbin/getty 38400 tty5 linux
 root       184  0.0  0.0  1256    4 tty3     S     2002   0:00 getty 38400 tty3 linux
 root       185  0.0  0.0    20   20 ?        S     2002   0:00 runsv socklog-klog
 root       186  0.0  0.0    20   20 ?        S     2002   0:00 runsv ssh
 root       187  0.0  0.0  1256    4 tty4     S     2002   0:00 getty 38400 tty4 linux
 # pstree
 runit-+-bdflush
       |-cron
       |-gcache
       |-keventd
       |-ksoftirqd_CPU0
       |-kswapd
       |-kupdated
       `-runsvdir-+-runsv-+-multilog
                  |       `-qmail-send-+-qmail-clean
                  |                    |-qmail-lspawn
                  |                    `-qmail-rspawn---qmail-remote
                  |-4*[runsv---getty]
                  |-2*[runsv-+-multilog]
                  |          `-socklog]
                  |-runsv-+-multilog
                  |       `-sshd-+-sshd---sshd---bash---bash---pstree
                  |              `-sshd---sshd---rsync
                  |-runsv---clockspeed
                  |-runsv-+-dnscache
                  |       `-multilog
                  |-runsv---apache-ssl-+-9*[apache-ssl]
                  |                    |-gcache
                  |                    `-4*[multilog]
                  |-7*[runsv-+-multilog]
                  |          `-tcpserver]
                  |-4*[runsv-+-multilog]
                  |          `-tinydns]
                  |-runsv---uncat
                  |-2*[runsv-+-multilog]
                  |          `-tcpsvd]
                  |-runsv-+-svlogd
                  |       `-tcpsvd-+-smtpfront-qmail
                  |                `-smtpfront-qmail---qmail-queue
                  `-runsv-+-svlogd
                          `-tcpsvd---bincimap-up---bincimapd