Cronjob脚本启动应用程序麻烦

时间:2016-03-17 23:26:57

标签: cron crontab raspbian

我刚开始使用cronjobs,但直到昨天我遇到了一个我无法想象/发现的问题。

@reboot me /etc/application/start-script.sh

我在Raspberry Pi Zero上安装了Raspbian Jessie(minimal)。其中一个用户有一个cronjob命令@reboot。当我检查“sudo /etc/init.d/cron status”时,我可以看到重启后执行了cronjob并执行了。唯一的问题是任何输出被删除,“没有安装MTA” - 消息,(关心?)。

#!/bin/bash
# My start script

logfile=/home/me/logfile.log

echo "Starting program..." >> $logfile
application
echo "Program started!" >> $logfile

正如您所看到的,它应该创建一个日志文件,并在重新启动后将脚本作为cronjob调用时执行此操作。当你手动执行它时,这个脚本工作得很好,它将输出写入日志文件并启动程序。

问题是:当.sh脚本被称为cronjob时,程序不会启动。

为什么脚本执行时只启动应用程序?

“sudo /etc/init.d/cron status”输出

Mar 17 22:14:45 pizza-pi systemd[1]: Starting Regular background program processing daemon...
Mar 17 22:14:45 pizza-pi systemd[1]: Started Regular background program processing daemon.
Mar 17 22:14:45 pizza-pi cron[292]: (CRON) INFO (pidfile fd = 3)
Mar 17 22:14:45 pizza-pi cron[292]: (CRON) INFO (Running @reboot jobs)
Mar 17 22:14:45 pizza-pi CRON[296]: pam_unix(cron:session): session opened for user me by (uid=0)
Mar 17 22:14:45 pizza-pi CRON[318]: (me) CMD (etc/application/start-script.sh)
Mar 17 22:14:45 pizza-pi CRON[296]: (CRON) info (No MTA installed, discarding output)
Mar 17 22:14:45 pizza-pi pam_unix(cron:session): session closed for user me

1 个答案:

答案 0 :(得分:1)

编辑/etc/rc.local文件并在/etc/init.d/cron/start中添加以下行,确保它在退出0之前。

请点击此链接https://rahulmahale.wordpress.com/2014/09/03/solved-running-cron-job-at-reboot-on-raspberry-pi-in-debianwheezy-and-raspbian/

希望答案对你有用