在AWS EC2实例中设置Cron作业

时间:2016-11-09 07:05:12

标签: amazon-web-services amazon-ec2 cron sh

我在AWS EC2中创建了一个cron作业,但它无效。

我按照以下步骤创建了cron标签:

第1步:我登录AWS EC2 Instace

第2步:sudo su

第2步:crontab -e

第3步:插入模式

第4步:我进入了

    # M H DOM M DOW CMND

15 14 * * 3 /services/backup.sh >/tmp/error.log 2>&1

第5步:wq Cron选项卡已创建但未运行。

请你能帮助我吗,为什么它不起作用?

更新:

经过大量研究后,我发现我可以给特定的cron文件提供日志,所以在我的文件中添加了> /tmp/error.log 2>& 1并在那里创建了error.log。

但我没有在那里获得任何cron日志。现在我认为我的cron文件没有运行(显然它没有运行)。

但如何判断我是否缺乏

当我检查了cron服务时,它运行时名为crond

service crond status
crond (pid  28283) is running...

(backup.sh脚本绝对正常运行)

2 个答案:

答案 0 :(得分:0)

你能在下面的cron中尝试backup.sh的完整路径吗?您可以使用pwd命令查找脚本的完整路径。

# M H DOM M DOW CMND
25 12 * * 3 /home/user/script/backup.sh

也许,您的cron服务未启动,您可以使用" ps -ef |检查状态grep cron | grep -v grep"

如果没有看到任何东西运行这个;

sudo service cron start

如果跑步;改变cron如下;

15 13 * * 3 root /fullpath/backup.sh >/tmp/error.log 2>&1

然后你检查error.log

> /tmp/error.log 2>& 1是; 将程序的输出重定向到/tmp/error.log。包括标准错误和标准输出

答案 1 :(得分:0)

我认为您的问题可能来自backup.sh文件的权限所有权

检查文件的所有权,然后在/etc/crontab文件中进行相应的更改:

25 12 * * 3 <owner of the file>  /home/user/script/backup.sh

例如,如果文件backup.sh的所有者是root,那么它应该如下所示:

25 12 * * 3 root  /home/user/script/backup.sh

希望这有帮助!

相关问题