Estoy intentando sincronizar dos carpetas diferentes utilizando rsync. He copiado todos los datos por valor de 4Tb de un recurso compartido de red a un hdd externo usando rsync -v -r /source /destination
. Ahora tengo que ejecutar copias de seguridad periódicas para sincronizar ambas ubicaciones. Puede alguien sugerir comando rsync que puedo utilizar para sincronizar las dos carpetas.
Respuestas
¿Demasiados anuncios?Lo mejor es seguir utilizando rsync
para mantener /destination
sincronizado con /source
.
1ª carrera:
rsync -avE /source /destination
próximas carreras:
rsync -avE /source /destination
En -a
opción = --archive
== -rlptgoD
.
En -E
significa copiar atributos extendidos y ACL, y es obligatoria en sistemas de ficheros HFS+.
Advertencia la versión estándar de rsync
en OS X, versión 2.6.9 (véase rsync --version
) todavía tienen problemas con los atributos extendidos. Estos problemas se mostrarán gracias al -v
opción.
Una verificación de la salida de rsync
es obligatorio.
Esta versión 2.6.9 es demasiado antigua y causa demasiados problemas.
Aconsejo a cualquier usuario dispuesto a mantener en sincronía directorios entre diferentes Macs (o entre un Mac y otra máquina Unix) que instale rsync
versión 3.1.2.
Este es el método que utilizo:
-
instalar MacPorts: Página de inicio de MacPorts
- ir a la Sección de inicio rápido Instalar
Xcode
- elegir la versión correcta para instalar (Mavericks, Yosemite o El Capitan)
- ir a la Sección de inicio rápido Instalar
-
Actualice su PATH para encontrar el archivo
port
comando en él por ejemplo, lo instalé en/local/bin
y he modificado mi PATH así:PATH=/local/bin:${PATH} export PATH
-
Instale
rsync 3.1.2
:port install rsync
Con esta versión de rsync
las opciones correctas a utilizar serán:
rsync -avAX /source /destination
y si me has leído hasta ahora, ahora eres lo suficientemente bueno para leer
man rsync
para obtener la luz de la fuente.
La forma más sencilla de actualizar rsync en macOS Mojave es como se describe en el siguiente enlace.
https://bayton.org/2018/07/how-to-update-rsync-on-mac-os-high-sierra/
-
Abre el terminal y pega el comando:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-
Ahora estás listo para instalar la nueva versión de Rsync, y puedes hacerlo de la siguiente manera:
brew install rsync
- Una vez completado, debes cerrar sesión y volver a entrar en macOS.
Al introducir el comando que aparece a continuación, verá ahora que está utilizando rsync 3.1.3 (en el momento de escribir esto), en lugar de rsync 2.6.9. ¡Ya no está ejecutando una versión de Rsync de hace 12 años!
<pre>rsync --version
rsync version 3.1.3 protocol version 31</pre>
Así de sencillo.
1 votos
Por sincronizar, ¿quieres decir que los cambios pueden producirse tanto en el recurso compartido de red como en el disco duro externo y quieres sincronizarlos en ambos sentidos?
0 votos
@patrix Sí, la carpeta de destino debería actualizarse desde la carpeta de origen cuando uso el comando rsync. Así que después de ejecutar el comando debe buscar los archivos que se ha actualizado en el recurso compartido de red y copiarlo en el destino.
0 votos
Creo que la mejor forma de hacerlo es utilizando cron. En cron puedes especificar que se ejecute rsync todos los días a las 8.00 am y a las 8.00 pm (por ejemplo). Haciendo eso tendrás siempre una copia en ambos.
1 votos
@huseinasj: ¿podrías responder completamente a la pregunta de @patrix? Tienes 2 ubicaciones de datos: a
/source
y un/destination
. Cuando hablas de sincronización, ¿te refieres a una unidireccional:source destination
o una bidireccional:source destination
? T ambos dentro de su pregunta final lleva a una clara confusión.0 votos
Tenga en cuenta que también tendrá que copiar los atributos ampliados para que funcionen plenamente