Tengo la intención de conseguir un servidor vps muy pronto para algunos de los sitios que administro con un uso intensivo de recursos. Vivo en un país donde la velocidad de Internet de 1Mb/s es un lujo y la electricidad constante e ininterrumpida, un mito.
Esto es lo que estoy tratando de lograr:
- Cómo copiar los archivos y directorios del servidor de origen al servidor de destino a través de SSH/SCP.
- Cómo seguir copiando los archivos entre los servidores incluso si mi Internet se desconecta o se corta el suministro eléctrico.
- Cómo hacer que los archivos sigan copiándose entre ambos servidores si cierro la ventana de mi Terminal.
Soy consciente de que estoy copiando a través de scp, pero no parece que siga funcionando cuando me desconecto.
Respuesta1
rsync -azvP source_directory user@remote:remote_directory
debería permitirle copiar archivos entre dos computadoras mientras guarda el progreso en caso de interrupciones.
Aquí también hay una explicación de cada bandera.http://explainshell.com/explain?cmd=rsync+-azvP
Si desea permitir que esto se ejecute en un servidor sin estar conectado, puede pasar el comando anterior al nohup
comando. También puede ejecutar esto en una sesión tmux que le permitirá monitorear el progreso (o reiniciar el comando) adjuntando la sesión cuando inicie sesión en su máquina.
Puede iniciar una sesión tmux escribiendo tmux
en su servidor. Luego puede ejecutar el comando rsync y desconectarse de la sesión tmux escribiendo CTRL+b
y luego d
. Cerrar sesión no afectará el procedimiento de copia. Cuando vuelva a iniciar sesión, podrá escribir tmux attach
y podrá ver el progreso de la operación de copia.
¡Espero que esto ayude! Déjame saber si puedo aclarar algo.
Respuesta2
Le sugiero encarecidamente que eche un vistazo al uso del comando rsync. El comando rsync es útil porque puede reanudar las transferencias fácilmente. Rsync funciona de forma predeterminada a través de un transporte SSH, simplemente necesita el binario rsync en el cliente y el servidor.
Rsync detectará lo que ya se ha transmitido y solo transmitirá los archivos y partes de los archivos que no se han transferido.
Respuesta3
Creo que esto debería resolver el problema:
nohup scp -r big-folder remote-machine:/home/user/ &
Este comando inicia el proceso de copia y continuará copiando después de cerrar sesión.