Я хочу принудительно повернуть файл журнала, используя logrotate -f /var/log/syslog
, но это только ответные тона:
error: syslog:1 unknown option 'May' -- ignoring line
error: syslog:1 unexpected text
Я знаю, что в этой системе запущен rsyslog. Как повернуть /var/log/syslog
? Я хочу пусто.
Ты не говоришь logrotate
какой файл повернуть в командной строке. Вы передаете ему файл конфигурации. Итак, в вашем случае logrotate
читает /var/log/syslog
и попытка разобрать его как файл конфигурации и потерпела неудачу (отсюда и ваши ошибки).
Если вы хотите повернуть /var/log/syslog
он должен быть указан в logrotate
config где-нибудь, и вы просто запускаете logrotate
. Если он вращался недавно, то logrotate -f
чтобы заставить его сделать это снова.
Вот пример записи для /var/log/syslog
из Debian,
/var/log/syslog
{
rotate 7
daily
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d rsyslog reload > /dev/null
endscript
}
Итак, вам нужно это в файле, обычно либо /etc/logrotate.conf
или как фрагмент файла в /etc/logrotate.d
предполагая ваш /etc/logrotate.conf
указывает туда, а затем вы просто бежите logrotate /etc/logrotate.conf
.
Поскольку вы используете Debian, вероятно, все в порядке, и все, что вам действительно нужно сделать, это запустить logrotate -f /etc/logrotate.conf
(обратите внимание, это будет вращаться каждый log в настоящее время настроен в logrotate).
если ты действительно только хочу повернуть /var/log/syslog
, вам нужно будет создать файл конфигурации, который будет вести только этот журнал на основе содержимого /etc/logrotate.conf
+ /etc/logrotate.d/rsyslog
.