etherius Geschrieben 21. November 2005 Teilen Geschrieben 21. November 2005 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
t3quill4b0y Geschrieben 21. November 2005 Teilen Geschrieben 21. November 2005 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 21. November 2005 Autor Teilen Geschrieben 21. November 2005 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? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 21. November 2005 Teilen Geschrieben 21. November 2005 Moin, Gibt es da sowas wie update-rc.d unter debian oder muss ich das manuell in die rc*.d verzeichnisse linken? Letzteres ist der Fall. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Joe Kinley Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 Sowas hab ich schonmal versucht, und es ging nicht... Yast musste damals genutzt werden (Suse 9.1 glaub ich war des)... sehr sehr schade... und sehr nervig.. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 22. November 2005 Autor Teilen Geschrieben 22. November 2005 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? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 Hallo, existiert denn die Datei: /sp1-r2/sp1.all/release/blubb/release/server/bin/current/linux/sp1_server_n.sh ist sie ausführbar? Was steht da drinnen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 22. November 2005 Autor Teilen Geschrieben 22. November 2005 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mr-blister Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 Hi, ist das alles? ./wrapper sp1_server_n.conf Kein #!/bin/sh ./wrapper sp1_server_n.conf ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 jupp: -rwyr-xr-x das ist sicher nur ein Schreibfehler du meinst nicht y sondern x oder? ./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? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 22. November 2005 Autor Teilen Geschrieben 22. November 2005 das ist sicher nur ein Schreibfehler du meinst nicht y sondern x oder? ^^ 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 ^^ Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 Warum kannst du denn keinen absoluten Pfad angeben? Liegt 'wrapper' immer wo anders? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 22. November 2005 Autor Teilen Geschrieben 22. November 2005 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. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 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' Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 22. November 2005 Autor Teilen Geschrieben 22. November 2005 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 ... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 aaah okay, sorry. Guck dir vielleicht auch mal die Kommandos 'dirname', 'basename' an... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 22. November 2005 Autor Teilen Geschrieben 22. November 2005 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 ?!? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 22. November 2005 Autor Teilen Geschrieben 22. November 2005 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?!? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 IMHO kill <pid> bzw. kill -9 <pid> Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 22. November 2005 Autor Teilen Geschrieben 22. November 2005 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 Heißt soviel wie der Kill Befehl sendet automatisch ein SIGKILL oder wie? sorry, das weiß ich nicht wirklich, man müsste sich mal startproc/killproc ansehen, dazu hab ich allerdings gerade keine Zeit.... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
cane Geschrieben 22. November 2005 Teilen Geschrieben 22. November 2005 "man kill" hilft weiter mfg cane Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kristian Geschrieben 30. November 2005 Teilen Geschrieben 30. November 2005 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 1. Dezember 2005 Teilen Geschrieben 1. Dezember 2005 Stimmt, klar - daran habe ich im Moment nicht gedacht, sorry. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
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.