User Tools

Site Tools


tutoriais:como_transferir_arquivos_via_ssh

Transferindo arquivos para a rede IME

Para liberar o acesso de fora do IME, é preciso requisitá-lo antes, informando seu usuário para admin@ime.usp.br .

Para instruções sobre como se logar na rede IME e rodar comandos remotamente, veja as instruções do SSH.

Transferindo arquivos no Windows usando WinSCP

Crtifique-se que o computador está conectado à Internet.

Instale o programa WinSCP. Uma tela de Login deve abrir junto à inicialização do programa. Para se conectar na rede IME, use:

  • Hostname do servidor: shell.ime.usp.br (de fora do IME) ou hades.ime.usp.br (de dentro do IME).
  • Usuário: seu usuário na rede IME.
  • Senha: sua senha na rede IME.

O botão Salvar… é uma opção para salvar o usuário e domínio para utilizações futuras (a senha pode ser salva também, contudo o próprio programa não o recomenda - se o fizer, faça somente em um computador privado). No diálogo aberto, há opção de criar atalho na Área de Trabalho para facilitar.

Após se conectar, os arquivos locais estarão à esquerda e os arquivos do servidor, no painel da direita. Para transferir arquivos, basta arrastar de um lado para o outro, ou selecionar o que quiser e utilizar os botões no lado inferior (copy e move). Tome sempre muito cuidado com o que estiver fazendo!

Transferindo arquivos no Linux ou Mac usando scp

Abra um terminal e use o comando scp. Sua sintaxe é:

scp [opções] origem destino

Uma opção importante é -r, necessária para copiar diretórios inteiros.

Origem e destino podem ser locais ou remotos. Localmente, digite o nome do arquivo ou diretório normalmente. Remotamente, o formato é:

"nome-do-usuário"@shell.ime.usp.br:caminho

O caminho pode ser dado a partir do diretório HOME (por exemplo: usuario@shell.ime.usp.br:www/index.html). Para digitar o caminho completo, comece com o caractere / (por exemplo: usuario@shell.ime.usp.br:/home/posmac/usuario/www/index.html).

Também podem ser usados caracteres coringa, como *.

Exemplos de scp

scp aula1.html rita@shell.ime.usp.br:www/aulas/

Transfere o arquivo aula1.html, que está no diretório atual de seu computador, para o diretório $HOME/www/aulas da rede IME.

scp aula1.html rita@shell.ime.usp.br:

Transfere o arquivo aula1.html para o diretório $HOME do usuário rita na rede IME. Note que é preciso digitar os dois pontos.

scp -r mac1234/ beto@shell.ime.usp.br:www/mac1234/

Transfere o diretório local mac1234, com todo o seu conteúdo, para o diretório www/mac1234/ na rede IME, se esse diretório não existir ainda. (Ver também instrução sobre o comando rsync, abaixo, para sincronizar diretórios).

scp mac1234/* beto@shell.ime.usp.br:www/mac1234/

Transfere os arquivos imediatamente abaixo de mac1234 para o diretório www/mac1234/ na rede IME, caso este diretório já exista. (Ver também instrução sobre o comando rsync, abaixo, para sincronizar diretórios).

scp beto@shell.ime.usp.br:private/prova.tex provas/

Transfere o arquivo provas.tex, que está dentro do diretório private/ na rede IME, para o computador local.

scp ~/transferencia/* manuel@shell.ime.usp.br:/tmp/transferencia/

Copia todos os arquivos que estão no diretório local ~/transferencia para o diretório /tmp/transferencia/ do servidor IME, com a conta de manuel. Note que a pasta deve existir, e o usuário manuel precisa ter permissão de escrita.

Para saber mais sobre o scp, digite em uma linha de comando: man scp.

Sincronizando diretórios com o Rsync

O comando scp é melhor para transferir arquivos uma vez só. Caso você esteja sempre editando vários arquivos em um diretório e sincronizando-o com outro computador, o comando rsync atenderá melhor as suas necessidades. A sintaxe básica é parecida:

rsync -r origem/ destino/
 
# exemplo do computador local para a rede IME
rsync -r webpage/ usuario@shell.ime.usp.br:www/
 
# exemplo da rede IME para o computador local:
rsync -r usuario@shell.ime.usp.br:/tmp/resultados/ pesquisa/resultados/

É importante digitar as barras no final, depois dos nomes dos diretórios. A opção -r transmite o conteúdo de diretórios recursivamente, assim como no scp. Uma vez que o comando termine, o conteúdo de destino/ espelhará tudo que está em origem/.

O comando rsync é muito mais poderoso que o scp, mas também é mais complexo, e possui inúmeras opções. Destacamos algumas das mais interessantes:

  • -r: Transmite o conteúdo de diretórios, recursivamente.
  • -z: Comprime os arquivos durante a transferência. Bom para Internet lenta.
  • -P: Mostra o progresso da transferência, e mantém transferências parciais para continuar depois.
  • -u (--update): Só transmite arquivos que são mais novos na origem.
  • -c (--checksum): Só transmite arquivos que são diferentes na origem.
  • –delete: Apaga arquivos no destino que foram apagados (ou não existem) na origem. Cuidado!
  • -n: Não transfere os arquivos nem altera nada; só mostra o que seria feito.

Para saber mais sobre rsync, consulte o man rsync, ou procure guias na Internet.

tutoriais/como_transferir_arquivos_via_ssh.txt · Last modified: 2016-10-06 17:04 by schutzer