Como evitar a transferência de scp paralisado ao tunelar através de um gateway por ssh?

2

Eu estou tentando transferir um arquivo grande (1 GB +) de uma máquina para outra, mas tenho que túnel através de um gateway entre. Eu sou capaz de transferir arquivos pequenos muito bem. No entanto, com o arquivo grande, a transferência pára no meio.

Depois de ler uma postagem no blog sobre as transferências scp stall , eu tentei usar -l 8192 e tentei abaixá-la para -l 2000 , mas isso pareceu fazer com que parasse mais cedo:

scp -l 2000 -v -P 2222 username@localhost:/path/to/file.gz .

Da saída detalhada ( -v ) do comando scp, parece que o -l não está sendo transmitido…

debug1: Sending command: scp -v -f -- /path/to/file.gz

Alguma outra ideia?

    
por Matt V. 08.10.2011 / 00:06

3 respostas

3

Um trabalho desagradável seria usar rsync em vez de scp . O programa rsync pode reiniciar de forma confiável as transferências interrompidas. Se ele parar, solte-o com CTRL-C e repita o comando.

    
por 08.10.2011 / 00:35
2

Acho que você deve usar rsync em uma sessão screen . Uma interrupção pode ser executada novamente com a opção --ignore-existing .

    
por 08.10.2011 / 00:57
1

Eu não acho que o rsync seja um trabalho feio. Certifique-se de usar o sinalizador -c rsync, para que ele possa continuar de onde parou se a conexão for interupted, inclua também o --verbose para ver mais informações durante a transferência.

    
por 12.10.2011 / 02:06