Linux 未在logrotate脚本中删除文件,权限和用户、组详细信息未更新
以下是挑战。请求你的帮助Linux 未在logrotate脚本中删除文件,权限和用户、组详细信息未更新,linux,logrotate,Linux,Logrotate,以下是挑战。请求你的帮助 文件未被删除 .gz文件不是根据脚本中给出的用户和组详细信息生成的 每次执行时,日期扩展名都会不断添加到相同的.gz文件中 /var/log/httpd/access\u log* /var/log/httpd/error_log* { 复制截断 每日的 轮换2 压缩 米森戈克 dateext 最大值5 创建0644 hhh hhh } 您的通配符不正确,会捕获该目录中的所有内容,包括先前旋转的文件。按照您定义的方式,logrotate是查看以前旋转
/var/log/httpd/access\u log*
/var/log/httpd/error_log*
{
复制截断
每日的
轮换2
压缩
米森戈克
dateext
最大值5
创建0644 hhh hhh
}
您的通配符不正确,会捕获该目录中的所有内容,包括先前旋转的文件。按照您定义的方式,logrotate是查看以前旋转的文件,并将它们视为新的日志文件,以开始新的旋转,而不是以前旋转的日志文件的旧旋转。您需要将通配符压缩为以下内容:
/var/log/httpd/*log
嗨,谢谢你的回复。我认为问题不在于通配符,而在于logrotate脚本中参数的顺序。更改顺序后,下面的脚本工作正常/var/log/httpd/access_log{size 1k daily copyruncatate rotate 4 compresse missingok maxage 10}@VenkateshK通配符绝对是这里的问题。您已在后续注释中将其从代码中删除。将该文件路径更改回
/var/log/httpd/access\u log*
,我保证您将再次遇到完全相同的问题。
/var/log/httpd/*log