Derinit-Prozess (voninitiieren) ist beiunixoiden Systemen der ersteProzess des Systems: Er hat meistens dieProzess-ID 1. Traditionell ist er direkter oder indirekter Vorfahre aller Prozesse und adoptiert automatisch alle verwaisten Prozesse. Auf welche Art er Prozesse startet, wird unterSystem-V-orientierten Systemen wieSolaris in derDatei/etc/inittab festgelegt (SysVinit), unter denBSDs in der Datei/etc/ttys.
Linux-basierte Betriebssysteme (derinit-Prozess ist kein Teil desLinux-Kernels) verwenden traditionell ebenfalls denSystem-V-Daemon, seit 2011 begann die inzwischen weitreichende Verbreitung vonsystemd als Ersatz für den System-V-Daemon.
In Mac OS X (ab 2016 „macOS“) wurde er abVersion 10.4 „Tiger“ durchlaunchd ersetzt.
Auf heutigen Systemen werden durch denKernel auch noch andere interne Prozesse gestartet, die Aussage gilt daher primär für Benutzerprozesse.
Den init-Prozess mit demKill-Kommando zu beenden (kill -9), ist gleichbedeutend mit dem Herunterfahren des Systems. Will man während des laufenden Betriebs die Konfiguration wirkungsvoll ändern, muss nach dem Ändern derKonfigurationsdatei eingegeben werden:
kill -1 1
Unter den an System V orientierten Betriebssystemen verwaltet der init-Prozess die verschiedenenRunlevel; die BSDs kennen dagegen traditionell nur zwei Modi,single-user undmulti-user.
Da das Starten von Prozessen mit Hilfe von init auf heutigen Systemen, mit im laufenden Betrieb wechselnder Hardware, nicht mehr ganz zeitgemäß ist, gibt es Versuche, Alternativen einzuführen. Beispiele sind hierInitNG,eINIT,Upstart vonUbuntu,launchd inmacOS (ursprünglich „Mac OS X“) undsystemd inFedora.Mittlerweile kommt systemd auch inDebian undUbuntu zum Einsatz und ersetzt dort SysVinit beziehungsweise Upstart, womit systemd in den am weitesten verbreiteten Linux-Distributionen zum Einsatz kommt.[1]
Asynchron:systemd |Upstart |InitNG |launchd |cinit |runit |Minit | Jinit | eINIT | s6 |SMF | sinit |GNU Shepherd
Synchron:SysVinit |OpenRC (asynchron optional über Konfiguration aktivierbar)