====== Runit ======
* Standard-Init-System von VoidLinux
* Startet Dienste (stage 2) automatisch neu, wenn sie absürzen
===== Stages =====
Hat 3 Stages:
* Stages sind was in den Dateien /etc/runit/1 2 3 liegt
* **Stage 1** -> One-Time-Tasks
* alles zum starten des Systems nur einmal gemacht werden muss
* Dateisysteme mounten, udev initalisieren usw.
* führt /etc/rc.conf aus
* führt /etc/runit/functions aus
* Führt die Scripte in /etc/runit/core-services aus
* das ist auch der Ort wo man selbst etwas hinzufügen sollte wenn man etwas initialisieren muss
* **Stage 2** -> Starten der Dienste
* Startet und überwacht die Dienste
* Stellt runlevel zur Verfügung
* Ausgeführt wird:
* Wenn Runlevel "single" an den Kernel übergeben wurde
* /etc/runit/runsvdir/single
* Wenn ein anderes runlevel angeben wurde und das Verzeichnis vorhanden ist
* /etc/runit/runsvdir%%/%%//Runlevel//
* Wenn kein Runlevel angegeben wurde oder das entsprechende Verzeichnis nicht vorhanden ist:
* /etc/runit/runsvdir/default
* Linked /etc/runit/runsvdir/current auf das aktuell ausgeführte Runlevel
* **Stage3**
* Beim Herunterfahren/Neustarten des Systems
==== Dateien ====
^Datei ^Beschreibung ^
|/etc/runit/|Enthält u.a. die Stages|
|/etc/runit/runsvdir/|Verzeichnis enthält die Run-Level die in Stage 2 ausgeführt werden \\ \\
* default -> enthält die Konfiguration die ausgeführt wird, wenn kein Runlevel angegebn wurde oder für das angegebene Runlevel kein Verzeichnis existiert
* single -> Enthält die Konfiguration für den Single-User-Mode
|
==== Bestandteile ====
^Name ^Beschreibung ^
|runsvchdir|Wechselt (u.a. Abhängig vom Runlevel) in das jeweilige Verzeichnis in /etc/runit/runsvdir/. Verlinkt das aktuelle Verzeichnis nach /etc/runit/runsvdir/current und das vorher nach current gelinkte nach previouse|
|runsvdir|Durchläuft ein Verzeichnis und startet für jeden Prozess (Datei) einen runsv-Prozess der wiederum den Service in dieser Datei ausführt.|
|runsv|Führt eine Service-Datei aus und überwacht den Service \\ \\ Wird durch runsvdir gestartet und überwacht|
==== Sonstiges ====
* /etc/runit/ctrlaltdel -> definiert was passiert wenn Ctrl+Alt+Del gedrückt wird
====== HowTo ======
^Problem ^Mögliche Lösung ^
|xbps hinter Proxy|XPBS nutzt Environment-Variable http_proxy als Proy-Einstellung. \\ \\ Einmalig: export http_proxy="http://\\Proxy-Adresse\\:\\Port\\" \\ \\
* Proxy-Adresse: Domain-Name oder IP des Proxy
* Port: Optional der zu verwendende Port
\\ \\ Hinweis: Wichtig ist das "http://" ansonsten scheint es nicht zu funktionieren |
|IP-Adresse ermitteln|Standardmäßig ist kein ifconfig installiert. \\ \\ ip addr erfüllt den gleichen Zweck|
====== Problembehebung ======
^Problem ^Mögliche Lösung ^
|/etc/udev/rules.d existiert nicht|Einfach mir toot-Rechten anlegen - udevd wertet das Verzeichnis aus|
|/etc/hdparm.conf existiert nicht|Einfach anlegen - wird ausgewertet. \\ \\ Vorrausetzung ist natürlich das hdparm installiert ist|