Odpowiedzi:
Nie powiesz, logrotate
który plik ma zostać obrócony w wierszu polecenia. Przekazujesz mu plik konfiguracyjny. Więc w twoim przypadku logrotate
czyta się /var/log/syslog
i próbuje parsować go jako plik konfiguracyjny i kończy się niepowodzeniem (stąd błędy).
Jeśli chcesz obrócić /var/log/syslog
, musi być logrotate
gdzieś wymieniony w pliku konfiguracyjnym i po prostu uruchom logrotate
. Jeśli ostatnio się obracał, to logrotate -f
aby zmusić go do zrobienia tego ponownie.
Oto przykładowy wpis dla /var/log/syslog
Debiana,
/var/log/syslog
{
rotate 7
daily
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d rsyslog reload > /dev/null
endscript
}
Tak więc potrzebujesz tego w pliku, zwykle albo /etc/logrotate.conf
jako fragment pliku /etc/logrotate.d
przy zakładaniu /etc/logrotate.conf
punktów, a następnie po prostu uruchomisz logrotate /etc/logrotate.conf
.
Ponieważ używasz Debiana, prawdopodobnie wszystko jest na swoim miejscu i wszystko, co musisz zrobić, to uruchomić logrotate -f /etc/logrotate.conf
(uwaga, spowoduje to obrócenie każdego dziennika skonfigurowanego obecnie w logrotate).
Jeśli naprawdę chcesz tylko obracać /var/log/syslog
, musisz utworzyć plik konfiguracyjny, który robi tylko ten jeden dziennik, w oparciu o zawartość /etc/logrotate.conf
+ /etc/logrotate.d/rsyslog
.