runit

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 8.42.18.17 (talk) at 17:54, 20 April 2018 (Linux isn't an operating system). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

runit
Original author(s)Gerrit Pape
Initial releaseFebruary 10, 2004; 20 years ago (2004-02-10)[1]
Stable release
2.1.2 / August 10, 2014; 9 years ago (2014-08-10)[2]
Written inC, Shell
Operating systemLinux, BSD, Mac OS X, Solaris
TypeInit daemon
LicenseNew BSD License
Websitesmarden.org/runit/ Edit this on Wikidata

runit is an init scheme for Unix-like operating systems that initializes, supervises, and ends processes throughout the operating system. Runit is a reimplementation of the daemontools[3] process supervision toolkit that runs on many Linux-based operating systems, as well as, the Mac OS X, *BSD, and Solaris operating systems. Runit features parallelization of the start up of system services, which can speed up the boot time of the operating system.[4]

Runit is an init daemon, so it is the direct or indirect ancestor of all other processes. It is the first process started during booting, and continues running until the system is shut down.

Design

Runit focuses on being a small, modular, and portable codebase. Runit is split into three stages: one time initialization, process supervision, and halting or rebooting. While the first and third stages must be adapted to the specific operating system they are running on, the second stage is portable across all POSIX compliant operating systems.[5]

Usage

Runit can be used either as a drop-in replacement[6] for sysvinit, or as a service supervisor with sysvinit as the parent PID1 process run from inittab.[7] The RubyWorks stack of software able to run Ruby on Rails incorporated Runit into its suite.[8] Runit is the default init system for Void Linux.[9]

References

  1. ^ Pape, Gerrit (2004-02-10). "runit-1.0.0 release". gmane.comp.sysutils.supervision.general (Mailing list). Retrieved 2013-12-10. {{cite mailing list}}: Unknown parameter |mailinglist= ignored (|mailing-list= suggested) (help)
  2. ^ Pape, Gerrit (2009-10-04). "runit - installation". smarden.org. Retrieved 2014-08-10.
  3. ^ Purcell, Steve (2007-11-11). "Init Scripts Considered Harmful". sanityinc.com. Retrieved 12 December 2013.
  4. ^ Pape, Gerrit. "runit - benefits". Retrieved 23 April 2013.
  5. ^ Pape, Gerrit. "runit - benefits". Retrieved 23 April 2013.
  6. ^ Pape, Gerrit. "replacing init". Retrieved 11 August 2014.
  7. ^ Pape, Gerrit. "use with traditional init". Retrieved 11 August 2014.
  8. ^ "Process management with runit". rubyworks.rubyforge.org. Retrieved 14 April 2014.
  9. ^ "VoidLinux". Retrieved 22 August 2015.

External links