Como copiar arquivos de uma máquina para outra usando ssh [duplicate]

563

Estou usando a máquina Linux (centos), já conectei ao outro sistema usando ssh . Agora a minha pergunta é como posso copiar arquivos de um sistema para outro sistema?

Suponha que, no meu ambiente, eu tenha dois sistemas como System A e System B . Estou usando System A machine e algum outro usando System B machine.

Como posso copiar um arquivo de System B para System A ? E copie um arquivo de System A para System B ?

    
por user3021349 24.12.2013 / 10:43

4 respostas

818

Sintaxe:

scp <source> <destination>

Para copiar um arquivo de B para A enquanto estiver conectado em B :

scp /path/to/file username@a:/path/to/destination

Para copiar um arquivo de B para A enquanto estiver conectado em A :

scp username@b:/path/to/file /path/to/destination
    
por 24.12.2013 / 10:48
94

No caso, se você precisar de uma abordagem alternativa.

Instale o sshfs. se você usa o ubuntu / debian:

sudo apt-get install sshfs

ou, se você usar centos / rhel:

sudo yum install fuse-sshfs

Crie um diretório vazio

mkdir /home/user/testdir

"link" ou "monte" os dois diretórios

sshfs [email protected]:/remote/dir /home/user/testdir

"desvincular" os dirs

fusermount -u /home/user/testdir

Para mais informações, linuxjournal.com

    
por 24.12.2013 / 10:58
38

Às vezes você precisa se divertir com o tar:

tar -C / -cf - \
  opt/widget etc/widget etc/cron.d/widget etc/init.d/widget \
  --exclude=opt/widget/local.conf | 
  ssh otherhost tar -C / -xvf -
    
por 24.12.2013 / 16:17
17

Se você quiser manter os arquivos em ambos os sistemas em sincronia, dê uma olhada no programa rsync :

(veja o tutorial aqui)

    
por 24.12.2013 / 22:30

Tags