Muitas vezes, preciso de algum arquivo de algum servidor quando estou no meu laptop. Mas se eu não souber onde está esse arquivo, tenho que ssh
entrar no servidor, olhar em volta exit
e depois scp server:file .
. Se estiver trabalhando com minha área de trabalho e meu servidor, ambos com IPs estáticos, posso apenas enviar o arquivo SCP em ordem inversa ( scp desktop:~ file
), mas não posso fazer isso no meu laptop. Existe alguma maneira legal de enviar um arquivo SCP para trás através de uma conexão SSH? Para que o computador ao qual eu me conecto com o SSH envie um arquivo de volta ao cliente?
17
Respostas:
Isso seria muito mais fácil com o SFTP, que é uma extensão do SSH que suporta operações de arquivos mais complexas que o SCP. Praticamente todas as distribuições modernas de Unix e Linux são compatíveis. Para usá-lo, basta executar este comando para conectar-se ao servidor:
Em seguida, você pode usar os comandos
ls
ecd
para navegar e encontrar o arquivo que está procurando. Depois de encontrá-lo, use oget
comando para fazer o download. Por exemplo, para fazer o downloadfile.txt
do seu diretório de trabalho atual no servidor para o seu diretório de trabalho atual na sua máquina local, basta executar:Para fazer
/home/pavpanchekha/textfiles/file.txt
o download no servidor para~/textfiles/
a sua máquina local, execute:Por outro lado, você também pode fazer upload de arquivos dessa maneira. Para fazer upload
file.txt
do diretório de trabalho atual local para o diretório de trabalho atual do servidor, digite:Você também pode usar caminhos completos para cada um como pode
get
:Para obter uma lista completa dos comandos SFTP disponíveis, basta executar
help
nosftp>
prompt.fonte
SSH_CLIENT
variável de ambiente contém o endereço IP do host conectado entre outras informações. Você pode usar isso para criar um alias de shell para retornar facilmente o SFTP ao host de origem. Basta adicionar esta linha~/.bashrc
no servidor:alias sftpback="sftp $(echo $SSH_CLIENT | awk '{print $1}')"
Em seguida, desconecte e reconecte-se do SSH para que a alteração entre em vigor ou execute-a como se fosse um comando para que entre em vigor imediatamente. A partir daí, você pode executar osftpback
SFTP de volta ao cliente do qual está se conectando, independentemente de qual seja.O gerenciador de arquivos do console Midnight Commander (mc) possui um sistema VFS que permite o gerenciamento de arquivos / conexão SFTP em servidores remotos. Também é executado no Cygwin no Windows. A interface padrão mostra dois painéis independentes; poderíamos abrir o diretório remoto do SFTP em um deles e transferir arquivos para / do outro painel facilmente. Inclui um editor / visualizador de arquivos (mcedit) com destaque de sintaxe.
fonte