前言:
此刻兄弟们对“cron日志有执行记录但实际没有”大约比较关切,姐妹们都想要学习一些“cron日志有执行记录但实际没有”的相关知识。那么小编也在网摘上网罗了一些有关“cron日志有执行记录但实际没有””的相关文章,希望姐妹们能喜欢,兄弟们一起来学习一下吧!linux中crontab定时任务,导致磁盘满和云监控未报警的问题的坑。
1.磁盘满
使用命令
df -h2.问题排查2.1排查日志 命令
cat /var/log/messages
日志文件的默认路径是:/var/log
下面是几个重要的日志文件的路径及其包含的信息:
/var/log/syslog:它和/etc/log/messages日志文件不同,它只记录警告信息,常常是系统出问题的信息。
/var/log/messages:包括整体系统信息,其中也包含系统启动期间的日志。此外,还包括mail,cron,daemon,kern和auth等内容。
/var/log/cron 用来记录任务计划的运行日志,如下,分别表示:
任务运行的日期与时间 、在哪台主机上运行 、运行任务的程序[进程号] 、任务运行的具体信息
/var/log/user.log:记录所有等级用户信息的日志。
/var/log/auth.log:包含系统授权信息,包括用户登录和使用的权限机制等。
/var/log/daemon.log:包含各种系统后台守护进程日志信息。
/var/log/kern.log:包含内核产生的日志,有助于在定制内核时解决问题。
一直有提示错误提示:No configuration file found at /root/.esmtprc or /etc/esmtprc
2.2 进入根目录查看目录大小
cd /du -sh *使用这个命令,可以查看隐藏的 ls -la
2.3结果
cron中执行的程序有输出内容,输出内容会以邮件形式发给cron的用户,而sendmail没有启动所以就产生了root/.esmtp_queue/ 目录下的那些文件,日积月累可能撑破磁盘。
3.解决方法3.1 删除不用的文件
可以参考已这个文档:Linux服务器清理磁盘
3.2 永久解决
设置MAILTO参数为空
方法一:
vim /etc/crontab将 MAILTO=root 替换成 MAILTO=""
方法二:
crontab -e 第一行加上MAILTO=""(指定邮箱发送位置)
然后 重启 service crond restart
另外一个坑:开了磁盘报警功能,达到预警值了。结果没有消息通知。
后面阿里云排查,说需要主机监控这里要是运行中才行。