GNU/Linux >> Znalost Linux >  >> Linux

Jak mohu zkopírovat soubory ze serveru Google Cloud Compute Server do svého místního počítače

Zkuste použít 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]

např.

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

Jako alternativu můžete také použít (non-gcloud ) sftp nebo scp; podrobnosti o argumentech příkazového řádku, které musíte zadat, naleznete v této odpovědi SO, které zde pro zjednodušení uvedu:

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

Chcete-li použít jakýkoli jiný nástroj SFTP, poskytněte mu podobně cestu k soukromému klíči SSH a bude se moci připojit k instanci. Nicméně v případě gcloud , může sám přeložit název hostitele na veřejnou IP; u všech ostatních nástrojů budete muset najít IP ručně a zadat IP adresu přímo.


(gcloud compute copy-files je nyní zastaralé, proto gcloud compute scp se doporučuje)

Použijte gcloud compute scp takto:

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

Například:

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

Pokud je zóna již nastavena (pomocí gcloud config set compute/zone ZONE nebo prostřednictvím proměnné prostředí, pak nemusíte specifikovat zónu výše)

Také gcloud compute scp ve výchozím nastavení nekopíruje rekurzivně. Musíme použít --recurse vlajka pro to.

Podrobnou dokumentaci naleznete zde.


Možná můžete použít SFTP (google použil Filezilla ve svých dokumentech). Nejsem příliš dobrý s CLI, a proto mám rád možnosti GUI, které nabízí Filezilla a další.

Zde jsou kroky na vysoké úrovni:

  1. Nainstalujte a spusťte sadu gcloud SDK ($ gcloud init )
  2. Vygenerujte klíč SSH ($ gcloud compute ssh )
  3. Nastavte klienta FTP (nainstalujte a přidejte soubor klíče)
  4. Připojte se k virtuálnímu počítači pomocí klienta SFTP

A zde je dokumentace od společnosti Google.

Také jsem to zaznamenal, mohlo by to být užitečné:

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


Linux
  1. Jak zkopírovat soubory z dockerfile na hostitele?

  2. Jak mohu obnovit/obnovit soubory z oddílu ext4?

  3. Jak používat rsync z Windows PC na vzdálený Linux server?

  1. Jak zkopírovat soubor ze vzdáleného serveru do místního počítače?

  2. Jak zkopírovat nastavení z jednoho počítače do druhého?

  3. Jak nahrát více souborů na FTP ze serveru Linux?

  1. Naučte se kopírovat soubory a složky z/na jiný server

  2. Jak zkopírovat celou složku z instance Amazon EC2 Linux do místního počítače Linux?

  3. Jak zkopírovat soubor z počítače Vagrant na localhost