scp copy over ssh不起作用 – 权限被拒绝错误,好吗?

这让我疯了! 我只想将一个简单的文件从笔记本电脑传输到服务器。

我在两台机器上都使用ubuntu。

所以我有:

-rwxr-xr-x 1 sandro 414622 2011-10-14 23:42 sandrophoto-html.tar.gz 

我发送它使用:

 sudo scp -P XXXX sandrophoto-html.tar.gz usern@server.local:/media/xx/xx/xx 

我得到: scp: /media/xx/xx/xx/sandrophoto-html.tar.gz: Permission denied

ps我可能会这样做 – 我想将位于我桌面上的文件tar.gz发送到远程服务器到/ media / yadayda

根据我的理解,你有正确的顺序,scp的一般方式是:

 scp sourceuser@sourcehost:/path/to/source/file destinationuser@destinationhost:/path/to/destination/ 

根据您的问题判断,您有一个要发送到目标服务器的本地文件。 所以你有正确的语法,这是好的!

如果您的权限被拒绝,那么您没有使用正确的用户名或者身份validation的错误。 很可能,这是因为sudo命令只能在本地工作,对于初学者来说,所以它不会在远程盒子上给你root,所以这可能就是问题所在。 确保您在远程服务器上登录的用户对您尝试写入的位置具有写入权限。

如果问题是目标用户在没有sudo的情况下无法访问该位置,请将文件移动到destinationuser的主文件夹,然后从另一台服务器上的shell sudo mv该文件,将其放在正确的位置。

嗨有这个相同的权限错误问题解决了这种方式

确保您在192.168.0.4上复制的目录由用户用户拥有

 chown username downloads 

在你的本地机器上然后做

 sudo scp filename.zip username@192.168.0.4:/etc/Myfiles/downloads 

干杯

Permisssion Denied意味着您不是服务器的根。 你只需在那里开一个账户。 那么在这种情况下你需要这样做:

 sudo scp -r /path2yourFolder/ username@server_Ip:/home/username 

这将复制到服务器上的主目录。

这也有效:

 scp -r /path2yourFolder/ username@server_Ip:~/ 

当文件已存在于目标位置且现有文件具有只读权限(阻止文件被覆盖)时,我发生此错误。 在我的情况下,我只是登录并删除了现有文件,并纠正了问题。

我遇到了类似的问题,因为ssh需要-p xxxx来指定端口,而scp需要-P xxxx来指定端口。 轻微不一致,很容易错过:(

我试图从我的本地机器复制为username@localhost ; 我使用的SSH密钥未注册访问我的localhost,所以我被拒绝了。 当我从部分删除它时,它工作。

有同样的问题。 我发现包含我的文件的目录没有足够的权限。 所以我只是使用源机器上的chmod -R 771 directory_path递归更改模式。