====== 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|