我需要使用scp
自动进行文件传输,我已经创建了一个新的ssh密钥,并将公钥发送到我将要发送文件的远程服务器(@~/.ssh(。
问题是,它不允许我将文件scp到除主目录之外的任何位置。如果我把它转移到主目录,它可以正常工作,但在其他任何地方都不行。
这里有什么需要做的吗?谢谢
如果您可以将文件scp
保存到您的主目录,那么您的密钥正在工作。这不太可能成为一个问题。
你可能会遇到的问题有:
您没有写入目标目录的权限
$ scp test.txt myserver:/root
scp /root/test.txt: Permission denied
在这种情况下,您需要获得写入目录的权限,或者选择您有权访问的其他目的地。
目标目录不存在
$ scp test.txt myserver:foo/bar/
scp foo/bar: No such file or directory
在这种情况下,请检查上传到的路径是否正确。
像myserver:foo/bar/
这样的目的地(注意::
后面没有/
(意味着指向主目录的相对路径。因此,在这种情况下可能是/home/seumasmac/foo/bar/
。
像myserver:/var/www/
这样的目的地(注意:在:
之后是/
(是绝对路径。表示服务器上的目录/var/www/
。
在这种情况下,当你尝试上传时出现的错误应该会告诉你以上哪一个是问题所在。