¿Hay alguna manera de pausar un proceso scp que ya se está ejecutando?

¿Hay alguna manera de pausar un proceso scp que ya se está ejecutando?

Estoy copiando un archivo grande usando scpy me di cuenta de que es posible que el destino no tenga suficiente espacio para finalizar. ¿Hay alguna manera de pausarlo, posiblemente durante varias horas, y reanudarlo más tarde? Además, si falla ( no space left on device), ¿podré reanudarlo una vez que haya liberado algo de espacio?

(Tenga en cuenta que scpya se está ejecutando; soluciones como usar un programa diferente no funcionarán).

Respuesta1

Puedes pausar un proceso con SIGSTOP y luego continuarlo con SIGCONT. (Consulte kill -lpara obtener una lista de señales y utilícela pspara obtener la identificación del proceso).

Sin embargo, existe una gran posibilidad de que esto no funcione. Por ejemplo, si tiene un enrutador entre su origen y destino que detecta y "limpia" una conexión inactiva. La mayoría de los enrutadores SOHO parecen hacer esto porque limpiar las conexiones significa menos uso de memoria. (Y así pueden construir enrutadores más baratos).

Si eso sucede, necesitarás copiar nuevamente con scp o puedes usar rsync.

Rsync tiene la ventaja de que compara archivos ya existentes y no copia datos innecesariamente. En su caso, debería detectar un archivo ya presente, parcialmente cargado y solo cargar el resto del archivo.

La sintaxis seríarsync -v -e ssh /home/my_file [email protected]:~

-v para detallado. -e "opciones de ssh" para especificar ssh como shell remoto.

Si sus datos se pueden comprimir, es posible que desee agregarlos -zpara comprimirlos.

información relacionada