Anzeige:
Results 1 to 2 of 2

Thread: Problem mit cronjob und logrotate.sh

  1. #1
    Registrierter Benutzer
    Join Date
    30.01.2012
    Posts
    16

    Problem mit cronjob und logrotate.sh

    Liebe Mitmenschen,

    wahrscheinlich bin ich wieder mal total blind, dennoch habe ich meine Tischplatte mittlerweile total zernagt und brauche eure Hilfe:

    Nach einer Neuinstallation meines Debiansystems, auf welchem erfolgreich mein IPTABLES-Gateway, DHCP und Samba läuft, läuft mir aus total unerklärlichen Gründen permanent die "/var/log" voll.

    Um hier Herr zu werden, gebe ich seit Tagen den Befehl "logrotate -f /etc/logrotate.conf" aus. Da ich aber nicht permant vor dem Rechner sitze und auch noch andere Dinge im Leben zu erledigen habe, wollte ich diesen Befehl nun automatisch mit cronjob ausführen. Hierzu habe ich eine ausführbare Skriptdatei namens "/etc/init.d/logrotate.sh" mit eben dem oben genannten Befehl erstellt. Diese Batchdatei funktioniert auch bei ihrem Aufruf einwandfrei.

    --------------------------------------------------------------------------------------

    Wenn ich jetzt in cronjob -e folgendes eintrage:

    "*/5 * * * * /etc/init.d/logrotate.sh"

    bekomme ich folgende Systemmail:

    "From BLUB
    To root

    Subject: Cron <BLUB> root /etc/init.d/logrotate.sh (failed)

    Typical BLUB

    /etc/init.d/logrotate.sh: 2: logrotate: not found"

    --------------------------------------------

    Kann mir wer sagen, was ich hier übersehe? Bin wohl mittlerweile zu übermüdet, um das Problem zu erkennen. Alle angesprochenen Dateien SIND vorhanden. Und nein, sie muss dann nicht alle 5 Minuten ausgeführt werden, macht mir aber das testen viel leichter, weil ich nicht alle Tage den Fehler finden möchte!

    Lieber Gruß
    die Kichererbse

  2. #2
    Registrierter Benutzer
    Join Date
    30.12.2001
    Posts
    444
    Hi Kichererbse,

    normalerweise würde ich sagen, dass das Script logrotate, wenn es aus dem Paket logrotate kommt und Deine eigenes ist dann /etc/init.d/logrotate und nicht /etc/init.d/logrotate.sh heisst. Die Fehlermeldung

    Code:
     /etc/init.d/logrotate.sh: 2: logrotate: not found
    deutet darauf hin, dass Du im Script logrotate.sh das Programm logrotate aufrufst und dieses aber nicht gefunden wird. Logrotate ist bei meinen Systemen in /usr/sbin/logrotate. Dieser Pfad ist nicht im Standardsuchpfad. Deswegen musst Du logrotate mit voller Pfadangabe aufrufen.

    Im übrigen: Wenn Du Logrotate als eigenes Paket installierst, sollte es doch von selbst regelmässig aufgerufen werden? Da braucht es doch eigentlich kein eigenes Shellscript dazu, oder? Einfach eine Datei in /etc/logrotate.d anlegen und fertig.

    Grüße,
    fork

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •