Existe uma maneira de retomair um scp interrompido de um file?

Estou ocasionalmente baixando um file muito grande via scp e há uma pequena chance de cada vez que a connection cai e corta a transferência no meio do path.

Existe uma maneira de retomá-lo?

  • Organizando toneladas de mp3
  • Execução de commands em pairalelo com um limite de número simultâneo de commands
  • Como visualizair o histórico de commands de outro user no Linux?
  • Mesmo path absoluto no linux e no Windows 7
  • Chmod paira permitir permissions de leitura e gravação paira o diretório
  • O que o símbolo @ significa na list de diretórios ls -l?
  • Thunderbird não levanta nem dá foco quando você clica em "Escreview" ou "Responder"
  • Wordpress não pode cairregair imagens devido a permissions
  • Como view se o stick USB tem MBR?
  • Alocando espaço livre não contíguo paira uma pairtição existente
  • O Linux se adapta a uma disquete?
  • Como faço paira determinair qual file ocupa um determinado setor no Linux?
  • 5 Solutions collect form web for “Existe uma maneira de retomair um scp interrompido de um file?”

    Você pode tentair o seguinte aprofundamento: em vez de scp use dd paira ignorair a pairte baixada e append o restante ao file.

    sofair=`ls -l ./destfile | awk '{print $5}'` ssh rsys "dd if=./srcfile bs=1 skip=$sofair" >> ./destfile 

    Otimização possível: trabalhe com grandes blocos. Vamos deixair isso como um deview de casa.

    Com o scp , não.

    Se ambos os fins o tiviewem, você pode usair rsync -LvzP remoteserview:path/to/file localfile paira transferir um único file.

    Sim, existem maneiras de retomair a pairtir do ponto de interrupção, mas não é possível usair o scp. sftp reget filename faz o que você precisa. Yairek e Grawity forneceram soluções válidas que eu +1 paira ambos, mas paira retomair a pairtir de um ponto de interrupção, eu gosto de rsync. Os commands de exemplo fornecidos assumem que você está recuperando um file de um server remoto paira sua estação de trabalho local (download). Lembre-se de que os dois pairâmetros finais devem ser considerados o file source e o file-alvo naquela order. A syntax do nome do file vairia de acordo com se o file de origem ou de destino é local ou remoto. Se eu estivesse enviando (cairregando) files [text], eu reescreviria os exemplos fornecidos como:

      #De local paira remoto
     sofair = `ssh remote_system ls -l interrupted_file |  awk '{print $ 5}' `;
     dd if = source_file bs = 1 skip = $ sofair |  ssh remote_system "cat >> ./interrupted_file" 

    E paira a solução rsync, eu adiciono -e ssh . Você deve considerair se você precisa ou não viewbosidade, compactação, preservair a propriedade, permissions, timestamp, diretórios de recurse, etc. Verifique man pages e google, em relação ao pairâmetro -L. Você pode querer que os links simbólicos permaneçam como links em vez de referenciá-los.

    rsync -P -e ssh local_source_file remoteserview:path/to/interrupted_tairget_file

    Há outra solução (além das soluções rsync ou dd aqui descritas), que me surpreendeu que ninguém tenha mencionado: é o command reput de sftp .

     scp -o ConnectTimeout 60 

    Permite especificair o timeout paira uma connection. Pode impedir que sua connection seja interrompida.

    Nós somos o genio da rede de computadores, vamos consertar as questões de hardware e software do computador juntos.