linux – pptp(pon)在通过cron(debian)调用时失败
发布时间:2020-12-13 17:24:22 所属栏目:Linux 来源:网络整理
导读:我有一个pptp VPN链接从我的(debian) linux服务器拨号到远程站点的ISA2003服务器. (两个)端的互联网连接有点狡猾,所以我写了一个小脚本来调用pon myvpnlink,如果它检测到链接已经关闭. 如果我从CLI运行它,这个脚本工作正常,但如果通过cron调用它,那么pon调用
我有一个pptp VPN链接从我的(debian)
linux服务器拨号到远程站点的ISA2003服务器.
(两个)端的互联网连接有点狡猾,所以我写了一个小脚本来调用pon myvpnlink,如果它检测到链接已经关闭. 如果我从CLI运行它,这个脚本工作正常,但如果通过cron调用它,那么pon调用似乎失败了. 我已经在bash和perl中重写了这个,并且每个都有相同的问题.脚本被执行,它可以判断VPN链接当前是上升还是下行,它调用pon调用pppd,后者无法连接.如果我然后从CLI执行脚本就可以了. 任何想法都会非常感激 – 这就是现在我的盒子. #Syslog (on a failure): Dec 30 17:02:01 LogServer /USR/SBIN/CRON[4530]: (root) CMD (/bin/bash /root/scripts/vpnup.bash >> /root/scripts/vpn.log) Dec 30 17:02:01 LogServer pppd[4542]: pppd 2.4.4 started by root,uid 0 Dec 30 17:02:01 LogServer pppd[4542]: Couldn't get channel number: Input/output error Dec 30 17:02:01 LogServer pppd[4542]: Exit. #Cron Line * * * * * root /bin/bash /root/scripts/vpnup.bash >> /root/scripts/vpn.log 更新: 现在工作正常.我通过/etc/cron.d/vpn调用我的cron条目,原来看起来像: MAILTO=root * * * * * root /bin/bash /root/scripts/vpnup.pl >> /root/scripts/vpn.log 现在它被改变了,pptp工作得很好:-D MAILTO=root SHELL=/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin * * * * * root perl /root/scripts/vpnup.pl >> /root/scripts/vpn.log 非常感谢贾斯汀举例:) 解决方法
您发布的错误消息有点指向pppd中的错误,但是您描述的“从shell工作但不从cron工作”的情况通常与路径问题有关.
既然它不会受到伤害,你可以尝试将它添加到你的crontab顶部吗? PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 编辑:你可以使用的一种解决方法,如果它总是在shell中工作,有另一个短脚本执行 while true;do vpnup.sh;sleep 1m;done >> log 那么你可以在屏幕上用类似的东西开始 screen -S vpn -d -m thatscript (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |