ssh em um servidor e baixar dados

1

Então, eu tenho usado esse comando

tar zcf - * | ssh root@ip "tar xzf - -C home/minecraft/multicraft/servers/server2"

para fazer upload de material para outros servidores. No entanto eu tenho que estar no ssh do servidor que precisa baixar as coisas. Então eu tentei inverter o comando assim

ssh root@ip "tar xzf - -C /home/minecraft/multicraft/servers/server4" | tar zcf - *

Dá erros

gzip: compressed data not written to a terminal. Use -f to force compression.
For help, type: gzip -h
tar: Child returned status 1
tar: Error is not recoverable: exiting now

e ocioso depois de colocar o comando.

Alguma sugestão? Obrigado.

    
por user2656801 17.09.2015 / 14:32

2 respostas

2

Seu comando chegou perto:

ssh root@ip "tar xzf - -C /home/minecraft/multicraft/servers/server4" | tar zcf - *

Mas você esqueceu de alternar extração e criação - agora o primeiro comando é extrair (do nada, presumivelmente) e o segundo comando é criação. Experimente:

ssh root@ip "tar zc -C /home/minecraft/multicraft/servers/server4 ." | tar zxv
    
por muru 17.09.2015 / 15:25
0

Não sei por que você está fazendo isso como você é, pois parece ser muito complexo, pois existem ferramentas especializadas para isso. Talvez considere usar rsync ou scp?

rsync --progress -rvz root@ip:/home/minecraft/multicraft/servers/server2 .

Usado -r para recursivo, -z para compactação.

    
por Dominiek 17.09.2015 / 15:12