解决 Ubuntu 下定时任务不执行问题

导读:本篇文章讲解 解决 Ubuntu 下定时任务不执行问题,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

1.创建了一个定时任务:

*/1 * * * * /usr/bin/tar -zcPf /data/keymanTech/factorybi-backup/fbi_$(date +"%Y-%m-%d-%H-%M").tar.gz /data/keymanTech/test

每分钟执行打包压缩文件到指定的目录下,单独执行此命令是可以成功的,但是加入定时任务后就不成功了。

2.查看定时任务日志

Ubuntu 定时任务日志需要手动开启:

root@server01:~# vim /etc/rsyslog.d/50-default.conf
cron.*                          /var/log/cron.log  把前面的注释去掉,开启 定时任务 日志文件

root@server01:~# service rsyslog  restart

# 稍等一会就会出现了
root@server01:~# cat /var/log/cron.log

# 实时查看日志
root@server01:~# tail -f /var/log/cron.log

显示:(CRON) info (No MTA installed, discarding output)

解决 Ubuntu 下定时任务不执行问题

        这个错误原因是cron执行完你的命令后就会给你发一封邮件,但是我邮件都没配置往哪发啊,所以就报错了。难道真的要我把邮箱配置起来嘛,当然不要,目前也不知道怎么配,更不想去配,你执行完就完事了呗,给我发邮件干啥呢。

3.解决办法

我在网上查了许多资料,说是在命令后面把结果重定向到一个自定义创建的文件里面:

*/1 * * * * /usr/bin/tar -zcPf /data/keymanTech/factorybi-backup/fbi_$(date +"%Y-%m-%d-%H-%M").tar.gz /data/keymanTech/test >> /home/log/fbi.log

*/1 * * * * /usr/bin/tar -zcPf /data/keymanTech/factorybi-backup/fbi_$(date +"%Y-%m-%d-%H-%M").tar.gz /data/keymanTech/test >> /dev/null 2>&1  &

但是都不行!!!查看日志依然是 (CRON) info (No MTA installed, discarding output)

我的方法是:

1.# 创建脚本,把要执行的命令放到脚本里,也要重定向要文件中才可以
root@server01:~# vim cron.sh
/usr/bin/tar -zcPf /data/keymanTech/factorybi-backup/fbi_$(date +"%Y-%m-%d-%H:%M").tar.gz /data/keymanTech/factorybi-backup >> /dev/null 2>&1  &

2.# 再放到定时任务中
root@server01:~# crontab -e
*/1 * * * * /usr/bin/sh /root/cron.sh

3.# 查看指定目录和日志,执行成功

或者直接在crontab 中:

# 命令行格式
59 23 * * * /usr/bin/rsync -az --delete root@172.17.23.4::backup /home/busA_mongodb_bak/ --password-file=/etc/rsync.passwd >>/dev/null 2>&1

# 执行脚本格式
55 23 * * * /fbi/mongodb_bak/mongodb_bak.sh  &>/dev/null 2>&1

使用crontab -e修改完以后,并不需要重启服务(sudo service cron restart)

因为定时任务本来就是,一个监听的程序。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/74640.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!