2

因为 vpnc 每 23 小时停止一次,所以我创建了一个 .sh 文件,它每 10 分钟作为 cron 作业运行一次,它所做的就是停止 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 身份运行脚本,所以我认为这不是特权问题。

知道为什么会这样吗?我会很感激的。

4

1 回答 1

4

如评论所示,更改

*/10 * * * * /home/username/ping_vpnc.sh

为了

*/10 * * * * /bin/sh /home/username/ping_vpnc.sh

也就是说,告诉 crontab 哪个二进制文件必须执行脚本。

为了将来的参考,让我指出您在 Ask Ubuntu 中发现的问题:Script doesn't run through crontab but works fine standalone。它提供了有关该主题的全面信息。

于 2013-05-07T11:58:17.360 回答