Linux 不压缩

Linux 不压缩,linux,centos6,logrotate,Linux,Centos6,Logrotate,我们将syslogd设置为将来自几个不同服务器的所有日志发送到一个文件夹中,所有日志都发送到一个名为/var/log/centrallogs的文件夹中 我们正在为此目录使用以下日志旋转配置: /etc/logrotate.d/centrallogs: /var/log/centrallogs/*log { rotate 5 compress missingok notifempty sharedscripts

我们将syslogd设置为将来自几个不同服务器的所有日志发送到一个文件夹中,所有日志都发送到一个名为/var/log/centrallogs的文件夹中

我们正在为此目录使用以下日志旋转配置:

/etc/logrotate.d/centrallogs:

/var/log/centrallogs/*log {
        rotate 5
        compress
        missingok
        notifempty
        sharedscripts
        postrotate
        /etc/init.d/httpd restart > /dev/null 2>/dev/null || true
        endscript
}
在测试中(使用logrotate-d centrallogs),LR似乎没有尝试进行任何旋转

以下是输出(注意,我已经重命名了站点,但这是我唯一做的更改):

我也尝试过使用delaycompress,因为有些人已经成功地使用了它

LR可以很好地旋转日志,它根本不对日志执行压缩

查看该输出的唯一错误提示部分:

error: error opening /var/log/centrallogs/site1_access.log.6.gz: No such file or directory
我想LR可能会发疯,因为它没有一个.gz文件要删除,所以我创建了所需的每个日志文件变体,它运行了一夜,清除了gz文件,进行了旋转,但仍然没有压缩


这让我有点抓狂,任何帮助都会得到感谢。

根据日志,它看起来正在运行/bin/gzip,通常gzip会压缩所有列出的文件-跳过任何丢失的文件-没有任何问题。请注意,如果结果较大,gzip将不会强制压缩文件,这很容易发生在非常小的文件上。“error:error[…]”消息可能不是来自gzip,它倾向于在错误前面加上“gzip::”

检查文件大小,看看它们是否小(或者更具体地说,如果gzip认为压缩它们会使它们变大)

notifempty的类似注释

延迟压缩只是意味着你可以有.1.2.3.4.gz.5.gz等等。不需要压缩,实际上可以跳过压缩最近的几个文件。您可以同时使用这两种方法,或者只是压缩,而不是单独延迟压缩


奇怪的是,你的文件中没有频率/大小{daily | weekly{size}。我从未尝试过在没有它的情况下使用它们。

也许
delaycompress
会有帮助:@Samuel我试过了,没有乐趣:(嗯,默认情况下应该用
gzip
压缩。你能检查一下你的
gzip
是否在
/bin/gzip
?@Samuel从外观上看是:gzip gzip在哪里:/bin/gzip/usr/bin/gzip/usr/share/man/man1/gzip.1.gzip确定另一个问题。为什么
/etc/init.d/httpd
而不是
/sbin/service httpd-reload
?从gzip-1.5-10.el7.x86_64的手册页中:
始终执行压缩,即使压缩文件略大于原始文件。最坏的情况是gzip文件头的扩展数为几个字节,加上每32K块5个字节,或大文件的扩展率为0.015%。请注意,实际使用的磁盘块数为大多数从不增加。压缩或解压缩时,gzip保留文件的模式、所有权和时间戳。
error: error opening /var/log/centrallogs/site1_access.log.6.gz: No such file or directory