我试图使用lsyncd自动将文件移动到本地开发服务器。我的主机是OSX 10.9。
服务器上的SSH工作。我可以从主机上使用ssh连接。我正在使用SSH密钥登录。我想对lsyncd做同样的操作,让它使用相同的键。
我已经安装了https://github.com/markcarver/mac-ssh-askpass,因为OSX不包括ssh-askpass,但是它一直在询问root@snapdev.com的密码。
在MacOSX10.9上使用lsyncd让我头痛不已。谷歌并没有多大帮助,因为不同版本的lsyncd之间使用的选项已经改变,文章/指南也不一致。
这是我的设置文件:
settings {
logfile = "/var/log/lsyncd/lsyncd.log",
statusFile = "/var/log/lsyncd/lsyncd.status",
statusInterval = 1
}
sync {
default.rsyncssh,
source = "/Users/jay/Desktop/snapnames",
host = "snapdev.com",
targetdir = "~/public_html",
excludeFrom = "/etc/lsyncd/lsyncd.dev.exclude",
rsync = {
protect_args = false,
archive = true,
compress = false,
whole_file = false,
},
ssh = {
port = 1337,
_extra = {"/usr/bin/ssh -l developer -p 1337 -i /Users/jay/.ssh/id_rsa.pub -o StrictHostKeyChecking=no"}
}
}为什么要密码?SSH在同一台主机上使用我的密钥不需要密码。
如此困惑,因为我甚至没有以root的身份登录
编辑:我现在转向使用Grunt。在OSX上和lsyncd的麻烦太多了。不过,我还是想要一个答案,这样我就知道自己哪里出了问题。
发布于 2015-06-08 23:13:39
看起来你提交的是公开版本的密钥,而不是你的私密。
试着改变:
/Users/jay/.ssh/id_rsa.pub
至
/Users/jay/.ssh/id_rsa
https://unix.stackexchange.com/questions/204028
复制相似问题