Google 云 scp 权限被拒绝
Google cloud scp permission denied
我正在尝试通过安全复制 (scp) 将文件传输到我的 Google 云托管 Linux (Debian) 实例。我完全按照文档中的说明从本地机器连接到实例。 https://cloud.google.com/compute/docs/instances/connecting-to-instance。
- 创建了 SSH 注册机
- 将注册机添加到我的实例
我可以通过以下方式成功登录:
ssh -i ~/.ssh/my-keygen [USERNAME]@[IP]
但是当我想将文件复制到实例时,我收到一条消息 "permission denied"。
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
权限的所需目标。
如果 SSH 无法正常工作,请在本地安装 gcloud CLI 和 运行 以下内容:gcloud compute scp --recurse /path/to/directory [IP] --tunnel-through-iap
。这会将目录转储到您的 /home/[USERNAME]/
文件夹中。然后登录控制台,使用sudo
将目录移动到/var/www/html/.
有关文档,请参阅 https://cloud.google.com/sdk/gcloud/reference/compute/scp。
我正在尝试通过安全复制 (scp) 将文件传输到我的 Google 云托管 Linux (Debian) 实例。我完全按照文档中的说明从本地机器连接到实例。 https://cloud.google.com/compute/docs/instances/connecting-to-instance。
- 创建了 SSH 注册机
- 将注册机添加到我的实例
我可以通过以下方式成功登录:
ssh -i ~/.ssh/my-keygen [USERNAME]@[IP]
但是当我想将文件复制到实例时,我收到一条消息 "permission denied"。
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
权限的所需目标。
如果 SSH 无法正常工作,请在本地安装 gcloud CLI 和 运行 以下内容:gcloud compute scp --recurse /path/to/directory [IP] --tunnel-through-iap
。这会将目录转储到您的 /home/[USERNAME]/
文件夹中。然后登录控制台,使用sudo
将目录移动到/var/www/html/.
有关文档,请参阅 https://cloud.google.com/sdk/gcloud/reference/compute/scp。