Answers:
您不会logrotate
在命令行上告诉要旋转的文件。您将配置文件传递给它。因此,在您的情况下,logrotate
正在读取/var/log/syslog
并尝试将其解析为配置文件并失败(因此会出现错误)。
如果要旋转,/var/log/syslog
则需要在某个logrotate
配置文件中列出它,然后运行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
(注意,这将轮换当前在logrotate中配置的所有日志)。
如果您确实只想旋转/var/log/syslog
,则需要基于/etc/logrotate.conf
+ 的内容创建一个仅记录一个日志的配置文件/etc/logrotate.d/rsyslog
。