Trasferisci i file nelle VM Linux

Per trasferire i file nelle istanze VM di Compute Engine, sono disponibili opzioni diverse a seconda del sistema operativo della workstation e del sistema operativo dell'istanza VM di destinazione.

Trasferimento da Alle VM Linux
Linux o macOS
Windows

Trasferisci i file tramite Cloud Storage

I bucket Cloud Storage possono essere utilizzati come punto di trasferimento tra te e le tue VM. Puoi utilizzare un browser web, Google Cloud CLI o un linguaggio di programmazione per trasferire file tra Cloud Storage e VM di Compute Engine.

Per il passaggio di caricamento e download è possibile utilizzare diversi tipi di credenziali per soddisfare al meglio le tue esigenze:

Per utilizzare Cloud Storage per trasferire file tra un computer e una VM:

  1. Crea un bucket Cloud Storage se non hai un bucket esistente da utilizzare per i trasferimenti di file.
  2. Utilizza le autorizzazioni IAM per modificare l'accesso al bucket:
    • Agli account che caricano file nel bucket deve essere concesso l'opzione Amministratore oggetti Storage.
    • Agli account che scaricano file deve essere concesso il ruolo Visualizzatore oggetti Storage.
  3. Accedi al dispositivo di origine e carica i file nel bucket.
  4. Accedi al dispositivo di destinazione e scarica i file dal bucket per completare il trasferimento dei file.
  5. (Facoltativo) Elimina i file di cui non hai più bisogno per evitare costi di archiviazione indesiderati.

Se devi trasferire i file nella direzione opposta, puoi invertire la procedura. Assicurati che l'account che carica il file abbia accesso in scrittura al bucket.

Trasferimento di file utilizzando SSH nel browser

Se puoi stabilire una connessione SSH a una VM utilizzando SSH nel browser, puoi utilizzare questa connessione per trasferire i file da e verso la VM.

Carica sulla VM

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Nell'elenco delle istanze di macchine virtuali, fai clic su SSH nella riga dell'istanza a cui vuoi connetterti.

    Pulsante SSH accanto al nome dell'istanza.

  3. Una volta stabilita la connessione, fai clic sull'icona di caricamento .

    Pulsante Carica.

    Viene visualizzata la finestra di dialogo per il caricamento.

  4. Scegli i file da caricare.
  5. Carica i file facendo clic su Carica file. Il file viene caricato nella directory /home/USER.

Scarica dalla VM

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Nell'elenco delle istanze di macchine virtuali, fai clic su SSH nella riga dell'istanza a cui vuoi connetterti.

    Pulsante SSH accanto al nome dell'istanza.

  3. Una volta stabilita la connessione, fai clic sull'icona di download .

    Pulsante Scarica.

    Viene visualizzata la finestra di dialogo per il download.

  4. Nella casella di testo Percorso, inserisci il percorso relativo del file da scaricare.
  5. Scarica il file facendo clic su Scarica. Il file viene scaricato nella cartella di download predefinita della workstation.

Trasferisci i file utilizzando Google Cloud CLI

Google Cloud CLI fornisce un'utilità per il trasferimento di file SCP (Secure Copy Protocol) tramite una connessione SSH stabilita.

Per trasferire file utilizzando SCP:

  1. Esamina le regole del firewall e verifica che le connessioni SSH sulla porta 22 siano consentite. In caso contrario, crea una regola firewall SSH.
  2. Assicurati che gcloud CLI sia installato sul dispositivo di origine contenente i file da trasferire.
  3. Utilizza il comando gcloud compute scp per trasferire i file alla macchina di destinazione.

L'esempio seguente copia un file dalla workstation alla home directory della VM:

gcloud compute scp LOCAL_FILE_PATH VM_NAME:REMOTE_DIR

Sostituisci quanto segue:

  • LOCAL_FILE_PATH: il percorso del file nella macchina
  • VM_NAME: il nome della VM
  • REMOTE_DIR: una directory sulla macchina remota

Puoi anche copiare file e directory in senso inverso dal computer remoto. L'esempio seguente copia in modo ricorsivo una directory dall'origine alla destinazione:

gcloud compute scp --recurse VM_NAME:REMOTE_DIR LOCAL_FILE_PATH

Per maggiori informazioni, consulta la documentazione di riferimento di gcloud compute scp.

Trasferisci file utilizzando SCP sulle workstation Linux e macOS

Lo strumento a riga di comando scp funziona in modo simile al comando gcloud compute scp, ma richiede la gestione manuale delle chiavi SSH.

Per trasferire file utilizzando SCP, la tua VM deve avere una regola firewall sulla rete utilizzata dalla VM che consenta le connessioni SSH sulla porta 22. Per verificare l'esistenza di questa regola firewall, cerca una regola firewall che consenta le connessioni tcp:22 nella console Google Cloud.

Vai a Regole firewall

Se non hai una regola firewall che consente le connessioni SSH sulla porta 22, crea la regola firewall.

Lo strumento scp utilizza gli stessi file di chiave utilizzati per connettersi alle istanze mediante SSH standard.

  1. Se non hai ancora applicato una chiave pubblica al progetto o all'istanza VM della console Google Cloud, crea una coppia di chiavi SSH e aggiungi la chiave pubblica ai metadati del progetto o dell'istanza.

  2. Trova l'IP esterno della VM a cui vuoi inviare i file. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  3. Utilizza lo strumento scp per copiare un file dalla workstation alla home directory della VM di destinazione. Per questo esempio, la chiave privata si trova in ~/.ssh/my-ssh-key.

    scp -i ~/.ssh/my-ssh-key LOCAL_FILE_PATH USERNAME@IP_ADDRESS:~
    

    Sostituisci quanto segue:

    • LOCAL_FILE_PATH: il nome del file locale che vuoi caricare
    • USERNAME: il tuo nome utente
    • IP-ADDRESS: l'indirizzo IP esterno della VM

Puoi anche copiare i file da una VM alla tua workstation locale invertendo le variabili di origine e di destinazione. Per questo esempio, copia un file dalla VM in un percorso sulla workstation.

scp -i ~/.ssh/my-ssh-key USERNAME@IP_ADDRESS:REMOTE_FILE_PATH LOCAL_FILE_PATH

Sostituisci quanto segue:

  • USERNAME: il tuo nome utente
  • IP_ADDRESS: l'indirizzo IP esterno della VM
  • REMOTE_FILE_PATH: il nome del file remoto che vuoi scaricare
  • LOCAL_FILE_PATH: il percorso sulla workstation in cui vuoi scaricare il file

Trasferisci file utilizzando WinSCP sulle workstation Windows

Sulle workstation Windows, il client WinSCP consente di gestire i file nelle istanze tramite un'interfaccia grafica per browser di file.

WinSCP utilizza gli stessi file di chiave che utilizzi per connetterti alle VM tramite PuTTY.

  1. Segui questi passaggi se non hai configurato l'autenticazione SSH basata su chiave per l'istanza:

    1. Crea una coppia di chiavi SSH con PuTTYgen. La chiave SSH privata deve utilizzare il formato .ppk, che è il formato predefinito per le chiavi create da PuTTYgen.

    2. Aggiungi la chiave SSH pubblica ai metadati del progetto o della VM. Per ulteriori informazioni, consulta Aggiungere chiavi SSH ai metadati di progetto o Aggiungere chiavi SSH ai metadati dell'istanza.

  2. Trova l'IP esterno della VM a cui vuoi inviare i file.

    1. Nella console Google Cloud, vai alla pagina Istanze VM.

      Vai a Istanze VM

    2. Nell'elenco delle VM, trova l'indirizzo IP esterno nella colonna IP esterno per la tua VM.
  3. Scarica e installa WinSCP. Le impostazioni di installazione predefinite funzionano per la maggior parte degli utenti.

  4. Avvia il programma WinSCP. Si apre una finestra di accesso in cui puoi configurare le impostazioni di connessione.

  5. In WinSCP, configura le impostazioni di connessione.

    1. Seleziona SCP come protocollo di trasferimento dei file nel campo File Protocol.

    2. Nel campo Nome host, specifica l'indirizzo IP esterno della VM a cui vuoi connetterti.

    3. Nel campo Nome utente, specifica il nome utente Google che utilizzi per accedere al progetto. Per questo esempio, l'utente è example-user.

      Impostare il protocollo file su SCP, il nome host su 104.196.31.103 e il nome utente su utente-esempio.

  6. Fai clic sull'elenco a discesa Avanzate per aprire le impostazioni avanzate e passa a SSH > Autenticazione.

  7. Nella casella File chiave privata, specifica il percorso del file di chiave privata della coppia di chiavi SSH che hai creato per la VM.

    Impostazione del file della chiave privata su my-ssh-key.ppk nella finestra di dialogo Impostazioni avanzate del sito.

  8. Fai clic su OK per salvare le impostazioni avanzate.

  9. Fai clic su Login (Accedi) per connetterti alla VM. Se la connessione viene stabilita, la finestra apre il file system locale a sinistra e il file system della VM a destra. Puoi accedere a diverse directory di questi file system e trascinare i file per trasferirli da e verso la VM.

  10. Probabilmente non hai l'autorizzazione per gestire la maggior parte dei file al di fuori della home directory della VM. Vai alla home directory della VM:

    /home/USERNAME
    
  11. Utilizza l'interfaccia WinSCP per spostare i file tra la workstation e la VM.

  12. Dopo aver copiato i file nella VM, connettiti all'istanza in modo da poter eseguire o spostare i file con autorizzazioni sudo complete.

Passaggi successivi