it-swarm.dev

Proč se scp zastaví? Jak to vyřeším?

Když jsem se pokusil zkopírovat soubor (o velikosti) přes síť pomocí scp, zobrazí se chyba <file> stalled Proč k tomu dochází? Jak to vyřeším?

52
Lelouch Lamperouge

Děje se to proto, že scp se snaží zachytit co největší šířku pásma, jak je to možné, a jakékoli zpoždění (pomocí brány firewall atd.) Ji může zastavit. Omezení šířky pásma (s volbou -l) ji opraví.

Můžete například chtít omezit šířku pásma na 1 MB/s (= 8192 Kbit/s):

 scp -l 8192 <file> <destination>

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

73
user35297

Podařilo se mi to vyřešit pomocí rsync:

rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress /tmp/bigfile.txt [email protected]:/tmp/
6
user1453912

Máte šanci za firewallem Cisco ASA? Pokud ano, vypněte „randomizaci sekvenčního čísla“ a to vám hodně pomůže - také deaktivujte TCP Offload (ethtool -K $ ROZHRANÍ vypnout Gso off gro off)) Cisco ASA s Broadcom NIC na vašem serveru.

2
dotwaffle

Vzhledem k chybové zprávě, kterou jsme obdrželi, když se scp zastavil, jsem měl podezření, že šlo o selhání šifrování. „Pravost hostitele 'myserveru (10.10.11.12)' nelze stanovit. Otisk prstu ECDSA je SHA256: + zkyskXlxVQ0kRorLW26pzprIYbsM4N3hbaDLz1RNpo" S ohledem na to jsem běžel "scp -c aes128-ctr/tmp/test/best. src myserver:/tmp/bigfile ". scp Byl úspěšný s alternativní šifrou. Vyskytl se problém s výchozí šifrou vyfukující vyrovnávací paměť?

Zkuste zkusit přidat "-c" pomocí alternativní šifry a zjistit, zda to vyřeší váš stání.

1
Dan Snavely