的手册页中logrotate说:
It can be used when some program cannot be told to close its logfile
and thus might continue writing to the previous log file for some
time.
我对此感到困惑。如果程序不能被告知关闭其日志文件,它将续写永恒,而不是一段。如果压缩推迟到下一个循环,则即使在下一个循环之后,程序仍继续写入该文件。如何推迟解决问题?
我的理解是,copytruncate当无法告知程序关闭日志文件时,应使用该命令。我知道在进行复制时,写入日志文件的某些数据会丢失。
我当时在看沙发床的logrotate文件,它同时具有copytruncate和delaycompress选项。
/usr/local/couchdb-1.0.1/var/log/couchdb/*.log {
weekly
rotate 10
copytruncate
delaycompress
compress
notifempty
missingok
}
似乎没有必要使用delaycompress何时copytruncate已经存在。我想念什么?
copytruncate,不需要告诉程序关闭它的日志文件。因此,指定delaycompress与一起有意义copytruncate吗?