Perché scp si blocca? Come lo risolvo?


52

Quando ho tentato di copiare un file (di dimensioni,) sulla rete usando scp, ho ricevuto un errore <file> stalled Perché questo accade? Come lo risolvo?


Mi piace rclone per questo; Non ho mai avuto problemi con questo.
Hatshepsut,

Ho annullato e riavviato il comando scp e il problema è andato via per me
kilojoules il

Risposte:


72

Questo accade perché scpsta cercando di catturare quanta più larghezza di banda possibile e qualsiasi ritardo (da parte di un firewall, ecc.) Può bloccarlo. Limitare la larghezza di banda (con l'opzione -l) lo risolverà.

Ad esempio, potresti voler limitare la larghezza di banda a 1 MB / s (= 8192 Kbit / s):

 scp -l 8192 <file> <destination>

Fonte: http://www.aixmind.com/?p=1371 - Wayback Machine


Grazie per la tua risposta e il link alla fonte. Ma penso che la tua fonte dica che -l 8192significa 8192 Kbit / secondo, e -lpotrebbe funzionare fino a 1 Mbit / secondo (che sembra essere un po 'obsoleto al giorno d'oggi).
elmicha,

2
@elmicha 8192Kb == 1 MB
Lelouch Lamperouge il

@Eknath Oops, hai ragione.
elmicha,

2
Giusto per chiarire: l'esempio limita la larghezza di banda di scp a 8192 Kbit / secondo. L'autore dell'articolo di origine suggerisce che questo numero dovrebbe funzionare bene per connessioni fino a 1 Mbit / secondo.
Erwin Wessels,

1
Ha funzionato come un fascino :)
Saurabh

5

Sono riuscito a risolverlo usando rsync:

rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress /tmp/bigfile.txt user@host.com:/tmp/

2

Qualche possibilità ti trovi dietro un firewall Cisco ASA? In tal caso, disattiva la "randomizzazione del numero progressivo" e questo sarà di grande aiuto - disabilita anche TCP Offload (ethtool -K $ INTERFACE per disattivare gso off gro off) se sei su un Cisco ASA con NIC Broadcom nel tuo server .


È geniale. Il cambiamento è permanente o devo inserire il comando da qualche parte? Giusto per essere chiari, devi impostarlo sulla tua scheda NIC, non sull'interfaccia cscotun.
mjaggard,

1

Dato il messaggio di errore che abbiamo ricevuto quando lo scp si è bloccato, sospettavo che fosse la crittografia a non riuscire. "L'autenticità dell'host 'myserver (10.10.11.12)' non può essere stabilita. L'impronta digitale della chiave ECDSA è SHA256: + zkyskXlxVQ0kRorLW26pzprIYbsM4N3hbaDLz1RNpo" Con questo in mente ho eseguito "scp -c aes128-ctr /tmpigtf/fest/ src myserver: / tmp / bigfile ". scp ERA successo con il codice alternativo. C'è un problema con la cifra predefinita che soffia uno spazio buffer?

Potrebbe provare ad aggiungere "-c" con un codice alternativo e vedere se risolve il problema.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.