GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso copiare i file da un server Google Cloud Compute al mio computer locale

Prova a utilizzare gcloud compute scp :

gcloud compute scp 
  [[[email protected]]INSTANCE:]SRC [[[[email protected]]INSTANCE:]SRC …]
  [[[email protected]]INSTANCE:]DEST
  [--compress] [--dry-run] [--force-key-file-overwrite]
  [--plain] [--port=PORT] [--recurse] [--scp-flag=SCP_FLAG]
  [--ssh-key-file=SSH_KEY_FILE]
  [--strict-host-key-checking=STRICT_HOST_KEY_CHECKING]
  [--zone=ZONE]
  [GCLOUD_WIDE_FLAG …]
  [-h]

ad esempio,

$ gcloud compute scp \
    my-instance-1:~/file-1 \
    my-instance-2:~/file-2 \
    ~/my-destination \
    --zone us-central2-a

In alternativa, puoi anche utilizzare (non-gcloud ) sftp o scp; guarda questa risposta SO per i dettagli sugli argomenti della riga di comando che devi specificare, che citerò qui per semplicità:

sftp -o IdentityFile ~/.ssh/google_compute_engine [email protected]

Per utilizzare qualsiasi altro strumento SFTP, fornire allo stesso modo il percorso della chiave privata SSH e sarà in grado di connettersi all'istanza. Tuttavia, nel caso di gcloud , può risolvere il nome host nell'IP pubblico stesso; per tutti gli altri strumenti, dovrai trovare l'IP manualmente e specificare direttamente l'indirizzo IP.


(gcloud compute copy-files è ora deprecato, quindi gcloud compute scp è consigliato)

Usa gcloud compute scp come segue:

gcloud compute scp [[[email protected]]INSTANCE:]SRC [[[[email protected]]INSTANCE:]SRC …]
[[[email protected]]INSTANCE:]DEST [--compress] [--dry-run] [--force-key-file-overwrite]
[--plain] [--port=PORT] [--recurse] [--scp-flag=SCP_FLAG] 
[--ssh-key-file=SSH_KEY_FILE] [--strict-host-key-checking=STRICT_HOST_KEY_CHECKING]
[--zone=ZONE] [GCLOUD_WIDE_FLAG …]

Ad esempio:

$ gcloud compute scp example-instance:~/REMOTE-DIR ~/LOCAL-DIR \
      --zone us-central1-a

Se la zona è già impostata (usando gcloud config set compute/zone ZONE o tramite la variabile di ambiente, non è necessario specificare la zona sopra)

Inoltre, gcloud compute scp non copia in modo ricorsivo per impostazione predefinita. Dobbiamo usare il --recurse contrassegnalo.

Consulta la documentazione dettagliata qui.


Forse puoi usare SFTP (google ha usato Filezilla nei loro documenti). Non sono troppo bravo con la CLI e quindi mi piacciono le opzioni della GUI fornite da Filezilla e altri.

Ecco i passaggi ad alto livello:

  1. Installa ed esegui gcloud SDK ($ gcloud init )
  2. Genera chiave SSH ($ gcloud compute ssh )
  3. Imposta il client FTP (installa e aggiungi il file chiave)
  4. Connettiti alla VM utilizzando il client SFTP

Ed ecco la documentazione di Google.

Inoltre, ho registrato questo, potrebbe essere utile:

https://www.youtube.com/watch?v=9ssfE6ODpak


Linux
  1. Come copiare le impostazioni da una macchina all'altra?

  2. Come copiare file da Wine a desktop?

  3. Scopri come copiare file e cartelle da/su un altro server

  4. Come copiare l'intera cartella dall'istanza Amazon EC2 Linux alla macchina Linux locale?

  5. Come copiare file da una macchina Vagrant a localhost

Come creare una macchina virtuale (VM) su Google Cloud Platform (GCP)

Come scaricare file dal server SFTP utilizzando lo script python

Come copiare un file da un server remoto su una macchina locale?

Come eseguire il rollback di un server cloud

Come utilizzare Rsync per copiare/sincronizzare file tra server

Come posso copiare una cartella dalla riga di comando di Linux?