When I attempted to copy a file (of size, ) over the network using scp I get a error <file> stalled
Why does this happen? How do I resolve it?
- 2,828
- 4
- 19
- 19
-
I like [rclone](https://rclone.org/) for this; I've never had any problems with it. – Hatshepsut Oct 19 '17 at 23:21
-
I canceled and restarted the scp command and the problem went away for me – kilojoules Oct 14 '18 at 19:33
4 Answers
This happens because scp is trying to grab as much bandwidth as possible, and any delay (by a firewall, etc.) can stall it. Limiting the bandwidth (with -l option) will fix it.
For example, you might want to limit the bandwidth to 1 MB/s (= 8192 Kbits/s):
scp -l 8192 <file> <destination>
- 193,181
- 53
- 473
- 722
-
Thank you for your answer and the link to the source. But I think your source says that `-l 8192` means 8192 Kbit/second, and the `-l` might work up to 1 Mbit/second (which seems to be a bit outdated nowadays). – elmicha Nov 26 '11 at 20:50
-
2
-
-
2Just to clarify: the example limits scp's bandwidth to 8192 Kbit/second. The source article's author suggests that this number should work fine for connections of upto 1 Mbit/second. – Erwin Wessels Jan 17 '14 at 06:38
-
1
-
I've managed to solve it by using rsync:
rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress /tmp/bigfile.txt user@host.com:/tmp/
- 161
- 1
- 2
Any chance you're behind a Cisco ASA firewall? If so, turn off "sequence number randomization" and that'll help a lot -- also disable TCP Offload (ethtool -K $INTERFACE tso off gso off gro off) if you're on a Cisco ASA with Broadcom NICs in your server.
- 121
- 2
-
That's genius. Is that change permanent or do I need to put the command somewhere? Just to be clear, you have to set that on your NIC, not on the cscotun interface. – mjaggard May 18 '17 at 18:54
Given the error message that we received when the scp stalled I suspected that it was the encryption that was failing. "The authenticity of host 'myserver (10.10.11.12)' can't be established. ECDSA key fingerprint is SHA256:+zkyskXlxVQ0kRorLW26pzprIYbsM4N3hbaDLz1RNpo" With that in mind I ran "scp -c aes128-ctr /tmp/test.dan/bigfile.src myserver:/tmp/bigfile". scp WAS successful with the alternate cipher. Is there an issue with the default cipher blowing a buffer space?
Might try adding "-c " with an alternate cipher and see if it resolves your stall.
- 11
- 1