【问题标题】:Google cloud scp permission denied谷歌云 scp 权限被拒绝
【发布时间】:2016-12-21 18:33:20
【问题描述】:

我正在尝试通过安全副本 (scp) 将文件传输到我的 Google 云托管 Linux (Debian) 实例。我完全按照文档中的说明从本地机器连接到实例。 https://cloud.google.com/compute/docs/instances/connecting-to-instance

  • 创建了 SSH 密钥生成器
  • 将注册机添加到我的实例中

我可以通过以下方式成功登录:

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 或用户权限验证问题,尝试 SCP 文件到服务器上的不同目录(/tmp/ 或用户主目录)。
  • @BalajiReddy 我尝试了你所说的,但得到了相同的权限被拒绝消息。

标签: linux google-compute-engine google-cloud-platform scp permission-denied


【解决方案1】:

命令行应该是

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 权限的目标位置。

【讨论】:

  • 对不起,这是我的问题的粗心,但不是问题所在。我已经编辑了我的问题。
  • 那么权限是什么? ls -ld /var/www/html/?
  • 嗯.. 那些是:drwxr-xr-x 2 root root 4096 Aug 15 12:52 /var/www/html/
  • 这很明显。除非您的 [USERNAME]root,否则您没有对该目录的写入权限。将文件复制到您有权访问的某个 /tmp/ 中,然后将它们作为 root 移动到 /var/www/ 或授予您的用户(或组)write 权限。
  • 我能够将文件传输到/tmp/,我会尝试将用户添加到根组。也许您可以编辑您的答案,以便我批准。
猜你喜欢
  • 2020-10-18
  • 1970-01-01
  • 1970-01-01
  • 2019-01-07
  • 2021-11-18
  • 2016-06-13
  • 2018-11-16
  • 2021-11-19
  • 1970-01-01
相关资源
最近更新 更多