另一篇文章描述了一种测试cron是否正在运行的方法是使用这个脚本创建一个crontab -e:
* * * * * /usr/bin/uptime > /tmp/uptime
当我去检查cron cat / tmp / uptime时没有结果。具有直接路径到php的测试脚本也是如此。
我正在运行运行Amazon Linux的AWS。
我检查了cron是否甚至与chkconfig --list crond一起运行 结果:
crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
更新(基于评论)
[ec2-user@ip-xxx-xxx ~]$ service crond status
crond (pid 2844) is running...
[ec2-user@ip-xxx-xxx ~]$ ps aux | grep crond
root 2844 0.0 0.2 121636 2572 ? Ss Sep04 0:01 crond
ec2-user 7904 0.0 0.2 110468 2096 pts/0 S+ 22:46 0:00 grep --color=auto crond
为了安全起见我用这个命令手动启动了cron:
sudo service crond start
我也尝试了sudo su并在ec2-user和root中创建了实例。似乎没有什么能真正运行cron。
有没有人有任何建议?似乎Cron在其他地方的文档已有几年的历史了。提前谢谢。
参考:
答案 0 :(得分:2)
你检查一下cron守护进程状态吗?
$ service crond status
crond (pid xxx) is running...
$ ps aux | grep crond
root 2533 0.0 0.1 119552 1784 ? Ss Apr04 1:57 crond
ec2-user 22203 0.0 0.2 110460 2084 pts/0 S+ 09:37 0:00 grep --color=auto crond
然后,如果cron守护程序似乎没有运行,你可以启动它
$ service crond start
答案 1 :(得分:0)
验证是否已安装procps软件包(该软件包提供正常运行时间命令)
sudo yum install procps
同时验证您的cron作业是否已保存
crontab -l
答案 2 :(得分:0)
执行以下操作:
sudo service crond reload
或
sudo service crond restart
这可能发生在VPS服务器上,在进行crontab修改后,您可能需要重新加载它才能进行修改。在更糟糕的情况下,crond restart将停止服务并再次启动它。希望有所帮助。
答案 3 :(得分:0)
[ec2-user@ip-172-31-47-191 ~]$ sudo crontab -l
no crontab for root
[ec2-user@ip-172-31-47-191 ~]$ sudo crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[ec2-user@ip-172-31-47-191 ~]$ sudo crontab -l
* * * * * /usr/bin/uptime > /tmp/uptime
[ec2-user@ip-172-31-47-191 ~]$ /usr/bin/uptime
23:05:09 up 284 days, 12:52, 1 user, load average: 0.01, 0.02, 0.05
[ec2-user@ip-172-31-47-191 ~]$ ls -l /tmp
total 4
drwx------. 2 oracle dba 6 Sep 7 11:03 mc-oracle
drwx------. 2 root root 6 Sep 7 11:01 mc-root
-rw-r--r--. 1 root root 71 Sep 14 23:05 uptime
[ec2-user@ip-172-31-47-191 ~]$ more /tmp/uptime
23:05:01 up 284 days, 12:52, 1 user, load average: 0.01, 0.02, 0.05
[ec2-user@ip-172-31-47-191 ~]$ service crond status
Redirecting to /bin/systemctl status crond.service
● crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2017-04-20 03:07:03 EDT; 4 months 26 days ago
Main PID: 16998 (crond)
CGroup: /system.slice/crond.service
└─16998 /usr/sbin/crond -n
Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
[ec2-user@ip-172-31-47-191 ~]$ 191 ~]$
答案 4 :(得分:-1)
检查/ var / log / cron logfile以验证您的命令是否正在运行。