Ich versuche, mit scp eine große Datei in die Cloud Shell zu kopieren.
Mit dem vorgeschlagenen Befehl von diesemSO Antwort
gcloud alpha cloud-shell scp \
localhost:~/Sites/my-app/big_file cloudshell:~/big_file
Aber obwohl ich sehe, dass ein Schlüssel für den Server hinzugefügt wird, schlägt es fehl mitPermission denied (publickey).
Wenn ich mache
gcloud alpha cloud-shell ssh
Die Anmeldung beim Server ist problemlos
Antwort1
Es stellte sich heraus, dass bei der Aufrufung durch Google scp
der richtige Nutzername ausgelassen wurde.
Lösung Ich habe erfolgreich hochgeladen, indem ich
/usr/bin/scp -P 6000 -i /Users/me/.ssh/google_compute_engine -o \
StrictHostKeyChecking=no ~/Sites/my-app/bigfile \
[email protected]:~/big_file
Wie Sie das herausfinden
Ich konnte dies anhand der --verbosity debug
Flagge herausfinden
# 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...]
^ Dies ist die Zeile, die den ausgeführten Befehl zeigt
Dann lief ich los, ssh
um zu sehen, ob es einen Unterschied in den Argumenten gab
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...]
^ Beachten Sie, dass der Benutzername der Server-IP vorangestellt wird.
Also habe ich den SCP-Befehl kopiert und meinen Benutzernamen hinzugefügt, und es hat wunderbar funktioniert.
Hoffe, dass dies anderen hilft, die versuchen, das herauszufinden.
Antwort2
Dies sollte in der neuesten Version von gcloud behoben sein, die Sie durch Ausführen von erhalten können gcloud components update
. Vielen Dank, dass Sie die Alphaversion ausprobiert haben!