Logrotate
-
- Beiträge: 12
- Registriert: 04.11.2016 07:56:14
Logrotate
Hallo Helfer,
leider muss ich schon wieder einen Frage stellen, irgendwie finde ich den Fehler nicht, auch googlen hat mich nicht weiter gebracht.
Ich habe 3 Dateien mit Logrotate Programmierungen. Wenn ich diese per Hand über logrotate --force /Dateipafd aufrufe, dann machen die Ihre Arbeit so wie es sein soll.
Nun möchte ich diese 3 Dateien per Cronjob zu einer bestimmten Uhrzeit starten lassen. Ich habe also also root crontab -e aufgerufen und folgende Anweisung eingetragen:
58 23 * * * logrotate --force Dateipfad
Leider klappt da so nicht. Auch mit /bin/bash vor dem Logrotate wird die Datei nicht ausgeführt.
Vielen Dank für Eure Hilfe
Gruß
Stefan
leider muss ich schon wieder einen Frage stellen, irgendwie finde ich den Fehler nicht, auch googlen hat mich nicht weiter gebracht.
Ich habe 3 Dateien mit Logrotate Programmierungen. Wenn ich diese per Hand über logrotate --force /Dateipafd aufrufe, dann machen die Ihre Arbeit so wie es sein soll.
Nun möchte ich diese 3 Dateien per Cronjob zu einer bestimmten Uhrzeit starten lassen. Ich habe also also root crontab -e aufgerufen und folgende Anweisung eingetragen:
58 23 * * * logrotate --force Dateipfad
Leider klappt da so nicht. Auch mit /bin/bash vor dem Logrotate wird die Datei nicht ausgeführt.
Vielen Dank für Eure Hilfe
Gruß
Stefan
Re: Logrotate
Hast du es mal mit einem absoluten Pfad zu logrotate versucht?
-
- Beiträge: 12
- Registriert: 04.11.2016 07:56:14
Re: Logrotate
Wie meinst Du das jetzt?
- KBDCALLS
- Moderator
- Beiträge: 22455
- Registriert: 24.12.2003 21:26:55
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Dortmund
-
Kontaktdaten:
Re: Logrotate
Poste doch einfach mal die entsprechenden Dateien. Und es sollte doch ausreichen wenn eine passende Datei im Verzeichnis /etc/logrotate.d angelegt wird.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.
EDV ist die Abkürzung für: Ende der Vernunft
Bevor du einen Beitrag postest:
Kaum macht man ein Fenster auf, gehen die Probleme los.
EDV ist die Abkürzung für: Ende der Vernunft
Bevor du einen Beitrag postest:
- Kennst du unsere Verhaltensregeln
- Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.
-
- Beiträge: 12
- Registriert: 04.11.2016 07:56:14
Re: Logrotate
Also der Pfad zur Datei ist /usr/local/sbin/massages und sieht so aus:
Code: Alles auswählen
/var/log/messages
{
daily
rotate 7
create
missingok
notifempty
compress
postrotate
invoke-rc.d rsyslog rotate > /dev/null
endscript
}
Re: Logrotate
/usr/sbin/logrotate statt logrotatestefan2600 hat geschrieben:Wie meinst Du das jetzt?
-
- Beiträge: 12
- Registriert: 04.11.2016 07:56:14
Re: Logrotate
Ich habe das jetzt mal durchlaufen lassen und das sieht echt gut aus. Vielen Dank für die Hilfe
Gruß
Stefan
Gruß
Stefan
- KBDCALLS
- Moderator
- Beiträge: 22455
- Registriert: 24.12.2003 21:26:55
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Dortmund
-
Kontaktdaten:
Re: Logrotate
Wieso muß man da cron bemühen ? Bei mir gibts ne /etc/logrotate.d/rsyslog . Und da stehen so einige Dateien drinne, unter anderem die /var/log/messages mit einer 4
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.
EDV ist die Abkürzung für: Ende der Vernunft
Bevor du einen Beitrag postest:
Kaum macht man ein Fenster auf, gehen die Probleme los.
EDV ist die Abkürzung für: Ende der Vernunft
Bevor du einen Beitrag postest:
- Kennst du unsere Verhaltensregeln
- Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.
-
- Beiträge: 12
- Registriert: 04.11.2016 07:56:14
Re: Logrotate
Weil ich einfach möchte, dass genau diese 3 Dateien um eine bestimmte Uhrzeit ausgeführt werden. Daher habe ich rsyslog und massages auch aus logrotate.d raus genommen.
Gruß
Stefan
Gruß
Stefan
Re: Logrotate
Logrote wird immer über cron aufgerufen. Dazu befindet sich im Verzeichnis /etc/cron.daily eine Datei namens logroate. Wann die Skripte in /etc/cron.daily ausgeführt werden, steht in /etc/crontab. Bei mir ist es täglich um 6.25h.KBDCALLS hat geschrieben:Wieso muß man da cron bemühen ? Bei mir gibts ne /etc/logrotate.d/rsyslog . Und da stehen so einige Dateien drinne, unter anderem die /var/log/messages mit einer 4
Ein spezieller crontab-Eintrag ist also nicht nötig.
-
- Beiträge: 12
- Registriert: 04.11.2016 07:56:14
Re: Logrotate
Ist dann notwendig, wenn Du 3 Logrotate Dateien hast, die zu unterschiedlichen Zeiten ausgeführt werden soll.
-
- Beiträge: 12
- Registriert: 04.11.2016 07:56:14
Re: Logrotate
Ich muss das Thema leider noch mal aufgreifen. Ich habe folgende Datei erstellt:
/var/log/messages
{
daily
rotate 80
create
missingok
notifempty
compress
postrotate
invoke-rc.d rsyslog rotate > /dev/null
endscript
}
Wenn ich diese Datei per logrotate -f ...... ausführe, dann wird eine neue Datei messages angelegt und die andere direkt in messages.1.gz komprimiert, so wollte ich das ja auch haben.
Wenn ich diese Datei per Cronjob um 0:05 laufen lasse, dann wird eine Datei messages erstellt, diese hat dann 0 kb, es gibt dann eine weitere Datei mit messages.1 und dort wird weiter protokolliert. In der Datei mit der 1 sind dann aber alle Logs vom Vortag enthalten. Warum wird das per Hand richtig ausgeführt, per Cronjob aber nicht?
Der Aufruf über Cronjob sieht wie folgt aus: 05 00 * * * /usr/sbin/logrotate --force /usr/local/sbin/hotspot
Danke für Eure Erklärungen, ich habe dazu keine Idee, da es ja von Hand richtig ausgeführt wird.
Gruß
Stefan
/var/log/messages
{
daily
rotate 80
create
missingok
notifempty
compress
postrotate
invoke-rc.d rsyslog rotate > /dev/null
endscript
}
Wenn ich diese Datei per logrotate -f ...... ausführe, dann wird eine neue Datei messages angelegt und die andere direkt in messages.1.gz komprimiert, so wollte ich das ja auch haben.
Wenn ich diese Datei per Cronjob um 0:05 laufen lasse, dann wird eine Datei messages erstellt, diese hat dann 0 kb, es gibt dann eine weitere Datei mit messages.1 und dort wird weiter protokolliert. In der Datei mit der 1 sind dann aber alle Logs vom Vortag enthalten. Warum wird das per Hand richtig ausgeführt, per Cronjob aber nicht?
Der Aufruf über Cronjob sieht wie folgt aus: 05 00 * * * /usr/sbin/logrotate --force /usr/local/sbin/hotspot
Danke für Eure Erklärungen, ich habe dazu keine Idee, da es ja von Hand richtig ausgeführt wird.
Gruß
Stefan