在两个Google Cloud实例之间复制文件

use*_*445 10 google-cloud-platform

我在Google Cloud中有两个项目,我需要将文件从一个项目中的实例复制到另一个项目中的实例.我试图使用'gcloud compute copy-files'命令,但我收到此错误:

gcloud compute copy-files test.tgz --project stack-complete-343 instance-IP:/home/ubuntu --zone us-central1-a 

ERROR: (gcloud.compute.copy-files) Could not fetch instance: - Insufficient Permission
Run Code Online (Sandbox Code Playgroud)

Mar*_*s I 11

我能够用一个全新的VM实例复制你的问题,得到同样的错误.以下是我为解决问题而采取的几个步骤:

确保您已通过身份验证,并拥有使用同一帐户的两个项目的权限!

$ gcloud config list (如果您看到服务帐户@ developer.gserviceaccount.com,则需要切换到两个项目上启用的帐户.您可以从Devlopers控制台>权限检查)

$ gcloud auth login(将链接复制到新窗口,登录,复制代码并将其粘贴回提示中)

$ gcloud compute copy-files test.tgz --project stack-complete-343 instance-IP:/home/ubuntu --zone us-central1-a (我也会使用实例名称而不是IP)

最后一个命令也应该生成你的ssh密钥.您应该看到类似的内容,但不要担心输入密码:

警告:将执行[/ usr/bin/ssh-keygen]以生成密钥.

生成公钥/私钥rsa密钥对

输入密码(无密码短语为空):

  • “gcloudcomputecopy-files”已弃用,并替换为“cloudcomputescp” (2认同)