Cron führt Script nicht aus
Liebe Listenleserin, ich habe hier ein seltsames Phänomen... Ich möchte mittels Cron.daily ein Script zum Backup ausführen. Wenn ich das Script, das in /etc/cron.daily liegt direkt ausführe (als Root), (/etc/cron.daily/zz-backup2l ) klappt alles. Wenn es vom Cronjob ausgeführt wird, wird das Script zwar gestartet (die Meldungen, die im Script mittels kdialog auf den Bildschirm gezaubert werden erscheinen), aber das Backup-Script selbst wird nicht ausgeführt. Ich weiß nicht, wo ich nach Fehlermeldungen suchen kann. (Unter Suse 7.1 wurden mir immer emails über die Cron-Aktivität an root gesendet - wo kann ich das unter 8.0 einstellen?) Die Ausführungsrechte müßten stimmen: -----------------Verzeichnis cron.daily ---------------------- hansa10:/etc/cron.daily # l insgesamt 26 drwxr-xr-x 2 root root 1024 Okt 6 01:39 ./ drwxr-xr-x 46 root root 4096 Okt 25 11:57 ../ -rwxr-xr-x 1 root root 152 Apr 21 2002 aaaa_info* -rwx------ 1 root root 924 Mär 25 2002 clean_catman* -rwx------ 1 root root 1740 Mär 25 2002 clean_core* -rwx------ 1 root root 1169 Mär 25 2002 do_mandb* -rwxr-xr-x 1 root root 51 Mär 23 2002 logrotate* -rwx------ 1 root root 1788 Feb 2 2002 suse.de-backup-rc.config* -rwx------ 1 root root 1974 Feb 2 2002 suse.de-backup-rpmdb* -rwx------ 1 root root 573 Feb 7 2002 suse.de-check-battery* -rwx------ 1 root root 1194 Feb 6 2002 suse.de-clean-tmp* -rwx------ 1 root root 461 Feb 7 2002 suse.de-clean-vi* -rwx------ 1 root root 459 Feb 7 2002 suse.de-cron-local* -rwxr-xr-x 1 root root 683 Mär 25 2002 tetex* -rwx------ 1 root root 1504 Mär 25 2002 updatedb* -rwxr-xr-x 1 root root 616 Okt 21 22:58 zz-backup2l* -rwxr-xr-x 1 root root 143 Apr 21 2002 zzzz_info* ------------------------------------------------------------------------ Das Script sieht folgendermaßen aus: -----------------zz-backup2l Backup-Script ------------------------------- #!/bin/bash # The following command invokes 'backup2l' with the default configuration # file (/etc/backup2l.conf). # # (Re)move it or this entire script if you do not want automatic backups. # # Redirect its output if you do not want automatic e-mails after each backup. # Meldung auf x anzeigen /opt/kde2/bin/kdialog -msgbox "Achtung: Backup2l wird gestartet. Bitte Ende des Backups vor dem Heru nterfahren des Rechners abwarten!" -display localhost:0.0 & ! which backup2l > /dev/null || nice -19 backup2l -b # Meldung auf x anzeigen /opt/kde2/bin/kdialog -msgbox "Backup2l ist beendet" -display localhost:0.0 & ---------------------------/zz-backup2l Backup-Script -------------------- Wer hat eine Idee? Danke schon mal grüße carsten
On 2002-10-25 12:06:00, Carsten Ungewitter wrote:
-----------------zz-backup2l Backup-Script ------------------------------- #!/bin/bash ... ! which backup2l > /dev/null || nice -19 backup2l -b
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Ist das im Pfad? Gib doch besser den kompletten Pfad an, da cron nicht zwingend das selbe Environment wie der User root hat. HTH V.
On Fre, 25 Okt 2002 at 12:09 (+0200), Kroll, Volker wrote:
On 2002-10-25 12:06:00, Carsten Ungewitter wrote:
-----------------zz-backup2l Backup-Script ------------------------------- #!/bin/bash ... ! which backup2l > /dev/null || nice -19 backup2l -b
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Ist das im Pfad? Gib doch besser den kompletten Pfad an, da cron nicht zwingend das selbe Environment wie der User root hat.
oder sorge dafür, dass der Pfad so sitzt, dass which was findet. <man which> Which takes one or more arguments. For each of its argu ments it prints to stdout the full path of the executables that would have been executed when this argument had been entered at the shell prompt. It does this by searching for an executable or script in the directories listed in the environment variable PATH using the same algorithm as bash(1). Also eine Zeile der Art export PATH=/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/bin:/usr/bin vor den Aufruf. BTW: Warum die doppelte Verneinung (*wenn nicht which kein Ergebnis bringt, dann ...*)? which backup2l > /dev/null && nice -19 backup2l -b Jan
Hallo Carsten Ungewitter, Trying to kill the keyboard, Carsten Ungewitter produced at Fre, 25 Okt 2002: > ! which backup2l > /dev/null || nice -19 backup2l -b Das Problem ist, dass bei cron kein login durchgeführt wird, dadurch wird auch die ~/.alias-Datei nicht eingelesen und - siehe da - der Alias 'which' ist nicht definiert. -- Ciao Uwe Linux IS user friendly - it's just selective about who its friends are! Germany, Oberhausen ICQ# 7619831 PGP-ID "0xEB0BA301" Key fingerprint = 70C1 A0B9 5879 E44B 3CBE AD00 2B33 E9DC EB0B A301
Hy, Am 02/11/24@11:47 schrieb Uwe Perl:
Das Problem ist, dass bei cron kein login durchgeführt wird, dadurch wird auch die ~/.alias-Datei nicht eingelesen und - siehe da - der Alias 'which' ist nicht definiert. ^^^^^
$ ls -l /usr/bin/which -rwxr-xr-x 1 root root 94 19. Feb 2002 /usr/bin/which -- bye maik
Hallo Maik, Maik Holtkamp schrieb am 24.11.2002 (12:09):
Am 02/11/24@11:47 schrieb Uwe Perl:
Das Problem ist, dass bei cron kein login durchgeführt wird, dadurch wird auch die ~/.alias-Datei nicht eingelesen und - siehe da - der Alias 'which' ist nicht definiert. ^^^^^
$ ls -l /usr/bin/which -rwxr-xr-x 1 root root 94 19. Feb 2002 /usr/bin/which
Um es zu komplettieren: antje@tribble:~> which which antje@tribble:~> locate which [...] /usr/bin/which [...] antje@tribble:~> /usr/bin/which which /usr/bin/which antje@tribble:~> alias | grep which alias which='type -p' antje@tribble:~> type -t which alias antje@tribble:~> type -t /usr/bin/which file Gruß, Antje, leise vor sich hin z"which"ernd -- My operat~1 system unders~1 long filena~1 , does yours?
Hy, Am 02/11/24@12:32 schrieb Antje M. Bendrich:
Hallo Maik,
Maik Holtkamp schrieb am 24.11.2002 (12:09):
Am 02/11/24@11:47 schrieb Uwe Perl:
Das Problem ist, dass bei cron kein login durchgeführt wird, dadurch wird auch die ~/.alias-Datei nicht eingelesen und - siehe da - der Alias 'which' ist nicht definiert. ^^^^^
$ ls -l /usr/bin/which -rwxr-xr-x 1 root root 94 19. Feb 2002 /usr/bin/which
Um es zu komplettieren:
antje@tribble:~> alias | grep which alias which='type -p'
Huch, ja, sorry: maikk@syl:~ $ type -t which file denn: maik@syl:~ $ cat /etc/debian_version 3.0 -- bye maik
participants (6)
-
Antje M. Bendrich
-
Carsten Ungewitter
-
Jan.Trippler@t-online.de
-
Kroll, Volker
-
Maik Holtkamp
-
Uwe Perl