Notesfuzzi Geschrieben 21. Januar 2009 Geschrieben 21. Januar 2009 (bearbeitet) Hallo, ich habe mir ein Script geschrieben, dass von diversen Servern einige Dateien kopiert. Das Skript läuft soweit, allerdings bekomme ich das nicht per cronjob gestartet. Der Inhalt der crontab lautet : # DO NOT EDIT THIS FILE - edit the master and reinstall. # (/tmp/crontab.XXXXOty4z0 installed on Tue Jan 20 19:15:35 2009) # (Cron version V5.0 -- $Id: crontab.c,v 1.12 2004/01/23 18:56:42 vixie Exp $) 10 19 * * * sh /local/scripts/copy_notesini_ids.sh 16 19 * * * touch /local/notesdata/test.txt Hinzugefügt habe ich die Einträge als root mittels crontab -e und am Ende der Datei noch eine Leere Zeile hinzugefügt. Auch der zweite Eintrag wird nicht ausgeführt. In /var/log/messages finde ich keine weiteren Informationen. Beim OS handelt es sich um ein SLES 10. #!/bin/bash #Linux Servers to access LINUX_SERVERS="Server1 Server2 Server3 Server4 Server5" # Target folder TARGET=/local/notesdata # Destination folder DESTINATION=/local/notesdata/server_backups #DOM_USER is the Linux account used to copy USER=notes #DATE DATE=`/bin/date +%Y-%m-%d` for machine in $LINUX_SERVERS do /bin/su - $USER -c "/usr/bin/scp $machine:$TARGET/notes.ini $DESTINATION/$machine-$DATE-notes.ini" /bin/su - $USER -c "/usr/bin/scp $machine:$TARGET/$machine.id $DESTINATION/$machine-$DATE-$machine.id" done exit 0 [/PHP] Bearbeitet 21. Januar 2009 von Notesfuzzi Zitieren
Crash2001 Geschrieben 21. Januar 2009 Geschrieben 21. Januar 2009 Schau mal hier. Evtl ist das ja das Problem, dass dein Linux die cronjobs nur ausführt, wenn sie auf diese Weise implementiert wurden. Zitieren
lupo49 Geschrieben 21. Januar 2009 Geschrieben 21. Januar 2009 (bearbeitet) Nachschauen ob crond läuftAusgaben in /var/log/cron.log sichtenHinter den Crontab-Eintrag das ">"-Symbol benutzen, um die Ausgabe in eine Datei zu lenken.Fehler aus Skript entfernen Hier mal ne überarbeitete Version: #!/bin/bash #Linux Servers to access LINUX_SERVERS="Server1 Server2 Server3 Server4 Server5" # Target folder TARGET=/local/notesdata # Destination folder DESTINATION=/local/notesdata/server_backups #DOM_USER is the Linux account used to copy USER=notes #DATE DATE=`/bin/date +%Y-%m-%d` for machine in $LINUX_SERVERS; do echo $machine `/bin/su - $USER -c "/usr/bin/scp $machine:$TARGET/notes.ini $DESTINATION/$machine-$DATE-notes.ini"` `/bin/su - $USER -c "/usr/bin/scp $machine:$TARGET/$machine.id $DESTINATION/$machine-$DATE-$machine.id"` done; exit 0 Bearbeitet 21. Januar 2009 von lupo49 Zitieren
Notesfuzzi Geschrieben 21. Januar 2009 Autor Geschrieben 21. Januar 2009 Juhuuuuuu Ich habe die crontab nach LadyPreis'Link mittels crontab /etc/crontab neu angelegt und danach funktionierte das. Zitieren
LadyPreis Geschrieben 22. Januar 2009 Geschrieben 22. Januar 2009 Juhuuuuuu Ich habe die crontab nach LadyPreis'Link mittels crontab /etc/crontab neu angelegt und danach funktionierte das. Gern geschehen :bimei Zitieren
Noerknhar Geschrieben 23. Januar 2009 Geschrieben 23. Januar 2009 Für die Zukunft: Cronjobs legt man eigtl. nicht als root an. Als normaler Benutzer "crontab -e" (an VISUAL-variable denken) reicht da völlig. Zitieren
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.