SCP : UTILIZANDO O COMANDO


O comando scp é muito utilizado quando você quer copiar dados entre servidores. Por exemplo: eu tenho o servidor X, estou logado nele e preciso copiar a pasta /var/lib/arquivos para o servidor Y. Como fazer isso!?

Aqui vai uma dica:

Exemplos

Copie o arquivo "foobar.txt" de um host remoto para o host local

    $ scp your_username@remotehost.edu:foobar.txt /some/local/directory

Copie o arquivo "foobar.txt" do host local para um host remoto

    $ scp foobar.txt your_username@remotehost.edu:/some/remote/directory

Copie o diretório "foo" do host local para o diretório de um host remoto "barra"

    $ scp -r foo your_username@remotehost.edu:/some/remote/directory/bar

Copie o arquivo "foobar.txt" do host remoto "rh1.edu" para host remoto "rh2.edu"

    $ scp your_username@rh1.edu:/some/remote/directory/foobar.txt \
    your_username@rh2.edu:/some/remote/directory/

Copiando os arquivos "foo.txt" e "bar.txt" do host local para o diretório inicial no host remoto

    $ scp foo.txt bar.txt your_username@remotehost.edu:~

Copie o arquivo "foobar.txt" do host local para um host remoto usando a porta 2264

    $ scp -P 2264 foobar.txt your_username@remotehost.edu:/some/remote/directory

Copie vários arquivos do host remoto para o diretório atual no host local

    $ scp your_username@remotehost.edu:/some/remote/directory/\{a,b,c\} .
    $ scp your_username@remotehost.edu:~/\{foo.txt,bar.txt\} .

scp Performance

Por padrão, o scp usa a cifra Triple-DES para criptografar os dados que estão sendo enviados. O uso da cifra Blowfish mostrou aumentar a velocidade. Isso pode ser feito usando a opção -c blowfish na linha de comando.
    $ scp -c blowfish some_file your_username@remotehost.edu:~
Muitas vezes, sugere-se que a opção -C para compressão também deve ser usada para aumentar a velocidade. O efeito da compressão, no entanto, só aumentará significativamente a velocidade se sua conexão for muito lenta. Caso contrário, pode ser apenas adicionar carga adicional para a CPU. Um exemplo de uso de blowfish e compressão:
    $ scp -c blowfish -C local_file your_username@remotehost.edu:~

# scp /var/lib/arquivos root@192.168.100.1:/home/damasceno

Explicação:

Estou copiando a pasta /var/lib/arquivos, do servidor que estou logado, para o servidor com IP 192.168.100.1, utilizando neste servidor o login de root. Estou definindo a pasta de destino /home/damasceno, onde será copiada a pasta arquivos.

outros EXEMPLOS DE USO DO COMANDO SCP


Dicas úteis de como fazer uso deste poderoso programa para transferência de arquivos: 

Considere:

Máquina 1: 

192.168.254.92
Usuário: lsantos

Máquina 2: 

192.168.254.156
Usuário: tux 

Vamos lá! 

1. Copiar o arquivo "teste" na máquina 2 que está dentro do diretório /home/tux/Images para a máquina 1 dentro de /home/lsantos/dir_teste/: 

 scp tux@192.168.254.156:/home/tux/Images/teste /home/lsantos/dir_teste/ 

 cd /home/lsantos/dir_teste/
$ ls
teste 

2. Enviando o arquivo "arquivo.txt" da máquina 2 para a máquina 1 (ao não especificar um caminho de destino para o arquivo o mesmo irá para o diretório /home do usuário utilizado no login): 

 scp arquivo.txt lsantos@192.168.254.92: 

(máquina 1)

 pwd
/home/lsantos
 ls -l arquivo.txt 
-rw-r--r-- 1 lsantos lsantos 0 2009-10-29 14:52 arquivo.txt 

3. Enviando o arquivo "megaupload" da máquina 1 para a máquina 2 dentro de /home/tux/Public: 

 scp megaupload tux@192.168.254.156:/home/tux/Public 

4. Supondo que a máquina que você precisa enviar o arquivo esteja com o serviço ssh em uma porta específica, utilizamos o parâmetro -P: 

 scp -P 6969 megaupload tux@192.168.254.156:/home/tux/Public 

5. É possível também habilitar o modo verbose para debugar a conexão: 

 scp -vP 6969 megaupload tux@192.168.254.156:/home/tux/Public
Executing: program /usr/bin/ssh host 192.168.254.156, user tux, command scp -v -t /home/tux/Public
OpenSSH_5.1p1 Debian-5ubuntu1, OpenSSL 0.9.8g 19 Oct 2007
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to 192.168.254.156 [192.168.254.156] port 6969.
*
*
*
debug1: fd 0 clearing O_NONBLOCK
debug1: fd 1 clearing O_NONBLOCK
Transferred: sent 1672, received 1272 bytes, in 0.1 seconds
Bytes per second: sent 25937.0, received 19732.0
debug1: Exit status 0 


Close Menu