GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo puedo copiar archivos de un servidor de computación en la nube de Google a mi máquina local?

Intenta usar 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]

por ejemplo,

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

Como alternativa, también puede usar (no gcloud ) sftp o scp; consulte esta respuesta SO para obtener detalles sobre los argumentos de la línea de comando que debe especificar, que citaré aquí para simplificar:

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

Para usar cualquier otra herramienta SFTP, proporcione de manera similar la ruta a la clave privada SSH y podrá conectarse a la instancia. Sin embargo, en el caso de gcloud , puede resolver el nombre de host a la IP pública por sí mismos; para todas las demás herramientas, deberá encontrar la IP manualmente y especificar la dirección IP directamente.


(gcloud compute copy-files está en desuso ahora, por lo tanto gcloud compute scp se recomienda)

Usa gcloud compute scp de la siguiente manera:

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 …]

Por ejemplo:

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

Si la zona ya está configurada (usando gcloud config set compute/zone ZONE o a través de la variable de entorno, entonces no necesita especificar la zona arriba)

Además, gcloud compute scp no copia recursivamente por defecto. Necesitamos usar el --recurse bandera para ello.

Consulte la documentación detallada aquí.


Tal vez puedas usar SFTP (google usó Filezilla en sus documentos). No soy muy bueno con CLI y, por lo tanto, me gustan las opciones de GUI de Filezilla y otros proveedores.

Estos son los pasos a un alto nivel:

  1. Instala y ejecuta el SDK de gcloud ($ gcloud init )
  2. Generar clave SSH ($ gcloud compute ssh )
  3. Configurar el cliente FTP (instalar y agregar el archivo clave)
  4. Conéctese a la máquina virtual mediante el cliente SFTP

Y aquí está la documentación de Google.

Además, he grabado esto, podría ser útil:

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


Linux
  1. Cómo descargar archivos del servidor SFTP usando el script de python

  2. ¿Cómo copiar la carpeta completa de la instancia de Amazon EC2 Linux a la máquina local de Linux?

  3. Cómo copiar un archivo de una máquina Vagrant a localhost

  4. ¿Cómo puedo eliminar el historial ANTIGUO de Google Chrome?

  5. ¿Cómo puedo copiar la salida de un comando remoto en el portapapeles local?

Cómo crear una máquina virtual (VM) en Google Cloud Platform (GCP)

¿Cómo copiar configuraciones de una máquina a otra?

¿Cómo copiar archivos de Wine a Desktop?

Cómo revertir un servidor en la nube

Cómo usar Rsync para copiar/sincronizar archivos entre servidores

Cómo obtener varios archivos de una máquina remota a una local con Ansible