¿Cómo puedo mover archivos a través de la red? - ¿Desatendido/maneja errores sin esperar la entrada del usuario?

¿Cómo puedo mover archivos a través de la red? - ¿Desatendido/maneja errores sin esperar la entrada del usuario?

De vez en cuando muevo muchos archivos (más de 50 GB) de un disco duro a otro a través de mi LAN. Esto lleva un tiempo. A menudo vuelvo y encuentro que se detuvo en algún lugar esperando la entrada del usuario cuando hay un problema con un archivo en particular (Cancelar, Omitir, Omitir todo o lo que sea). Por supuesto, podría esperar el primer error y seleccionar "Omitir todo", pero esa es una muy mala solución: no hay que iniciar sesión, tengo que esperar.

Estoy haciendo esto en Nautilus.

Sé que tiene que haber una mejor manera de hacer esto. Me gustaría poder omitir automáticamente todos los archivos problemáticos y generar un archivo de registro que me diga qué archivos no se movieron y cuál fue el problema con cada uno de esos archivos.

¿Existe alguna herramienta o script que haga esto?

Respuesta1

¿Has probado rsync?

Es una utilidad de línea de comandos, por lo que no es tan fácil de usar como Nautilus, pero la línea de comandos es la mejor para automatizar cosas como quieras. De hecho, rsync intentará transferir tanto como sea posible, registrará todos los errores y, dado que solo transmite las "diferencias" o cambios, es "barato" volver a ejecutarlo para volver a sincronizar las cosas.

Además de rsync, necesita instalar openssh-server en las computadoras receptoras y luego hacer algo como esto:

rsync -avu --progress source_folder remote-computer.local:Desktop/

la carpeta se enviará a la computadora remota y se colocará en el escritorio.

En lugar de equipo-remoto.local, puede usar una dirección IP si conoce la IP del sistema de destino, pero de forma predeterminada el dominio .local debería funcionar, por lo que si el nombre de host de una computadora es "buckaroo", puede especificarlo como buckaroo.local.

información relacionada