Malemuc
07.04.09, 12:42
Hallo,
ich hab hier ein Problem mit logrotate.
Soweit ich das jetzt verstanden habe, wird für squid unter Debian im Verzeichnis /etc/logrotate.d ein Script abgelegt, dass dann ausgeführt wird.
/var/log/squid/*.log {
daily
compress
delaycompress
rotate 2
missingok
nocreate
sharedscripts
postrotate
test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate
endscript
}
Wird jetzt logrotate ausgeführt, schreibt er z.B. die access.log neu, mit dem User und der Gruppe "root". Das führt jetzt bei uns dazu, dass nach dem logrotate squid nicht mehr startet, weil squid als user/gruppe "proxy" hat und er jetzt auf die access.log keinen Zugriff erhält. (Fehlermeldung im Log)
Sobald ich access.log wieder "proxy" zuweise, geht squid wieder.
Das ist natürlich etwas unkomfortabel, weil ich das dann immer per Hand machen muss. Geht das vielleicht irgendwie anders auch? Kann ich das vielleicht in dieses o.g. script mit einfügen?
Gruß
Martin
ich hab hier ein Problem mit logrotate.
Soweit ich das jetzt verstanden habe, wird für squid unter Debian im Verzeichnis /etc/logrotate.d ein Script abgelegt, dass dann ausgeführt wird.
/var/log/squid/*.log {
daily
compress
delaycompress
rotate 2
missingok
nocreate
sharedscripts
postrotate
test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate
endscript
}
Wird jetzt logrotate ausgeführt, schreibt er z.B. die access.log neu, mit dem User und der Gruppe "root". Das führt jetzt bei uns dazu, dass nach dem logrotate squid nicht mehr startet, weil squid als user/gruppe "proxy" hat und er jetzt auf die access.log keinen Zugriff erhält. (Fehlermeldung im Log)
Sobald ich access.log wieder "proxy" zuweise, geht squid wieder.
Das ist natürlich etwas unkomfortabel, weil ich das dann immer per Hand machen muss. Geht das vielleicht irgendwie anders auch? Kann ich das vielleicht in dieses o.g. script mit einfügen?
Gruß
Martin