Runlevel scripte - Scripts selbst erstellen
Wer einen eigenen Dienst in den BootBoot-Ablauf einhängen möchte kann das nach folgendem Bauplan tun:
cd /etc/init.d
dort ein beliebiges Script kopieren (oder den skeleton verwenden). Es gibt im Internet und in entsprechenden Foren schon vorgefertigte Scripte für allerlei Einsatzzwecke.
Diese Sektion muss noch angepasst werden:
### BEGIN INIT INFO # Provides: named # Required-Start: $network $remote_fs $syslog # Required-Stop: # Default-Start: 3 5 # Default-Stop: # Description: Starts internet domain name server (DNS) BIND 9 ### END INIT INFO
(Beispiel von named)
Zur Erklärung der einzelnen Zeilen: Povides: <== der Name des Dienstes Required-Start: <== Liste der Dienste die VOR dem erstellten Dienst gestartet werden müssen Default-Start: <== Liste der Runlevel, in denen der Dienst gestartet wird Description: <== kurze Beschreibung des Dienstes
Danach muss das Script auch ausführbar gemacht werden, damit es auch gestartet werden kann. Das erreicht man mit
chmod +x meinScript
Wenn dieses Attribut gesetzt ist, muss es auch noch aktiviert werden:
insserv meinScript
Diesen Schritt kann man auch über Yast -> System -> Runlevel- Editor vollziehen.
Damit das Script auch aufgerufen werden kann, muss man noch den SuSE-spezifischen Link erstellen:
cd /usr/sbin oder cd /sbin ln -s /etc/init.d/meinScript rcmeinScript
Den Test, ob das Script startet und funktioniert, kann man mit diesen beiden Befehlen machen:
rcmeinScript start rcmeinScript stop
Der erste startet, der zweite stoppt das Script.
Weitere Dokumentation findet man mit
man init
TIP: Mit dem Befehl
rc_status -v
kann das DONE, FAILED, SKIPPED etc ausgegeben werden. Wenn die Zeile der Ausgabe nicht stimmt, probiere
rc_status -v2
damit wird die Ausgabe zwei Zeilen höher ausgegeben