我设置了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