我正在尝试通过安全副本(scp)将文件传输到我的Google云托管Linux(Debian)实例。我完全按照文档所说的从本地机器连接到实例。 https://cloud.google.com/compute/docs/instances/connecting-to-instance。
我可以成功登录:
ssh -i ~/.ssh/my-keygen [USERNAME]@[IP]
但是,当我想将文件复制到实例时,我收到一条消息“权限被拒绝”。
scp -r -i ~/.ssh/my-keygen /path/to/directory/ [USERNAME]@[IP]:/var/www/html/
看起来我登录的用户没有写文件的权限,所以我已经尝试更改/ var / www /的文件权限,但这仍然给出了权限被拒绝的消息。
我还尝试将用户添加到根组,但这仍然会出现同样的问题。
usermod -G root myuser
命令行应该是
scp -r -i ~/.ssh/my-keygen /path/to/directory/ [USERNAME]@[IP]:/var/www/html/
假设您的文件位于本地/path/to/directory/
中,而/var/www/html/
位于远程服务器上。
权限不允许写入/var/www/html/
。写给/tmp/
应该有效。然后,您可以使用sudo
权限将root
文件复制到所需目的地。