Wie kann man Dienste selber schreiben und diese als Solche einbinden?
-
Ach noch eine Frage: Wenn ich nach /etc/init.d ein eigenes_script.sh reinkopiere, wird se dann automatisch ausgeführt?
-
nein, du musst noch klarstellen in welchem runlevel dein programm gestartet werden soll. dazu erstellst du in dem ordner /etc/rc.d* ein link auf das shell-script in /etc/init.d. * steht für das runlevel (http://de.wikipedia.org/wiki/Runlevel).
mfg blan
-
Reicht es ein script nach /etc/init.d zu kopieren oder muss ich noch irgendwelche Einträge in anderen Dateien vornehmen damit es bei einem PC start startet?
-
blan schrieb:
nein, du musst noch klarstellen in welchem runlevel dein programm gestartet werden soll. dazu erstellst du in dem ordner /etc/rc.d* ein link auf das shell-script in /etc/init.d. * steht für das runlevel (http://de.wikipedia.org/wiki/Runlevel).
mfg blan
Thx! Kurze Frage: Wie schaut es mit /etc/init.d/bootmisc.sh aus?
-
blan schrieb:
nein, du musst noch klarstellen in welchem runlevel dein programm gestartet werden soll. dazu erstellst du in dem ordner /etc/rc.d* ein link auf das shell-script in /etc/init.d. * steht für das runlevel (http://de.wikipedia.org/wiki/Runlevel).
mfg blan
Die links in rc*.d, warum haben die alle ein S<nummer> am Anfang? (bzw ein K<nummer>)
Soweit ich mich informiert habe steht S für Startscript und K für Stopscript.
Aber wie verteilt man die nummern?
-
Dienstleistungssektor schrieb:
Die links in rc*.d, warum haben die alle ein S<nummer> am Anfang? (bzw ein K<nummer>)
Soweit ich mich informiert habe steht S für Startscript und K für Stopscript.
Aber wie verteilt man die nummern?
soweit ich weiss sind die nummern für die reihenfolge verantwortlich.
mfg blan
-
Müssen die dateien in /etc/init.d shellscripte sein? Oder können es auch perl, python, ruby scripte sein oder gar C/C++ Programme?
-
DLS schrieb:
Müssen die dateien in /etc/init.d shellscripte sein? Oder können es auch perl, python, ruby scripte sein oder gar C/C++ Programme?
es muss sich nur um eine ausführbare datei handeln. bei einem python-script sollte die zeile
#!/usr/bin/env python
helfen es ausführbar zu machen. ich habe es aber noch nicht ausprobiert,
mfg blan
-
DLS schrieb:
Müssen die dateien in /etc/init.d shellscripte sein? Oder können es auch perl, python, ruby scripte sein oder gar C/C++ Programme?
Das kommt auf deine Linux-Distribution an. Es könnte auch sein, dass es Shell-Skripte sein müssen. Es kann genauso gut sein, dass es kein /etc/init.d Verzeichnis bei deiner Distribution gibt.
-
Im Prinzip ist es egal, was man in /etc/init.d kopiert, da können auch binaries vorhanden sein. Die Datei muss halt ausführbar sein und ein link auf /etc/rc.X muss vorhanden sein.
Bei den meisten Distributionen gibt es entsprechende Packete, die bei der Verwaltung der init.d-Skripte helfen, sprich, wann sie gestartet werden, usw. Am besten ist es, die von Distribution gelieferten Mitteln zu benutzen, denn sie stellen sicher, dass die init.d-Skripte auf deinem System richtig gestartet werden.
-
Ihr schildert alle gerade SysV-Init - bei rgooch-Init oder initng oder... ist das wieder ein wenig anders.
Das Starten von Diensten ist Distrosache, da stellt man als Maintainer des Daemons nur ein paar Samples (ggf start-stop-daemon ansehen) zur Verfügung und gut is.