首先要说的是,我对 MAC 还很陌生,但由于经常使用 Linux,所以对使用命令行很熟悉。
我目前已将 rsync 设置为在 MAC OSX 10.5.8 服务器和 Linux Centos 5.5 服务器之间运行。这是我在 MAC 服务器上运行的命令:
rsync -avhe ssh "/Path/To/Data" [email protected]:data/
它会提示输入密码,但我需要它来保存密码。环顾四周后,我需要使用:
ssh-keygen -t dsa
保存密钥,然后使用以下命令将其移至 Linux 服务器:
ssh-copy-id -i .ssh/id_dsa.pub [email protected]
但 ssh-copy-id 似乎不存在于 MAC 服务器上。我该如何复制此密钥?我尝试自己寻找答案,但似乎到处都是帮助。
任何帮助是极大的赞赏。
斯科特
答案1
是的,您需要将您的公钥 (.ssh/id_dsa.pub) 添加到服务器上的 .ssh/authorized_keys 文件中。ssh-copy-id 只是一个简单的 shell 脚本,可以为您完成此操作。它的作用基本上是这样的:
cat ~/.ssh/id_dsa.pub | ssh[电子邮件保护]“umask 077;测试-d.ssh || mkdir.ssh;cat >>.ssh/authorized_keys”
它通过 ssh 传输密钥(这次您必须指定密码,但希望这是最后一次),并且如果目录“.ssh”不存在,则在服务器上创建该目录。