我被困在了logrotate的神秘面前

编程之家收集整理的这篇文章主要介绍了我被困在了logrotate的神秘面前编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我被困在了logrotate的神秘面前

我有两个logrotate文件

/etc/logrotate.d/Nginx-size

/var/log/Nginx/*.log /var/log/www/Nginx/50x.log { missingok rotate 3 size 2G dateext compress compresscmd /usr/bin/bzip2 compressoptions -6 compressext .bz2 uncompresscmd /usr/bin/bunzip2 notifempty create 640 Nginx Nginx sharedscripts postrotate [ -f /var/run/Nginx.pID ] && kill -USR1 `cat /var/run/Nginx.pID` endscript }

/etc/logrotate.d/Nginx-daily

spamassassin和spamc的不同结果

您在CentOS中没有Apache的权限错误

与来自软件文件系统-3.2的文件冲突

ffmpeg将任何文件转换为任何文件

使用gdb 7支持deBUGgingPython程序需要什么?

/var/log/Nginx/*.log /var/log/www/Nginx/50x.log { missingok rotate 3 dateext compress compresscmd /usr/bin/bzip2 compressoptions -6 compressext .bz2 uncompresscmd /usr/bin/bunzip2 notifempty create 640 Nginx Nginx sharedscripts postrotate [ -f /var/run/Nginx.pID ] && kill -USR1 `cat /var/run/Nginx.pID` endscript }

命令logrotate -d -v /etc/logrotate.d/Nginx-size输出

reading config file /etc/logrotate.d/Nginx-size compress_prog is Now /usr/bin/bzip2 compress_options is Now -6 compress_ext is Now .bz2 uncompress_prog is Now /usr/bin/bunzip2 Handling 1 logs rotating pattern: /var/log/Nginx/*.log /var/log/www/Nginx/50x.log 2147483648 bytes (3 rotations) empty log files are not rotated,old logs are removed consIDering log /var/log/Nginx/access.log log does not need rotating consIDering log /var/log/Nginx/error.log log does not need rotating consIDering log /var/log/Nginx/get.access.log log does not need rotating consIDering log /var/log/Nginx/post.access.log log needs rotating consIDering log /var/log/www/Nginx/50x.log log does not need rotating rotating log /var/log/Nginx/post.access.log,log->rotateCount is 3 dateext suffix '-20141204' glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' glob finding old rotated logs Failed renaming /var/log/Nginx/post.access.log to /var/log/Nginx/post.access.log-20141204 creating new /var/log/Nginx/post.access.log mode = 0640 uID = 497 gID = 497 running postrotate script running script with arg /var/log/Nginx/*.log /var/log/www/Nginx/50x.log : " [ -f /var/run/Nginx.pID ] && kill -USR1 `cat /var/run/Nginx.pID` " compressing log with: /usr/bin/bzip2

ngnix-daily上的相同(正常)输出

如果我从根命令运行

logrotate -f /etc/logrotate.d/Nginx-size

手动,它做所有的事情。 但! 它不会自动运行!

contab:

*/5 5-23 * * * root logrotate -f -v /etc/logrotate.d/Nginx-size 2>&1 > /tmp/logrotate_size 00 04 * * * root logrotate -f -v /etc/logrotate.d/Nginx-daily 2>&1 > /tmp/logrotate_daily

另外,files / tmp / logrotate_daily&/ tmp / logrotate_size总是空的..

Cron不要在/ var / log / cron中给我任何错误

Dec 4 14:45:01 (root) CMD (logrotate -f -v /etc/logrotate.d/Nginx-rz-size 2>&1 > /tmp/logrotate_size ) Dec 4 14:50:01 (root) CMD (logrotate -f -v /etc/logrotate.d/Nginx-rz-size 2>&1 > /tmp/logrotate_size )

dat的东西有什么问题?Centos 6.5 x86_64,Logrotate版本3.8.7(源代码)+ logrotate版本3.7.8(通过rpm)。

Thx提前。

ps -ef在Asterisk重启时崩溃

PHP chmod()在服务器上不起作用

最新单声道在centos上

无法在我的centOS中安装

在没有udev或libusb的linux上的USB连接事件

这些cron行中的重定向不正确。 他们不会向这些文件输出错误信息。

重定向顺序很重要。 你想>/tmp/logrotate_size 2>&1来得到你想要的。

这里的底层问题是cron信息页面的“调试crontab”部分所涵盖的内容之一

即“对环境做出假设”。

环境做出假设

图形程序(X11应用程序),Java程序,ssh和sudo作为cron作业运行是出了名的问题。 这是因为它们依赖于cron环境中可能不存在的交互式环境中的东西。

为了更紧密地模拟cron的环境,运行

env -i sh -c'yourcommand'

这将清除所有的环境变量,并运行sh可能更加微不足道的功能,你当前的shell。

通过这种方式发现的常见问题

foo:找不到命令或只找到foo:找不到。

最可能的$ PATH被设置在你的.bashrc或类似的交互式init文件中。 尝试通过完整路径指定所有命令(或者在您要运行的脚本的开头放置source〜/ .bashrc)。

总结

以上是编程之家为你收集整理的我被困在了logrotate的神秘面前全部内容,希望文章能够帮你解决我被困在了logrotate的神秘面前所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

Git文章

从4个不同的小鼠input
丢失本地主机networking连接的可能性?
设备创build期间的DirectX 11 E_INVALIDARG
如何将Flash游戏embedded到Windows Mobile应用程序中
安装应用程序以使用Wix在Windows关机时运行
拆分多页PDF文件到单个页面
PHP不被识别为内部命令(在Windows中)
Shell脚本:使用variables来定义path
微信公众号搜索 “ 程序精选 ” ,选择关注!
微信公众号搜 "程序精选"关注