我想每两分钟从gitlab存储库中提取数据。 我在我的cronjob中添加了这个脚本:
sudo cd /home/dev/web/question.***/public_html ; sudo git pull ; sudo git add . ; sudo git commit -m "update" ; sudo git push
但是我收到了这封电子邮件:
我已将密钥添加到服务器,我做错了什么
答案 0 :(得分:1)
你的cronjob中的问题:
sudo
尝试询问密码但失败了。给它一个tty将无济于事,因为没有用户输入密码。
sudo cd
不起作用(它在sudo下的shell中工作但是在sudo调用结束后shell已经退出并且cd
的效果丢失了)。< / p>
我的建议:根本不运行sudo命令。从目标用户(root)的crontab运行它们。
或者将命令放入shell脚本并配置sudo以运行脚本而无需输入密码。