password ejemplo bash shell scp

bash - ejemplo - scp ubuntu



scp estancado al copiar archivos grandes (2)

¿Alguna posibilidad de que estés detrás de un firewall Cisco ASA? Si es así, desactiva la "aleatorización del número de secuencia" y eso te ayudará mucho. Desactiva también la descarga TCP (ethtool -K $ INTERFACE tso off gso off gro off) si estás en un Cisco ASA con Broadcom NIC en tu servidor .

De acuerdo con las necesidades del experimento, configuré el MTU a 8000 . Después de hacer esto, cuando uso scp para copiar archivos grandes, se detuvo con un 0.00% . Intenté con scp -l o scp -C y tcp_sack / desactivé tcp_sack , pero aún así no funcionó. Y no puedo cambiar el tamaño de MTU para la comparación de resultados del experimento. ¿Hay alguna otra manera de ayudar?


Un intento de una solución integral, ya que podría haber varios problemas y limitaciones dependiendo de su situación.

rsync

Mi opción preferida: usar rsync no da este problema y es un poco más versátil en mi opinión, por ejemplo, mantiene un registro de los archivos que ya están allí, por lo que si la conexión se rompe, puede continuar desde donde se quedó. --partial bandera --partial , entre otras cosas .

En lugar de

scp local/path/some_file [email protected]:"/some/path/"

solo puedes hacer

rsync -avz --progress local/path/some_file [email protected]:"/some/path/"

He probado esto en varias ocasiones en las que scp me daría el mismo problema que tenía, y ahora solo uso rsync de forma predeterminada.

Velocidad limite

No es una solución para OP ya que la MTU se soluciona en esta situación (y probablemente no sea el problema aquí), pero si el culpable es una conexión lenta / no confiable entre las dos unidades, establecer un límite de velocidad reduce los retrasos que hacen que la conexión TCP se detenga - a expensas de una transferencia más lenta, por supuesto. Esto se debe a que scp toma todo el ancho de banda que puede obtener, a menos que especifique la velocidad de datos máxima en kilobits, de este modo:

scp -l 8192 local/path/some_file [email protected]:"/some/path/"

Sin embargo, esto no siempre funciona .

Opcion de compresion

La opción -C de scp puede acelerar la transferencia, reduciendo la probabilidad de que la transferencia se detenga.

Desactivando TCP SACK

Como lo menciona el OP, y here .

sudo sysctl -w net.ipv4.tcp_sack=0

( o similar )

Tarjeta LAN MTU

Una vez más una solución MTU , no necesariamente de la transferencia específicamente, aunque:

ifconfig eth0 mtu 1492

o en sistemas más nuevos (Linux) :

ip link set dev eth0 mtu 1492

Otro

Si todo lo demás falla, here enumera otro puñado de soluciones potenciales que no se incluyen aquí.

El error de hpn más exótico puede ser culpable también.