我設置了Jenkins CI來將我的PHP應用程序部署到我們的QA Apache服務器,並且遇到了issuse。我成功建立了PUBKEY認證從本地詹金斯帳戶遠程Apache賬戶,但是當我使用rsync
,我得到以下錯誤:將rsync用於無shell訪問的遠程SSH用戶
[[email protected] ~]# rsync -avz -e ssh test.txt [email protected]:/path/to/site
protocol version mismatch -- is your shell clean?
(see the rsync man page for an explanation)
rsync error: protocol incompatibility (code 2) at compat.c(64) [sender=2.6.8]
[[email protected] ~]#
一個潛在的問題是,遠程apache
帳戶沒有一個有效的shell帳戶,我應該創建一個具有shell訪問權限和"apache"
組的一部分的遠程帳戶嗎?這不是一個SSH密鑰問題,因爲ssh [email protected]
連接成功,但由於apache
沒有shell,所以很快就把我踢出去了。
你能提供命令嗎?我安裝了rssh並嘗試:rsync --partial --progress --rsh = rssh user @ host:/ path/remote_file local_file;仍然遇到同樣的問題。可能是我錯了。 - 感謝 – codeObserver 2012-03-19 22:03:00