Como transferir arquivos (local e remoto) no Linux

Transferir arquivos no Linux é uma tarefa comum que todo administrador de sistema deve saber, especialmente ao transferir arquivos entre sistemas locais ou remotos através de redes.

O Linux oferece duas ferramentas populares para esse propósito: SCP (Secure Copy) e Rsync . Ambas fornecem uma maneira segura e conveniente de transferir arquivos entre máquinas locais ou remotas.

Neste artigo, exploraremos como usar os comandos SCP e Rsync para transferir arquivos, abrangendo transferências de arquivos locais e remotas.

1. Entendendo o scp (Secure Copy Protocol) no Linux

O comando scp é um programa de linha de comando usado para copiar com segurança arquivos e diretórios entre dois hosts usando SSH (Secure Shell) , o que significa que os dados são transferidos de maneira criptografada durante a transferência de arquivos pela Internet.

A sintaxe geral básica para usar o scp é a seguinte:

scp [opções] arquivo_origem destino

Aqui está a explicação do comando:

  • source_file : O arquivo ou diretório que você deseja copiar.
  • destino : O local onde você deseja copiar o arquivo ou diretório.

Copiando arquivos localmente no Linux

Se você quiser copiar um arquivo de um diretório para outro na mesma máquina, você pode usar:

scp ~/documento.txt /tmp

Copiando arquivos para um servidor remoto

Para copiar arquivos da sua máquina local para um servidor remoto, você precisará mencionar o endereço IP do servidor remoto e o caminho de destino.

scp ~/document.txt nomedeusuario@192.168.1.100 :/home/nomedeusuario

Copiando arquivos de um servidor remoto

Para copiar um arquivo de um servidor remoto para sua máquina local, basta inverter a origem e o destino:

scp nomedeusuario@192.168.1.100 :/home/nomedeusuario/documento.txt /tmp

Para copiar um diretório inteiro, use opção a -r (que significa recursiva):

scp -r ~/linehostcloud /tmp

2. Entendendo o rsync no Linux

O comando rsync é outra ferramenta de linha de comando de transferência de arquivos amplamente utilizada para transferir arquivos e diretórios entre a origem e o destino, sendo comumente usada para sincronizar diretórios.

A sintaxe básica para usar o rsync é:

rsync [opções] [origem] [destino]

Transferir arquivos localmente

Para transferir arquivos ou diretórios localmente, você pode usar rsync com a opção -a para habilitar o modo de arquivamento, que preserva permissões, propriedade e carimbos de data/hora.
A opção -v significa verbose, que mostra o progresso da transferência do arquivo.
rsync -av ~/minhapasta /backup

Transferir arquivos para um servidor remoto

Para transferir arquivos para um servidor remoto, o rsync usa SSH por padrão. Aqui você precisa especificar o endereço IP e a localização do servidor remoto:

rsync -av ~/minhapasta nomedeusuario@192.168.1.100 :/home/nomedeusuario

O comando acima será transferido minhapasta para o servidor remoto e, se você executá-lo novamente,o rsync copiará apenas os arquivos que foram alterados.

Transferir arquivos de um servidor remoto

Para transferir arquivos de um servidor remoto para sua máquina local, use:

rsync -av nomedeusuario@192.168.1.100 :/home/nomedeusuario/minhapasta /backup

Sincronizando diretórios com Rsync

Um dos principais pontos fortes do rsync é sua capacidade de sincronizar diretórios, o que significa que você pode manter dois diretórios sincronizados, estejam eles na mesma máquina ou em máquinas diferentes.

Por exemplo, para sincronizar um diretório local com um diretório remoto:

rsync -av /local/diretório/ nomedeusuário@host_remoto:/diretório/remoto/

Para sincronizar um diretório remoto com um diretório local, você inverteria a origem e o destino no comando rsync.

rsync -av nomedeusuário@host_remoto:/diretório/remoto/ /diretório/local/

Se uma transferência for interrompida devido a uma falha de rede ou outros motivos, você pode retomá-la usando a opção --partial que permite retomar a transferência de arquivos de onde parou:

rsync -av --partial /caminho/para/a/origem nomedeusuario@host_remoto:/caminho/para/o/destino
Conclusão

Transferir arquivos no Linux é uma tarefa direta com ferramentas como scp e rsync . Enquanto scp é simples e seguro, rsync oferece recursos mais avançados como sincronização e eficiência.

Entender como usar essas ferramentas de forma eficaz ajudará você a gerenciar seus arquivos e dados em sistemas locais e remotos.

Também pode te interessar

Publicidade