Como transferir arquivos para instâncias

Para transferir arquivos para instâncias do Compute Engine, opções diferentes estão disponíveis, dependendo do sistema operacional da estação de trabalho e do sistema operacional da instância de destino.

Transferir de Para instâncias do Linux Para instâncias do Windows
Linux ou macOS
Windows

Como transferir arquivos para instâncias do Linux e Windows

Use o Cloud Storage para transferir arquivos para todos os sistemas operacionais.

Como transferir arquivos por meio do Cloud Storage

Os buckets do Cloud Storage podem ser um ponto de transferência intermediário prático entre você e as instâncias, independentemente do sistema operacional.

Esse método de transferência de arquivos funciona em quase todos os sistemas operacionais e tipos de instância, desde que a instância tenha acesso ao bucket do Cloud Storage por meio de uma conta de serviço ou das credenciais pessoais de usuário.

Faça upload dos arquivos da sua estação de trabalho para um bucket do Cloud Storage. Depois, faça o download desses arquivos do bucket para as instâncias.

  1. Crie um novo bucket do Cloud Storage ou identifique um bucket atual que você pretende usar para transferir arquivos.

  2. Na sua estação de trabalho, faça upload dos arquivos para o bucket.

  3. Conecte-se à instância por meio de SSH ou RDP:

  4. Na sua instância, faça o download de arquivos do bucket.

Se você precisar transferir arquivos na outra direção, inverta o processo. Faça upload dos arquivos da sua instância. Em seguida, faça o download desses arquivos para sua estação de trabalho.

Como transferir arquivos para instâncias do Linux

Como transferir arquivos usando SSH no navegador

Se você conseguir estabelecer uma conexão SSH com uma instância usando a janela SSH do navegador, utilize essa conexão para transferir arquivos para a instância.

  1. No Console do Cloud, acesse a página Instâncias de VM.

    Acessar a página Instâncias de VM

  2. Na lista de instâncias de máquina virtual, clique em SSH na linha da instância à qual você quer se conectar.

    Botão

  3. Depois que a conexão for estabelecida, clique no ícone de engrenagem no canto superior direito da janela SSH do navegador e selecione Fazer upload do arquivo. Como alternativa, selecione Fazer o download do arquivo para fazer o download de um arquivo da instância.
    Menu do ícone de engrenagem.
  4. A caixa de diálogo de transferência será aberta. Especifique o arquivo a ser transferido.

Se você tiver feito upload de um arquivo, ele estará no diretório /home/$USER do usuário.

Caso você tenha feito download de um arquivo, ele estará na pasta de downloads padrão na estação de trabalho local.

Como transferir arquivos usando a ferramenta de linha de comando gcloud

A ferramenta de linha de comando gcloud oferece um utilitário de transferência de arquivos SCP, criando um par de chaves SSH para você na primeira vez em que se conectar. A chave privada é armazenada no dispositivo local, e a chave pública correspondente é copiada para os metadados do projeto ou da instância.

Para transferir arquivos usando o SCP, é preciso que, na rede usada pela instância, exista uma regra de firewall que permita conexões SSH na porta 22. Leia Como usar regras de firewall para saber como definir as regras de firewall necessárias para permitir essas conexões.

Instale a ferramenta gcloud e use-a para copiar arquivos e diretórios para a instância com o comando scp.

O exemplo a seguir copia um arquivo da estação de trabalho para o diretório principal na instância.

gcloud compute scp local-file-path instance-name:~

Substitua o seguinte:

  • local-file-path: o caminho do arquivo na estação de trabalho.
  • instance-name: o nome da instância.

Também é possível copiar arquivos e diretórios de uma instância para a estação de trabalho local. O exemplo a seguir copia de maneira recursiva um diretório da instância (a origem) para a estação de trabalho (o destino).

gcloud compute scp --recurse instance-name:remote-dir local-dir

Substitua o seguinte:

  • instance-name: o nome da instância.
  • remote-dir: o caminho para o diretório na instância.
  • local-dir: o caminho onde você quer colocar o diretório na estação de trabalho.

Para mais informações, consulte a documentação de referência gcloud compute scp.

Como transferir arquivos usando SCP em estações de trabalho Linux e macOS

A ferramenta de linha de comando scp funciona de maneira semelhante ao gcloud compute scp, mas exige que você gerencie manualmente as chaves SSH.

Para transferir arquivos usando o SCP, é preciso que, na rede usada pela instância, exista uma regra de firewall que permita conexões SSH na porta 22. Leia Como usar regras de firewall para saber como definir as regras de firewall necessárias para permitir essas conexões.

A ferramenta scp utiliza os mesmos arquivos de chave que você usa para se conectar às instâncias com SSH padrão.

  1. Se você ainda não aplicou uma chave pública ao projeto ou à instância do Console do Google Cloud, consiga um par de chaves SSH e aplique o arquivo de chave pública SSH ao projeto ou à instância.

  2. Localize o IP externo da instância para onde quer enviar arquivos. No Console do Google Cloud, acesse a página Instâncias de VMs.

    Acessar a página "Instâncias"

  3. Use a ferramenta scp para copiar um arquivo da estação de trabalho para o diretório inicial na instância de destino. Para este exemplo, a chave privada está em ~/.ssh/my-ssh-key.

    scp -i ~/.ssh/my-ssh-key local-file-path username@ip-address:~
    

    Substitua o seguinte:

    • local-file-path: o nome do arquivo local que você quer fazer upload.
    • username: seu nome de usuário.
    • ip-address: o endereço IP da instância.

Também é possível copiar arquivos de uma instância para a estação de trabalho local invertendo as variáveis de origem e destino. Neste exemplo, copie um arquivo da instância para um caminho na estação de trabalho.

scp -i ~/.ssh/my-ssh-key username@ip-address:remote-file-path local-file-path

Substitua o seguinte:

  • username: seu nome de usuário.
  • ip-address: o endereço IP da instância.
  • remote-file-path: o nome do arquivo remoto que você quer fazer o download.
  • local-file-path: o local na estação de trabalho onde quer fazer o download do arquivo.

Como transferir arquivos usando WinSCP em estações de trabalho do Windows

Nas estações de trabalho do Windows, o cliente WinSCP permite gerenciar arquivos nas instâncias por meio de uma interface gráfica do navegador de arquivos.

O WinSCP usa os mesmos arquivos de chave usados para se conectar às instâncias usando PuTTY.

  1. Se você ainda não aplicou uma chave pública ao projeto ou à instância do Console do Cloud, consiga um par de chaves SSH e aplique o arquivo de chave pública SSH ao projeto ou à instância.

  2. Faça o download e instale o WinSCP (em inglês). As configurações padrão de instalação funcionam para a maioria dos usuários.

  3. Execute o programa WinSCP. Uma janela de login será aberta. Nela, você pode definir as configurações de conexão.

  4. Localize o IP externo da instância para onde quer enviar arquivos. No Console do Google Cloud, acesse a página Instâncias de VMs.

    Acessar a página "Instâncias"

  5. No WinSCP, defina as configurações de conexão.

    1. Defina o campo File protocol como SCP.

    2. No campo Host name, especifique o endereço IP externo da instância à qual você quer se conectar.

    3. No campo User name, especifique o nome de usuário Google que você usou para acessar o projeto. Neste exemplo, o usuário é example-user.

      Defina o protocolo de arquivos como SCP, o nome de host como 104.196.31.103 e o nome de usuário como example-user.

  6. Clique na lista suspensa Advanced para abrir as configurações avançadas e navegue até SSH > Authentication.

  7. Na caixa Private key file, especifique o caminho para o arquivo da chave privada. Neste exemplo, o arquivo de chave é my-ssh-key.ppk.

    Defina o arquivo da chave privada como my-ssh-key.ppk na caixa de diálogo

  8. Clique em Ok para salvar as configurações avançadas.

  9. Clique em Login para se conectar à instância. Se a conexão for bem-sucedida, a janela abrirá o sistema de arquivos local à esquerda e o sistema de arquivos da instância à direita. Você pode navegar para diferentes diretórios nesses sistemas de arquivos e arrastar os arquivos para transferi-los para a instância e a partir dela.

  10. Você provavelmente não tem permissão para gerenciar a maioria dos arquivos fora do diretório principal na instância. Para navegar até o diretório principal na instância, insira seu diretório principal e username no campo de caminho no WinSCP.

    /home/username
    
  11. Use a interface do WinSCP para mover arquivos entre a estação de trabalho e a instância.

  12. Depois de copiar os arquivos para a instância, conecte-se a ela para executar ou mover arquivos com permissões sudo completas.

Como transferir arquivos para instâncias do Windows

Como transferir arquivos por meio do cliente RDP do Windows

Os clientes RDP de computador permitem conectar dispositivos e recursos locais, inclusive unidades locais, da estação de trabalho à instância do Windows Server a que você se conecta. Isso disponibiliza o sistema de arquivos da estação de trabalho local como um recurso remoto enquanto você permanece conectado por meio do RDP. Isso não estará disponível se você usar o Console do Cloud com a extensão Chrome RDP.

Por exemplo, em uma estação de trabalho do Windows Server 2016:

  1. Abra o RDP.
  2. Clique na guia Recursos locais.
  3. Em Dispositivos e recursos locais, clique em Mais.
  4. Marque a caixa de seleção Unidades. Quando você abre uma conexão a uma instância remota, as unidades locais selecionadas são disponibilizadas pelo Windows Explorer.

Para mais informações, consulte Clientes de Área de Trabalho Remota.

A seguir