¿Cuáles son las buenas utilidades de sincronización bidireccionales en tiempo real entre la carpeta local de Mac y el servidor web?

2

Tengo un iMac que está conectado a mi red local (y, posteriormente, a Internet) que tiene una carpeta llamada DocShare .

Tengo un servidor web alojado fuera del sitio a través de una empresa de alojamiento, con una carpeta similar llamada DocShare en línea que alberga un repositorio en línea de archivos que estarían relacionados con la DocShare carpeta en mi iMac. Este servidor admite WebDAV, (S) FTP, SSH, etc. para la transferencia de archivos.

Me encantaría encontrar una manera de tener esas dos carpetas, una localmente en mi iMac y otra en mi servidor, sincronizar para que cada vez que suba un archivo a la DocShare , aparecerá en mi DocShare en línea y viceversa. Sería genial si los cambios en los archivos pudieran reflejarse, y si eliminara / modificara / creara un archivo en cualquier lado , se reflejaría en la carpeta opuesta.

Por lo tanto, sería una sincronización en tiempo real con una conexión constante al servidor web, o un proceso de sincronización programada cada intervalo de tiempo. Hasta ahora, he encontrado un puñado de programas para Windows, pero ninguno que haga esto para Mac.

Si es posible, me encantaría verlo en una GUI, con un posible complemento de línea de comandos (no necesariamente de línea de comandos exclusivamente). Por favor, hágamelo saber qué opciones tengo, o si estoy completamente perdido y no hay nada que haga este tipo de cosas.

    
pregunta Hunter E. 27.05.2014 - 20:00

2 respuestas

2

Unison es mi herramienta de acceso para una sincronización de archivos bidireccional. (Los binarios de Mac están disponibles en el sitio de un colaborador ). Tiendo a pensar que es más interactivo, configurable, y versión bidireccional de rsync . Ya que es un buen * nix ciudadano, puede automatizarse a través de su método favorito. Es de código abierto y tiene puertos para las principales plataformas de sistemas operativos.

Desafortunadamente, Unison ya no está en desarrollo activo , lo que puede o no ser un problema para usted. (Creo que la última vez que lo utilicé fue por debajo de 10.6). Pero, se ajusta a tus requisitos muy bien:

  • Maneja la sincronización bidireccional y funciona muy bien en archivos grandes y conjuntos de datos.
  • Puede ejecutarse de forma totalmente automatizada o interactiva (donde revisa y confirma cada cambio).
  • Se ejecuta sobre SSH.
  • Las interfaces GUI y CLI están disponibles. (FWIW, la versión de la GUI de Mac, aunque agradable / conveniente, siempre fue un poco inestable para mí).
  • La documentación del usuario final es excelente y completa.
  • Tiene opciones de configuración para una multitud de casos de uso.
  • Tiene un principio de diseño de dejar las cosas en buen estado en todo momento, lo que facilita la recuperación en caso de que la conexión se pierda en cualquier momento.

Y aquí está el principal punto de venta para usarlo (para mí, al menos):

Para los destinos SSH remotos, inicia sesión en la máquina remota, ejecuta una copia separada de Unison allí para buscar cambios y luego reconcilia el estado con su máquina local para transmitir solo los bits (o bytes :-)) que difieren, al igual que rsync . Esto lo hace muy eficiente con el ancho de banda, y también es capaz de mantener cachés de su índice de archivos en cada lado para hacer que los escaneos posteriores sean más rápidos. Para grandes conjuntos de datos, este es un gran negocio.

Existen otras herramientas específicas de Mac para la sincronización de archivos, pero, IIRC, tienden a asumir que el sistema de archivos es local, y son muy ineficientes con el ancho de banda o muy presuntuosos con los "cambios" de archivos (metadatos, datos reales) en grandes archivos remotos / conjuntos de datos.

Unison funcionó como lo necesitaba, era confiable y me dio confianza al usarlo debido a su excelente documentación. Gracias, Benjamin C. Pierce!

    
respondido por el wrksprfct 27.05.2014 - 23:29
1

Transmit proporciona una acción de Automator que sincroniza una carpeta local con una carpeta en su servidor. Combine eso con las acciones de la carpeta y debería estar configurado, a menos que esté leyendo la pregunta incorrectamente. Transmisión soporta WebDAV y (S) FTP.

    
respondido por el dwightk 27.05.2014 - 21:01