Entrei ssh
no diretório do meu webhost e tar
baixei o webapp para fazer o download. Quando tento mv
para ~/mydirectory/backups
ou /home/mydirectory/backups
, define a "casa" como a minha raiz no serviço de hospedagem que eu estou ssh'ed em.
Como eu mv no ssh para uma unidade local enquanto ainda estou dentro do sistema do host?
Respostas:
Primeiras coisas primeiro: ssh é uma maneira de acessar remotamente em outro computador. O shell (linha de comando) que você obtém após o ssh é (praticamente) o mesmo que se você tivesse aberto um xterm na máquina remota. Se não oferece essa maneira de mover arquivos.
No entanto, o fato de o computador remoto aceitar conexões ssh oferece algumas opções para trocar arquivos:
Use scp Para copiar do computador local para o controle remoto, digite: no computador local:
scp /tmp/file [email protected]:/home/name/dir
(onde / tmp / file pode ser substituído por qualquer arquivo local e / home / name / dir por qualquer diretório remoto)
Para copiar do computador remoto para o local, digite, no computador local :
scp [email protected]:/home/name/dir/file /tmp
Use sshfs Isso é um pouco mais avançado, mas muito, muito melhor (quando a conexão à Internet dos dois computadores é boa. Caso contrário, atenha-se ao scp)
Você pode "vincular" um diretório do computador remoto a um diretório (vazio) do computador local. Diga que você "vincula" o diretório / some / remote / dir do computador remoto para / home / youruser / remotecomp no seu computador. Se houver um arquivo / some / remote / dir / file no computador remoto, você poderá vê-lo em / home / youruser / remotecomp / file. Você pode copiar e mv como de costume e pode até alterar arquivos e diretórios remotos.
Observe, no entanto, que quando a conexão termina, / home / youruser / remotecomp se torna um diretório vazio novamente e você mantém apenas no computador local os arquivos que copiou para outros diretórios
Para alcançar isto:
1) instale o sshfs:
sudo apt-get install sshfs
2) crie um diretório vazio
mkdir /home/youruser/remotecomp
3) "vincule" os dois diretórios (o termo correto é montar)
sshfs [email protected]:/some/remote/dir /home/youruser/remotecomp
4) Aproveite
5) "desvincular" os dirs
fusermount -u /home/youruser/remotecomp
Se o computador local executar janelas Você pode encontrar versões do
scp
for windows. Veja, por exemplo, winscpfonte
sshfs
opçãorsync -P -e ssh /tmp/file [email protected]:/home/name/dir
. Isso ocorre porque, se uma transferência de arquivo falhar na metade,scp
apenas o arquivo será excluído. Por outro lado, se você usarrsync
com a-P
opção, ele manterá um arquivo incompleto na máquina remota e, quando você reiniciar a transferência, garantirá que o que já está na máquina remota corresponda ao arquivo na sua máquina local e depois continue de onde a transferência parou.Você pode usar
scp
oursync
. No seu sistema local:scp remoteuser@remotehost:/remote/dir/file /local/dir/
Mas, como você mencionou o backup, presumo que seria incremental e você precisará fazer isso de vez em quando. Portanto,
rsync
é uma escolha melhor para backup incremental. No seu shell local:rsync -avz -e ssh remoteuser@remotehost:/remote/dir /local/dir/
consulte
rsync(1)
escp(1)
páginas de manual para opções.fonte
Você pode usar a cópia segura do scp .
Do seu shell local:
Este exemplo copiará via ssh de /path/of-the/tar.archive do seu host da web para / home / mydirectory / backups /
Opções extras:
-C : permite compactação
fonte
Eu tive o mesmo problema. Aqui está a solução fácil: -
+ Other Locations
na parte inferior do painel esquerdo.Connect to server
. Escreva o endereço ssh na caixa de entrada comossh://111.222.333.444/
.home
local remoto. Sinta-se livre para mover o arquivo aqui e ali.fonte
As outras respostas recomendam
rsync
ouscp
, ambas requerem que você saiba o local do arquivo que deseja copiar na máquina remota.Se você deseja bisbilhotar na máquina remota, como pode
ssh
, você quer executarsftp
. O login no servidor é muito semelhante aossh
, mas quando você entrar, digitehelp
para obter a lista de comandos - ele permite que você se mova pelas máquinas local e remota e transfira arquivos facilmente.fonte
É estranho que seja impossível por dentro
ssh
. Em um terminal comum, pode-se enviar / receber arquivos usando os comandos zmodem.Isso ajudou a pesquisar no Google
zssh
: http://zssh.sourceforge.net/ . É necessário executá-lo como um invólucro para o originalssh
.fonte