从crontab运行git - 权限被拒绝

时间:2016-07-13 22:58:03

标签: linux git unix cron

我已经看了这个并找到了很多答案,但我是一个unix / linux假人。无法遵循人们的指示。不确定要编辑哪些文件等。

此处需要简单的分步说明

我有一个shell文件设置如下:

#!/bin/bash
exec &>> /var/www/nginx/yokohama/laravel/storage/cron.log
today='date +%Y-%m-%d.%H:%M:%S';

cp /var/www/nginx/yok/yok_data.xml /var/www/nginx/yok/yok_XML_Files/backup-$(date +"%Y_%m_%d").xml
git add /var/www/nginx/yok/yok_XML_Files/backup-$(date +"%Y_%m_%d").xml
git commit -m "cool test"
git push origin staging

如果我以root身份手动运行它可以工作,我们一切都很好。但是没有通过我的cron工作..

这是我的crontab

* * * * *  /usr/bin/sh /var/www/nginx/yok/laravel/commit_data.sh

在我的cron.log中,我得到了 Permission denied (publickey).^M

我该如何解决这个问题?简单的说明。

1 个答案:

答案 0 :(得分:0)

Permission denied (publickey).^M

最后^M您的脚本可能有\r\n eol(行尾)而不是\n:尝试dos2unix

还要确保您的脚本是可执行的:

chmod 755 /var/www/nginx/yok/laravel/commit_data.sh

OP hamobi提到另一个原因in the comments

  

问题更加基本。不得不将用户rsa键移动到bitbucket。