Skip to content
SPECIFICTION
Get listed

runit

smarden.org

Free plan Open source macOSLinuxSelf-hosted
Visit smarden.org
Spec score 8.2 #5 of 26 in Process Monitoring Software

What it is

runit is a free Unix init scheme that supervises services and can replace sysvinit or other init schemes. It runs on GNU/Linux, BSD systems, MacOSX and Solaris, and can be adapted to other Unix operating systems. As process 1, it manages boot, normal operation and shutdown in three stages. The runsv component launches a service's run program and restarts it if it exits; an optional finish program and log service can also be used. The sv utility reports status and provides controls to start, stop, restart, pause or signal supervised services. For logs, svlogd can filter messages and write automatically rotated logs. The chpst utility changes process state and sets limits for resources such as memory, open files, process count, output size, core size and CPU time. runsvdir can start and monitor runsv processes for up to 1,000 service subdirectories. runit can supervise services alongside an existing init scheme without replacing it. The maker provides source and installation instructions, including manual installation without root access. Its documentation warns that UDP logging is unreliable and should be confined to private networks.

Spec sheet

What it does
runit is a Unix init scheme and service supervisor that can replace sysvinit or run alongside another init system.Read 15 Oct 2026 · smarden.org
Purpose
runit is a cross-platform Unix init scheme with service supervision and a replacement for sysvinit and other init schemes.Read 2 Oct 2026 · smarden.org
Support
The maker directs users to the documentation, FAQ and supervision mailing-list archive for help.Read 15 Oct 2026 · smarden.org
Automatic discovery
A symlink from /service to a service directory makes runit discover and start that service, typically within five seconds.Read 15 Oct 2026 · smarden.org
Boot lifecycle
As process 1, runit handles booting, normal operation and shutdown in three stages.Read 2 Oct 2026 · smarden.org
Current upstream version
The official install page names version 2.3.1 as the downloadable release.Read 15 Oct 2026 · smarden.org
Debian licence record
Debian records the upstream runit files as copyright Gerrit Pape and licensed BSD-3-Clause.Read 15 Oct 2026 · sources.debian.org
Dependency handling
Many dependencies are handled because a dependent service exits until its prerequisite is available, after which runsv retries it.Read 15 Oct 2026 · smarden.org
Distribution availability
The maker lists Debian, FreeBSD, OpenBSD, NetBSD, Ubuntu, Gentoo, Arch Linux, Void Linux and other distributions as including or packaging runit.Read 2 Oct 2026 · smarden.org
Distribution packaging
Void Linux packages runit 2.3.1 with a GNU make build and BSD-3-Clause licence metadata.Read 15 Oct 2026 · github.com
Documentation
The source distribution includes a doc directory and man directory, while the website links to manuals for each major command.Read 15 Oct 2026 · smarden.org
Explicit dependencies
For services needing ordered startup or shutdown, administrators place sv commands in run and finish scripts.Read 15 Oct 2026 · smarden.org
Foreground requirement
A supervised daemon must stay in the foreground, with the run script normally using exec to replace the shell.Read 15 Oct 2026 · smarden.org
Independent adoption
Wikipedia lists Void Linux, antiX and Dragora as distributions using runit as their default init system.Read 15 Oct 2026 · en.wikipedia.org
Independent alternatives
AlternativeTo lists runit as free and open source and shows more than ten alternatives including Dinit, OpenRC, systemd, sysvinit and s6.Read 15 Oct 2026 · alternativeto.net
Independent architecture detail
Wikipedia says stage 2 launches runsvdir, which creates a watchdog per service and restarts daemons that die.Read 15 Oct 2026 · en.wikipedia.org
Independent description
Wikipedia describes runit as a daemontools reimplementation that initializes, supervises and terminates Unix-like system processes.Read 15 Oct 2026 · en.wikipedia.org
Installation
The maker provides a source archive and instructions to compile and install runit, including manual installation without root access.Read 2 Oct 2026 · smarden.org
Installation method
The official installation downloads runit-2.3.1.tar.gz, compiles it and installs the programs with package/install.Read 15 Oct 2026 · smarden.org
Licence
runit is free software under a three-clause BSD-like licence.Read 15 Oct 2026 · smarden.org
Limit: migration risk
The replacement guide advises keeping an alternate boot method and restoring the former init if migration fails.Read 15 Oct 2026 · smarden.org
Limit: portability work
Although stage 2 is portable, the maker says stages 1 and 3 must be adapted to each operating system.Read 15 Oct 2026 · smarden.org
Limit: service authoring
Using runit requires administrators to create and maintain executable per-service scripts rather than conventional /etc/init.d scripts.Read 15 Oct 2026 · smarden.org
Log transport limit
svlogd documentation warns that UDP logging is unreliable and should be used only in private networks.Read 2 Oct 2026 · smarden.org
Logging
runsv can supervise a separate logging process and connect the service output to it without requiring both processes to restart together.Read 15 Oct 2026 · smarden.org
Maker identity
The official pages identify Gerrit Pape as the project contact and maintainer.Read 15 Oct 2026 · smarden.org
Manual installation
A non-root installation can compile and place binaries in a user's own bin directory, with documentation and man pages supplied in the source tree.Read 15 Oct 2026 · smarden.org
Operating systems
The maker says runit runs on GNU/Linux, *BSD, MacOSX and Solaris, and can be adapted to other Unix operating systems.Read 2 Oct 2026 · smarden.org
Optional init replacement
The maker documents using runit's service supervision alongside a system's current init scheme without replacing it.Read 2 Oct 2026 · smarden.org
Packaging
The maker describes stages 1 and 3 as distribution-specific scripts, allowing package systems to adapt them.Read 15 Oct 2026 · smarden.org
Parallel startup
After one-time initialization, runit starts services in parallel and also shuts them down in parallel.Read 15 Oct 2026 · smarden.org
Process control
The sv command controls services, sends signals and reports service status through runit's supervisor interface.Read 15 Oct 2026 · smarden.org
Process limits
The chpst utility can change process state and set limits including memory, open files, process count, output size, core size and CPU time.Read 2 Oct 2026 · smarden.org
Recent release
Wikidata records runit 2.3.1 as a stable release dated 7 February 2026.Read 15 Oct 2026 · wikidata.org
Reliability and size
The maker says runit is optimized for reliability and small size, with minimal code in process 1.Read 2 Oct 2026 · smarden.org
Resource controls
The chpst utility controls process environment, resource limits and user or group privileges.Read 15 Oct 2026 · smarden.org
Runlevels
The project provides runsvchdir for switching among directories of service symlinks that act as runlevels.Read 15 Oct 2026 · smarden.org
Service capacity
runsvdir starts and monitors runsv processes for up to 1,000 service subdirectories.Read 2 Oct 2026 · smarden.org
Service control
The sv program reports service status and supports commands to start, stop, restart, pause and signal supervised services.Read 2 Oct 2026 · smarden.org
Service directories
Services are defined by executable run scripts in per-service directories, commonly stored under /etc/sv.Read 15 Oct 2026 · smarden.org
Service recovery
runsv starts a service's run program and restarts it if it exits, with an optional finish program and log service.Read 2 Oct 2026 · smarden.org
Service supervision
Each service runs under a dedicated runsv supervisor that restarts it when it exits unless configured otherwise.Read 15 Oct 2026 · smarden.org
Support channel
The maker directs runit discussion to the supervision mailing list and asks users to contact the list rather than the author privately.Read 2 Oct 2026 · smarden.org
Supported systems
The maker lists GNU/Linux, BSD variants, macOS and Solaris, with adaptation possible for other Unix systems.Read 15 Oct 2026 · smarden.org
svlogd
The bundled svlogd program is recommended for service logging and supports reliable log handling for supervised services.Read 15 Oct 2026 · smarden.org
Three-stage init
When used as PID 1, runit uses stage 1 for boot tasks, stage 2 for ongoing supervision and stage 3 for shutdown or reboot.Read 15 Oct 2026 · smarden.org

Plans and prices

runit Free No commercial limits stated Read 2 Oct 2026 · smarden.org

Every runit plan and price →

Strong points and limits

Strong points

  • Restarts services when their run program exits.
  • Supports supervision alongside an existing init scheme.
  • Sets limits for several process resources.
  • Can monitor up to 1,000 service subdirectories.

Limits

  • UDP logging is described as unreliable.
  • The maker provides source and compile instructions for installation.

Who it suits

runit suits Unix administrators who need service supervision, process controls and logging, either as an init replacement or alongside an existing init scheme. It also supports manual installation without root access.

Verdict

runit documents its service controls, logging, resource limits and operating-system support. Its UDP logging limitation matters if you plan to use that transport.

Where Specifiction places it

Alternatives to runitAll alternatives →

PM2 From $79/mo · Free plan 9.0 Visit