因为vpnc每隔大约23个小时停止一次,所以我创建了一个每10分钟作为一个cron作业运行的.sh文件,它所做的就是停止vpnc进程并再次运行它。
我已将其设为chmod + x ping_vpnc.sh
可执行文件,当我通过./ping_vpnc.sh
我的文件类似于:
#!/bin/sh
killall vpnc #just to make sure I don't create too many tunnels.
vpnc default.conf #run vpnc connect file.
我的crontab文件:
*/10 * * * * /home/username/ping_vpnc.sh
脚本的问题是它没有完全运行,所以它只是在不重新运行的情况下终止进程。
我正在以root身份运行脚本,因此我认为这不是特权问题。
知道为什么会这样吗?我会很感激的。
答案 0 :(得分:4)
如评论所示,请更改
*/10 * * * * /home/username/ping_vpnc.sh
的
*/10 * * * * /bin/sh /home/username/ping_vpnc.sh
即告诉crontab哪个二进制文件必须执行脚本。
对于将来的参考,让我指出您在Ask Ubuntu中发现的问题:Script doesn't run via crontab but works fine standalone。它提供有关该主题的全面信息。