Estoy intentando usar scp para copiar un archivo grande a Cloud Shell.
Usando el comando sugerido de estePues contesta
gcloud alpha cloud-shell scp \
localhost:~/Sites/my-app/big_file cloudshell:~/big_file
Pero aunque puedo verlo agregando una clave para el servidor, falla conPermission denied (publickey).
Si lo hago
gcloud alpha cloud-shell ssh
inicia sesión en el servidor muy bien
Respuesta1
Resulta que la invocación de Google scp
estaba omitiendo el nombre de usuario correcto.
Solución Subí exitosamente haciendo
/usr/bin/scp -P 6000 -i /Users/me/.ssh/google_compute_engine -o \
StrictHostKeyChecking=no ~/Sites/my-app/bigfile \
[email protected]:~/big_file
Cómo resolver esto
Pude descubrir esto usando la --verbosity debug
bandera.
# 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...]
^ Esta es la línea que muestra el comando que se ejecutó.
Luego corrí ssh
a ver si había alguna diferencia en los argumentos.
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 [email protected]].
[...more debug info...]
^ Observe que antepone el nombre de usuario a la IP del servidor.
Entonces copié el comando scp y agregué mi nombre de usuario, y funcionó de maravilla.
Espero que esto ayude a otros a intentar resolver esto.
Respuesta2
Esto debería solucionarse en la última versión de gcloud, que puedes obtener ejecutando gcloud components update
. ¡Gracias por probar el alfa!