**Runit** is a UNIX init system with service supervision — a replacement for sysvinit and other init schemes. It's small, fast, and follows the Unix philosophy of doing one thing well. Written by Gerrit Pape, it's been around since the early 2000s and is battle-tested.
## Philosophy
Runit is built on the same ideas as daemontools (by DJ Bernstein): each service gets its own supervision directory with a `run` script, and a supervisor process (`runsv`) keeps it alive. If the service crashes, it's automatically restarted. No complex service files, no binary logs, no centralized daemon — just scripts and processes.
Runit is suitable for users who want a minimal supervision-based init with automatic service restart on crash. Its service model (one executable `run` script per service) is straightforward and requires no dependency declarations.
Users coming from Void Linux will find Runit familiar. For users who need dependency management between services, OpenRC or Dinit may be more appropriate.