Hi! Ich hab das Problem, dass ein Script problemlos läuft sobald ich es von Kommandozeile starte ... wenn ich es im Hintergrund (durch ein anderes Programm, Cron oder was auch immer starte) geht es nicht. Das Script läuft als root, es sollte also dieselben Rechte haben. Was kann ich hier prüfen? lg
Martin Hochreiter schrieb:
Hi!
Ich hab das Problem, dass ein Script problemlos läuft sobald ich es von Kommandozeile starte ... wenn ich es im Hintergrund (durch ein anderes Programm, Cron oder was auch immer starte) geht es nicht. Das Script läuft als root, es sollte also dieselben Rechte haben.
Was kann ich hier prüfen?
Pfade vorganden bzw. richtig angegeben? Werden alle notwendigen Variablen richtig gesetzt? Gruß
Ralf Prengel wrote:
Pfade vorganden bzw. richtig angegeben? Werden alle notwendigen Variablen richtig gesetzt?
Gruß
Die Pfade sind vorhanden, wir haben es nun auch mit einem cd PFAD; /PFAD/./Befehl versucht um dem Befehl mittels cd PFAD eine "Anfangspunkt" im Filesystem zu geben. Wir exportieren auch dezitiert alle Variablen nochmals. Kann der Unterschied daran liegen dass es nicht wirklich im Terminal läuft (pty/1 bei ps -A) sondern als Hintergrundprozess. lg
Hi On Tuesday 29 November 2005 12:45, Martin Hochreiter wrote:
Ralf Prengel wrote:
Pfade vorganden bzw. richtig angegeben? Werden alle notwendigen Variablen richtig gesetzt?
Gruß
Die Pfade sind vorhanden, wir haben es nun auch mit einem cd PFAD; /PFAD/./Befehl versucht um dem Befehl mittels cd PFAD eine "Anfangspunkt" im Filesystem zu geben. Wir exportieren auch dezitiert alle Variablen nochmals.
Sorry wegen Klugscheißerei, aber wenn Fachbegriff dann richtig. Meinst du eventuell "explizit". "dezitiert" kenn ich nicht.
Kann der Unterschied daran liegen dass es nicht wirklich im Terminal läuft (pty/1 bei ps -A) sondern als Hintergrundprozess.
Eventuell solltest du mal ein paar mehr Details zum Skript verraten. Ich sehe nicht wie dieser thread sonst ohne Glaskugel ein Ergebnis produzieren soll. Was läuft denn nicht? Eventuell mal ein paar Ausgaben in irgendeine Log-Datei einbauen. mfg Axel
Axel Heinrici wrote:
Hi,
Sorry wegen Klugscheißerei, aber wenn Fachbegriff dann richtig. Meinst du eventuell "explizit". "dezitiert" kenn ich nicht.
Ha. jetzt kann ich auch mal meinen Senf dazu geben ;-) Synonyme für dezitiert sind tatkräftig, energisch, aktiv, vital, agil, handlungsorientiert, energiegeladen, resolut, entschieden, entschlossen, zielbewusst, zielsicher, zielstrebig, unbeirrbar, etc ... Es heisst so viel wie Nachdruck. Betont mit Nachdruck, akzentuiert, pointiert, zugespitzt etc. Hoffe das reicht als Liste für die Erklärung des Wortes.
Eventuell solltest du mal ein paar mehr Details zum Skript verraten. Ich sehe nicht wie dieser thread sonst ohne Glaskugel ein Ergebnis produzieren soll. Was läuft denn nicht? Eventuell mal ein paar Ausgaben in irgendeine Log-Datei einbauen.
Das sehe ich genauso. Wenn Du schon von einem bestimmten Skript sprichst, dann bau doch selber ein paar Log-Dateien oder echos zum testen rein und schau ob das Skript a) überhaupt angeworfen wird b) bis wohin es kommt. Viele Grüße und viel Erfolg bei der Suche nach dem Ergebnis Michael
Hallo, Michael Post schrieb:
Axel Heinrici wrote:
Hi,
Sorry wegen Klugscheißerei, aber wenn Fachbegriff dann richtig. Meinst du eventuell "explizit". "dezitiert" kenn ich nicht.
Ha. jetzt kann ich auch mal meinen Senf dazu geben ;-)
Ich auch, weil...
tatkräftig, energisch, aktiv, vital, agil, handlungsorientiert, energiegeladen, resolut, entschieden, entschlossen, zielbewusst, zielsicher, zielstrebig, unbeirrbar, etc ...
...sind eher Synonyme für "dezidiert", nicht für "dezitiert". Dezitieren könnte man höchtens als gegenteil von "zitieren" interpretieren. Gruß Kimmo
Es heisst so viel wie Nachdruck. Betont mit Nachdruck, akzentuiert, pointiert, zugespitzt etc. Hoffe das reicht als Liste für die Erklärung des Wortes.
Eventuell solltest du mal ein paar mehr Details zum Skript verraten. Ich sehe nicht wie dieser thread sonst ohne Glaskugel ein Ergebnis produzieren soll. Was läuft denn nicht? Eventuell mal ein paar Ausgaben in irgendeine Log-Datei einbauen.
Das sehe ich genauso. Wenn Du schon von einem bestimmten Skript sprichst, dann bau doch selber ein paar Log-Dateien oder echos zum testen rein und schau ob das Skript a) überhaupt angeworfen wird b) bis wohin es kommt.
Viele Grüße und viel Erfolg bei der Suche nach dem Ergebnis
Michael
Hallo Kimmo, K. Elo wrote:
Ich auch, weil...
tatkräftig, energisch, aktiv, vital, agil, handlungsorientiert, energiegeladen, resolut, entschieden, entschlossen, zielbewusst, zielsicher, zielstrebig, unbeirrbar, etc ...
...sind eher Synonyme für "dezidiert", nicht für "dezitiert". Dezitieren könnte man höchtens als gegenteil von "zitieren" interpretieren.
Uuups.. Fettnäppfchen. Du hast Recht! Ich habe dezidiert nachgeschlagen, nicht dezitiert. Viele Grüße Michael
Martin Hochreiter schrieb:
Ralf Prengel wrote:
Pfade vorganden bzw. richtig angegeben? Werden alle notwendigen Variablen richtig gesetzt?
Gruß
Die Pfade sind vorhanden, wir haben es nun auch mit einem cd PFAD; /PFAD/./Befehl versucht um dem Befehl mittels cd PFAD eine "Anfangspunkt" im Filesystem zu geben. Wir exportieren auch dezitiert alle Variablen nochmals. ^^^^^^^^^ Du meinst dediziert?
Da will ich aber trotzdem nachhaken :) Wenn das script im Hintergrund bzw. via cron läuft hat die shell _kein_ Environment, d.h: Keine der Variablen aus /etc/profiles, /etc/bashrc ist vorhanden. Aus man bash: -----8<---- --noprofile Do not read either the system-wide startup file /etc/profile or any of the personal initialization files ~/.bash_profile, ~/.bash_login, or ~/.profile. By default, bash reads these files when it is invoked as a login shell (see INVOCATION below). --norc Do not read and execute the personal initialization file ~/.bashrc if the shell is interactive. This option is on by default if the shell is invoked as sh. -----8<------ Ist in dem script z.B ein: export PATH=/bin:/usr/bin... enhalten? Oder werden _alle_ Aufrufe von Tools wie sed, awk, grep usw und alle Dateien auf die das Sript sonst Zugriff braucht, mit _absolutem_ Pfad aufgerufen? Zur Kontrolle schreib mal /usr/bin/env >/tmp/testscript.log direkt nach #!/bin/sh in Dein Script.
Kann der Unterschied daran liegen dass es nicht wirklich im Terminal läuft (pty/1 bei ps -A) sondern als Hintergrundprozess.
lg
-- Gruss Bernd
Am Dienstag, den 29.11.2005, 12:28 +0100 schrieb Martin Hochreiter:
Hi!
Ich hab das Problem, dass ein Script problemlos läuft sobald ich es von Kommandozeile starte ... wenn ich es im Hintergrund (durch ein anderes Programm, Cron oder was auch immer starte) geht es nicht.
wie lautet die fehlermeldung?
Das Script läuft als root, es sollte also dieselben Rechte haben.
Was kann ich hier prüfen?
ausführungsrechte pfad-angabe such-pfad für ausführbare dateien ($PATH) -- einen schönen Tag noch DI Rainer Klier Abteilung IT - Entwicklung ECOLOG Logistiksysteme GmbH Bauernstraße 11, A-4600 Wels Tel. ++43/7242/66200 Fax ++43/7242/66200-200 mailto:kra@ecolog.at http://www.ecolog.at
startet das Script etwas auf der kde ? fehlt ein export ? wenn du es als cron starteten willst reicht es nicht in der ersten Zeile des Scripte "#! /bin/sh" stehen zu haben *.sh sollte das Script heisen (meine Erfahrung) nimmst du kcron oder machst du das per Konsole "crontab -u root -e" Am Dienstag, 29. November 2005 12:28 schrieb Martin Hochreiter:
Hi!
Ich hab das Problem, dass ein Script problemlos läuft sobald ich es von Kommandozeile starte ... wenn ich es im Hintergrund (durch ein anderes Programm, Cron oder was auch immer starte) geht es nicht. Das Script läuft als root, es sollte also dieselben Rechte haben.
Was kann ich hier prüfen?
lg
Martin Hochreiter
Ich hab das Problem, dass ein Script problemlos läuft sobald ich es von Kommandozeile starte ... wenn ich es im Hintergrund (durch ein anderes Programm, Cron oder was auch immer starte) geht es nicht. Das Script läuft als root, es sollte also dieselben Rechte haben.
Am Dienstag, 29. November 2005 12:46 schrieb Uwe Großkinsky:
wenn du es als cron starteten willst reicht es nicht in der ersten Zeile des Scripte "#! /bin/sh" stehen zu haben *.sh sollte das Script heisen (meine Erfahrung)
das stimmt so einfach nicht, das ist einfach Unfug. Sorry. Dam Manpage (5) zu crontab sagt dazu: The ``sixth'' field (the rest of the line) specifies the command to be run. The entire command portion of the line, up to a newline or % character, will be executed by /bin/sh or by the shell specified in the SHELL variable of the cronfile. Percent-signs (%) in the command, unless escaped with backslash (\), will be changed into newline characters, and all data after the first % will be sent to the command as standard input. Damit ist klar: ein /bin/sh (oder $SHELL) wird benutzt um das Kommando auszuführen. Also gelten hier die gleichen Regeln. Problematisch bei cron kann sein: - man will auf /dev/tty ausgeben - falsche Rechte - fehlende Umgebungsvariablen bzw. Werte nicht gesetzt. Abhilfe: printenv Ausgabe aller Umgebungsvariablen und diese vergleichen beim Aufruf via cron oder "per Hand" Am besten: das script mal posten. Bye Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 92 04 87 1 Fax: +49(721) 92 04 87 2 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de Internet-Telefonie: www.skype.com Benutzer: juergen.vollmer
Ich antworte hier mal gesammelt für alle: Add Cron: Dies war nur ein Test, ob es vielleicht mit dem Cron des roots läuft ... Fehlanzeige Das Script wird durch eine Backupsoftware (Veritas Netbackup) aufgerufen und läuft auch bis zu einem Step (ein Sync Befehl auf einem Suse Enterprise 9 Server mit Scalix Mail drauf) - dort endet das Ding ohne weitere Fehlermeldung (auch bei Ausgabeumleitung) mit Exit 1. Keine Log Einträge nix ... Per Kommandozeile läufts durch.
Hallo, Am Tue, 29 Nov 2005, Martin Hochreiter schrieb:
Ich antworte hier mal gesammelt für alle:
Add Cron: Dies war nur ein Test, ob es vielleicht mit dem Cron des roots läuft ... Fehlanzeige
Das Script wird durch eine Backupsoftware (Veritas Netbackup) aufgerufen und läuft auch bis zu einem Step (ein Sync Befehl auf einem Suse Enterprise 9 Server mit Scalix Mail drauf) - dort endet das Ding ohne weitere Fehlermeldung (auch bei Ausgabeumleitung) mit Exit 1. Keine Log Einträge nix ...
Per Kommandozeile läufts durch.
Und wir sind keine Hellseher. -dnh -- Signaturen sammeln ist eine Droge. Aber die gibt es ganz legal im Usernetz. Und sie sind nicht Ärtztlich verboten. (Jedenfalls noch nicht.) [WoKo in dag°]
Martin Hochreiter wrote:
Hi!
Ich hab das Problem, dass ein Script problemlos läuft sobald ich es von Kommandozeile starte ... wenn ich es im Hintergrund (durch ein anderes Programm, Cron oder was auch immer starte) geht es nicht. Das Script läuft als root, es sollte also dieselben Rechte haben.
Was kann ich hier prüfen?
Nromalerweise sind die Environmentvariablen anders, wenn dein Script per Cron gestartet wird, z.b. weniger Pfade im $PATH drin. Gib im Script (falls es ein shellscript ist) einfach mal 'set" an, dann kannst du vergleichen.
participants (11)
-
Axel Heinrici
-
Bernd Obermayr
-
David Haller
-
Dr. Jürgen Vollmer
-
Holger Hellmuth
-
K. Elo
-
Martin Hochreiter
-
Michael Post
-
Rainer Klier
-
Ralf Prengel
-
Uwe Großkinsky