Zum Inhalt springen

Daemon Launcher?


Empfohlene Beiträge

Geschrieben

Moin moin!

Kann mir von euch jemand sinnvolle Tipps geben bzw. "simpel" erklären wie die Grundstruktur eines Daemon Launchers unter Linux aussieht?

starten eines Prozesses mit

/etc/init.d/prozess start

ist ja nicht das problem ... auch nicht das abfangen der parameter im script ...

aber wie funktioniert das mit dem beenden dann?

Muss ich da nicht irgendwie die PID für kennen um dem Daemon ein SIGTERM zu schicken?

Bin für jede Hilfe dankbar.

mfg

Eth

Geschrieben

du meinst ein rc-skript. Um ein programm zu kontrollieren gibt es diverse andere programme: startproc, checkproc,killrpoc. Aber schau mal im /etc/rc.d/ nach einem File das skeleton heisst. Das ist ein vorgefertigtes rc-skript welches du nur auf dein programm anpassen musst. Ist sauber dokumentiert.

cu

Geschrieben

ja genau sowas hatte ich gesucht, dank dir :)

Weißt du zufällig auch noch wie ich unter SuSE die runlevel config aktualisieren kann ohne yast zu verwenden??? Gibt es da sowas wie update-rc.d unter debian oder muss ich das manuell in die rc*.d verzeichnisse linken?

Geschrieben

Ich hab mir jetzt das skeleton script umgeschrieben auf meine "Bedürfnisse" umgebastelt aber bekomme jetzt einen fehler:


/etc/init.d/sp1_server start


Starting symmedia SP/1 Server startproc: cannot execute /sp1-r2/sp1.all/release/blubb/release/server/bin/current/linux/sp1_server_n.sh: Exec format error   failed

Weiß jemand wo hier das Problem liegt? kann der keine shellscripts ausführen oder wie soll ich die Meldung interpretieren?

Geschrieben

existiert denn die Datei:

/sp1-r2/sp1.all/release/blubb/release/server/bin/current/linux/sp1_server_n.sh
Sicher dat :)
ist sie ausführbar?
jupp: -rwyr-xr-x
Was steht da drinnen?

./wrapper sp1_server_n.conf

Geschrieben
jupp:

-rwyr-xr-x

das ist sicher nur ein Schreibfehler du meinst nicht y sondern x oder? :D


./wrapper sp1_server_n.conf

Füge mal bitte das shebang hinzu a la
#!/bin/bash

Dein Skript sollte nun wie folgt aussehen:

#!/bin/bash

/pfad/zu/wrapper sp1_server_n.conf

'wrapper' ist auch ausführbar?

Geschrieben
das ist sicher nur ein Schreibfehler du meinst nicht y sondern x oder? :D

^^

Füge mal bitte das shebang hinzu a la

#!/bin/bash

Dein Skript sollte nun wie folgt aussehen:

#!/bin/bash

/pfad/zu/wrapper sp1_server_n.conf

Jo, jetzt krieg ich auch Fehlermeldungen. Es liegt daran dass er den wrapper nicht im aktuellen verzeichnis findet (aktuelles verzeichnis ist / weil ich das script von dort ausgeführt habe). Gibt es eine Möglichkeit rauszufinden in welchem Verzeichnis das aktuell ausführende script liegt? mit pwd find ich ja nur das working directory raus ...

'wrapper' ist auch ausführbar?

Jupp ^^

Geschrieben
Warum kannst du denn keinen absoluten Pfad angeben? Liegt 'wrapper' immer wo anders?

wrapper ist der Java Service Wrapper http://wrapper.tanukisoftware.org

Wird dazu verwendet um Java anwendungen zu starten, stoppen etc.

Logischerweise kann ich unsere Anwendung ja hin installieren wo ich will ... daher wäre das schon recht praktisch wenn ich das ganze mit relativem pfad machen kann ... sonst muss ich bei jeder installation die ganzen shellscripte neu erstellen lassen.

Geschrieben

which wrapper
hilft dir evtl. dabei. Du musst ja nur den Pfad, unter dem sich 'wrapper' befindet zum Systempfad hinzufügen, das geht mit
export PATH=$PATH/pfad/zu/wrapper/
z.B.
export PATH=$PATH/usr/bin/blubb/

und das noch in die .profile eintragen, dann sollte ein ausführen des 'wrapper' ohne absoluten Pfad möglich sein...aber dann ohne ./ <-- also nicht ./wrapper sondern nur 'wrapper'

Geschrieben

Das hilft mir nicht wirklich weiter. Jede unserer Anwendungen hat den wrapper dabei ... die anwendungen sind 3 an der zahl ... der name wrapper ist überall hart verdrahtet ... daher kann ich auch nicht für jeden einen unterschiedlichen nehmen...

wird schwierig ... habe aber rausgefunden dass der komplette aufrufpfad im $0 parameter steht ... mal schauen was man da noch so raus fabrizieren kann ...

Geschrieben
Warum funzt das hier eigentlich nicht:


if [ test -r /etc/init.d/rc3.d/S99_sp1_server ]; then

 rm /etc/init.d/rc3.d/S99_sp1_server

fi

probiers doch mal so:

if [ -r /etc/init.d/rc3.d/S99_sp1_server ]; then

 rm /etc/init.d/rc3.d/S99_sp1_server

fi

oder so:

if test -r /etc/init.d/rc3.d/S99_sp1_server; then

 rm /etc/init.d/rc3.d/S99_sp1_server

fi

oder so:

test -r /etc/init.d/rc3.d/S99_sp1_server &&

 rm /etc/init.d/rc3.d/S99_sp1_server

Geschrieben

Dankeeeee ... jetz hab ich nur noch ein prob :)

das doofe Teil von wrapper reagiert auf den killproc -TERM nicht ...

welchen code schickt eigentlich ein Kill-Befehl standard an die Anwendung?!?

Geschrieben

Heißt soviel wie der Kill Befehl sendet automatisch ein SIGKILL oder wie?

Hmmm ... hoffentlich krieg ich das noch hin dass der doofe wrapper auf nen SIGTERM reagiert ... killen iss doof weil dann unser server nicht richtig runter fährt .... naja egal ich krieg das schon hin

erstmal danke für deine hilfe :)

mfg

Eth

  • 2 Wochen später...
Geschrieben
Moin,

Moin,

Letzteres ist der Fall.

Stimmt nicht, das tool heißt insserv. gibt es mindestens seit 8.1, was älteres hab ich gerade nicht greifbar.

Um also deamon 'foo' in Runlevel 3 und 5 zu starten folgendes Kommando:

insserv foo,start=3,5

Für nähreres:

man insserv

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...