access_log/error_log richtig löschen
access_log/error_log richtig löschen
wie kann ich die access_log und error_log wieder auf 0 Byte bekommen?
lösche ich beide Dateien mit rm , erstellt Apache erst beim neustart neue leere Dateien.
order ist vielleicht
cp dummy access_log der richtige weg? # access_log mit einer leeren Datei überschreiben
(das ganze im natürlich per Script im Cron ausführen lassen.)
lösche ich beide Dateien mit rm , erstellt Apache erst beim neustart neue leere Dateien.
order ist vielleicht
cp dummy access_log der richtige weg? # access_log mit einer leeren Datei überschreiben
(das ganze im natürlich per Script im Cron ausführen lassen.)
-
Roger Wilco
- Posts: 5923
- Joined: 2004-05-23 12:53
Re: access_log/error_log richtig löschen
Damit der Apache httpd seine File Handles schließt und neue Logdateien anlegt, musst du ihm das Signal HUP schicken (-> `man kill`).amiga1200 wrote:lösche ich beide Dateien mit rm , erstellt Apache erst beim neustart neue leere Dateien.
Re: access_log/error_log richtig löschen
Ich verwende auch Logrotate, aber der aus irgendwelchen Gründen nicht in Frage kommt, sollte auch ein kleine Shell-Script weiterhelfen.
Dort dann als erstes die vorhandenen Logfiles verarbeiten (was auch immer damit passieren soll) und anschließend umbenennen oder löschen.
Die leere Log-Datei würde ich dann mit touch access.log bzw. touch error.log anlegen.
Anschließend ggfl. mit chown www-data.www-data access.log error.log den Owner wieder anpassen (einfach bei der vorhandenen Datei nachschauen, wem sie derzeit gehört, möglicherweise www-data).
Nun dem Indianer einmal einen Reload unterjubeln, bei Debian mit /etc/init.d/apache2 reload, dürfte bei anderen Linux-Distries ähnlich sein.
Aber an deiner Stelle würde ich trotzdem einen Blick auf logrotate werfen, der ist eigentlich sehr mächtig.
Dort dann als erstes die vorhandenen Logfiles verarbeiten (was auch immer damit passieren soll) und anschließend umbenennen oder löschen.
Die leere Log-Datei würde ich dann mit touch access.log bzw. touch error.log anlegen.
Anschließend ggfl. mit chown www-data.www-data access.log error.log den Owner wieder anpassen (einfach bei der vorhandenen Datei nachschauen, wem sie derzeit gehört, möglicherweise www-data).
Nun dem Indianer einmal einen Reload unterjubeln, bei Debian mit /etc/init.d/apache2 reload, dürfte bei anderen Linux-Distries ähnlich sein.
Aber an deiner Stelle würde ich trotzdem einen Blick auf logrotate werfen, der ist eigentlich sehr mächtig.
-
dukepyrolator
- Posts: 38
- Joined: 2004-03-12 06:51
Re: access_log/error_log richtig löschen
Mit "cp /dev/null error_log" wird die Dateigrösse auf "0" zurückgesetzt, ohne die Datei zwischendurch zu löschen. Apache schreibt ohne Neustart bzw. SigHUP wieder in diese Datei.
Re: access_log/error_log richtig löschen
Das ist Shell-abhängig. Aber wer was anderes als die Bash nutzt, weiß ohnehin, was er/sie tutmatzewe01 wrote:Warum einfach, wenn es auch kompliziert geht?
> logfile.
SIGHUP ist eigentlich nur notwendig, wenn die Logdatei umbenannt/verschoben/sonstwie rotiert wurde, da dann der File Pointer, den Apache sich offen hält, ins Leere zeigt. Mit einem SIGHUP wird veranlasst, dass Apache einen neuen File Handle öffnet, der dann wieder auf die korrekte Datei verweist.
Das direkte Manipulieren der Logdatei ist zwar technisch möglich, da Apache kein exklusives File Handle öffnet, aber da Schreiboperationen auf Dateien über einen Puffer laufen, kann es sein, dass Teile von Logmeldungen verloren gehen; je nachdem, wann der Kernel den Puffer flusht und die Bits tatsächlich auf die Platte schiebt. Davon sollte man also besser die Finger lassen...
Re: access_log/error_log richtig löschen
Ich benenne sie immer um als xxx-old1.log usw. und beim reload vom Apachen legt er wieder eine neue log Datei an.
Selbst wenn ich sie lösche, legt bei mir der Apache nach einem reload eine neue an.
gruss Gero
Selbst wenn ich sie lösche, legt bei mir der Apache nach einem reload eine neue an.
gruss Gero
Re: access_log/error_log richtig löschen
Hi
Durch Google bin ich auf die seite angekommen. Ich möchte auch meine acces_log und error_log mit Crontab Täglich löschen. Welche Befehl müsste ich benutzen. Kann mir Bitte jemand ein Tipp geben.
Debian 4
Linux
Plesk 92
LG
Durch Google bin ich auf die seite angekommen. Ich möchte auch meine acces_log und error_log mit Crontab Täglich löschen. Welche Befehl müsste ich benutzen. Kann mir Bitte jemand ein Tipp geben.
Debian 4
Linux
Plesk 92
LG
Re: access_log/error_log richtig löschen
Öh *grübel* steht doch genau in diesem Thread?
logrotate, kill, rm, ...
logrotate, kill, rm, ...
Re: access_log/error_log richtig löschen
Ja das hilft mir nicht weiter, ich fragte welche befehl ich genau bei crontab einfügen müsste.PapaBaer wrote:Öh *grübel* steht doch genau in diesem Thread?
logrotate, kill, rm, ...
Wen ich das logrotate, kill, rm, ... bei crontab einfüge wie soll das den passiern ? ich weis für leute die ahnung haben ist das kein Problem. kill und rm ist schon klar aber ich brauche den volle code.
Re: access_log/error_log richtig löschen
Bitte nochmal lesen:Mantano wrote:Durch Google bin ich auf die seite angekommen. Ich möchte auch meine acces_log und error_log mit Crontab Täglich löschen. Welche Befehl müsste ich benutzen. Kann mir Bitte jemand ein Tipp geben.
Und dann per Google auf das hier stossen: http://www.debian-administration.org/articles/117matzewe01 wrote:Also eigentlich ist dafür "logrotatehttp://www.linux-praxis.de/lpic1/manpag ... otate.html" gedacht.
Dir ist klar, dass Du im Bedarfsfall Beweispflichtig bist und das löschen von Logfiles nicht der richtige Weg ist.
PayPal.Me/JoeUser ● FreeBSD Remote Installation
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Re: access_log/error_log richtig löschen
Viel ahnung habe ich davon nicht, fange erst an mich mit Linux zu beschäftigen, Deshalb versuche ich ganz Vorsichtig zu sein. Deshalb Bitte ich um verständnis.
Also bei crontap einfach dies einfügen ( logrotate, kill, rm, ) und es werden die access_log/error_log gelöscht (Richtig)
Und wie ich das verstanden habe mann sollte nicht löschen, Und dafür soll dies sein.
http://www.debian-administration.org/articles/117
Wie ich hier verstanden habe soll ich bei logrotate.config dies einfügen ( Richtig )
LG
Also bei crontap einfach dies einfügen ( logrotate, kill, rm, ) und es werden die access_log/error_log gelöscht (Richtig)
Und wie ich das verstanden habe mann sollte nicht löschen, Und dafür soll dies sein.
http://www.debian-administration.org/articles/117
Wie ich hier verstanden habe soll ich bei logrotate.config dies einfügen ( Richtig )
Code: Select all
/var/log/fred/*.log {
daily
missingok
rotate 7
compress
delaycompress
create 640 fred fred
sharedscripts
/etc/init.d/fred restart
endscript
}Re: access_log/error_log richtig löschen
Danke matzewe01, Nur zu Sicherheit, Einfach die inhalte von /etc/logrotate.d/apache und logrotate.conf gegen deine erzetsen ( Richtig )
LG
LG


