Назад | Перейти на главную страницу

scp to google cloud-shell не работает (ssh работает)

Я пытаюсь использовать scp для копирования большого файла в облачную оболочку.

Используя предложенную команду из этого ТАК ответ

gcloud alpha cloud-shell scp \
  localhost:~/Sites/my-app/big_file cloudshell:~/big_file

Но даже если я вижу, что он добавляет ключ для сервера, он не работает с Permission denied (publickey).

Если я сделаю

gcloud alpha cloud-shell ssh

он входит на сервер нормально

Оказывается, Google вызывает scp не указывал правильное имя пользователя.

Решение Я успешно загрузил, выполнив

/usr/bin/scp -P 6000 -i /Users/me/.ssh/google_compute_engine -o \
  StrictHostKeyChecking=no ~/Sites/my-app/bigfile \ 
  cj@35.185.184.136:~/big_file

Как в этом разобраться

Я смог обнаружить это, используя --verbosity debug флаг

# gcloud alpha cloud-shell scp --verbosity debug localhost:~/Sites/my-app/big_file cloudshell:~/big_file
    DEBUG: Running [gcloud.alpha.cloud-shell.scp] with arguments: [(cloudshell|localhost):DEST: "cloudshell:~/big_file", (cloudshell|localhost):SRC:1: "['localhost:~/Sites/my-app/big_file']", --verbosity: "debug"]
    DEBUG: Running command [/usr/bin/scp -P 6000
      -i /Users/chrisjensen/.ssh/google_compute_engine
      -o StrictHostKeyChecking=no
      ~/Sites/my-app/big_file 35.185.184.136:~/big_file].
[...more debug info...]

^ Это строка, которая показывает команду, которая была запущена

Затем я побежал ssh чтобы увидеть, есть ли разница в аргументах

gcloud alpha cloud-shell ssh --verbosity debug
DEBUG: Running [gcloud.alpha.cloud-shell.ssh] with arguments: [--verbosity: "debug"]
DEBUG: Running command [/usr/bin/ssh -t -p 6000
  -i /Users/chrisjensen/.ssh/google_compute_engine
  -o StrictHostKeyChecking=no cj@127.0.0.1].
[...more debug info...]

^ Обратите внимание, что он добавляется именем пользователя к IP-адресу сервера.

Итак, я скопировал команду scp и добавил свое имя пользователя, и это сработало.

Надеюсь, это поможет другим, пытающимся понять это.

Это должно быть исправлено в последней версии gcloud, которую вы можете получить с помощью runnign gcloud components update. Спасибо, что попробовали альфу!