定时任务核心总结

文章讲述了定时任务可能导致的两个问题及解决方案。当inode被写满时,原因是定时任务未正确重定向输出,导致产生大量邮件文件。解决方法是添加命令重定向或定期清理。另外,环境变量问题可能导致脚本在定时任务中执行失败,需在脚本中重新定义环境变量或使用登录shell执行。
摘要由CSDN通过智能技术生成

一.定时任务总结

在这里插入图片描述

二.案例

①inode被写满

定时任务结尾不加&>/dev/null的以后就会导致/var/spool/clientmqueue满
大量的小文件【邮件】,邮件哪来的?
邮件系统服务没有开启的时候,同时定时任务不加&>/dev/null,定时任务的输出,排错,定时任务程序就会给root发邮件,导致inode满了。

防止大量小文件充满磁盘导致inode满的方法

  • 尽量将cron任务里面的命令或脚本中的命令结尾加上>/dev/null或者2>&1,或者在写定时脚本时候,把输出定向到指定文件中(适合所有的情况)
  • 当然也可以开启邮件服务,不过最好不要使用,因为邮件服务会带来安全隐患
  • 加入定时清理任务,比如,将find /var/spool/clientmqueue/ -type f -mtime +30 | xargs rm -f 放入定时任务,每周处理一次,(centos5适用),如果是centos6/7,则处理的路径 /var/spool/postfix/maildrop/

②环境变量问题导致定时任务执行失败

手动执行脚本成功,放在定时任务执行失败。
解决方法

  • 定时任务执行的脚本是非登录shell,所以脚本中使用的环境变量获取不到,所以定时任务执行了脚本执行的不正确
  • 就是在脚本中,把调用/etc/profile中的环境在重新定义。

参考:oldboyedu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值