¿Cómo puedo hacer una copia de seguridad de mi sistema en un servidor remoto (AFP, Samba o NFS compartido)?

10

Este es el objetivo: tengo un servidor de respaldo con un sistema de archivos ZFS con compresión e instantáneas incorporadas. Todas nuestras máquinas hacen copias de seguridad todas las noches rsync, y luego se toma una instantánea de ZFS, por lo que tenemos copias de seguridad de cómo se veía cada máquina al final de cada día.

El problema es que con Mac OS X, los tenedores de recursos no se copian ya que la máquina remota no es compatible con los tenedores de recursos. Lo que me gustaría hacer es rsyncun archivo .DMG que reside en el servidor de respaldo. De esta manera, tendría una imagen exacta y de arranque de cómo se veía mi sistema cada noche.

Como beneficio adicional, el servidor de respaldo también es un servidor NetBoot, por lo que esto realmente me permitiría arrancar desde mi Mac en cualquier momento de la historia.

Creé una imagen de la unidad de mi Mac y la copié al servidor de respaldo. Ahora, cuando lo abro en mi Mac y lo ejecuto rsync, se ejecuta durante un período (a veces más de una hora, a veces menos) y luego me da una tonelada de errores de E / S. La imagen se almacena en una matriz RAID, estoy seguro de que no hay errores de E / S.

Creo que la conexión con el recurso compartido Samba puede verse abrumada ... También he intentado con AFP, y obtengo el mismo resultado ... ¿Qué podría estar causando esto y cómo puedo resolverlo? ¿O alguna otra idea sobre cómo puedo actualizar el archivo DMG remoto?

Josh
fuente
3
En lugar de reinventar TimeMachine utilizando herramientas de código abierto / unixy (que adoro y amo), ¿ha considerado ejecutar el software gratuito CrashPlan en ambas máquinas? Están regalando software que es muy avanzado y bien soportado si necesita ayuda de ellos.
bmike
¡Hmmm, tendré que investigar eso! La razón por la que estoy "reinventando" TimeMachine, para su información, es que TimeMachine requiere una unidad USB grande para cada máquina, y en nuestra configuración no tenemos eso, sino que tenemos un RAID de respaldo masivo en el sitio.
Josh
Entiendo totalmente tus razones. ZFS es excelente y reutilizar la infraestructura existente tiene mucho sentido. Para varios clientes con 10 a 30 macs, el punto óptimo ha sido un mini servidor mac que comparte una unidad con todos los clientes mac para Time Machine. Ese servidor tiene un plan de bloqueo para el servidor principal para rotaciones de cinta / fuera del sitio (y los paquetes dispersos encapsulan HFS y metadatos). DeployStudio maneja las imágenes de arranque y las restauraciones de red. Buena suerte y háganos saber cómo va.
bmike
Otro +1 a la sugerencia de CrashPlan de @bmike. Utiliza Hadoop debajo del capó y puede hacer incrementales como TimeMachine. Libre para enviar copias de seguridad a otra unidad o computadora. Sin embargo, la interfaz de usuario no es tan agradable como TimeMachine.
Ian C.
+1 para crashplan. Es una gran pieza de software gratuito y tiene el beneficio adicional de que puede agregar fácilmente más puntos de respaldo, incluidos sus propios servidores por una tarifa.
cregox

Respuestas:

5

Configure un nuevo volumen en su caja Nexenta / OS para su copia de seguridad y configúrelo para compartirlo como un LUN iSCSI. Luego, use uno de los varios iniciadores iSCSI para MacOS X para adjuntar el volumen de la copia de seguridad a la espalda. En su Mac, formatee el volumen como HFS +. Ahora puede usar CCC o rsync, etc. para hacer sus copias de seguridad.

tegbains
fuente
2
Esta es una fantástica idea! ¡Lo intentaré después de que termine de trabajar por el día!
Josh
1
+1: estaba pensando en una forma de usar iSCSI para llevarlo allí y encapsular los datos específicos de Mac. Cuantos menos pasos, mejor.
bmike
¡Bah! Justo cuando estaba escribiendo que esto funciona muy bien, se perdió la conexión. Pero todavía tengo esperanzas para esta solución ...
Josh
@ Josh: ¿Sabes por qué se perdió la conexión (desconexión física, etc.). ¿También tiene una NIC separada para su conexión iSCSI?
tegbains
No sé qué está causando la pérdida de la conexión, pero como sucede con todos los protocolos ahora, AFP, CIFS, NFS e iSCSI, es un problema con el servidor. Creo que la transferencia de datos está abrumando la máquina virtual y deja de responder ... pero haré otra pregunta, probablemente sobre el intercambio de la pila de Unix y Linux.
Josh
3

¿Has estudiado el uso de Carbon Copy Cloner ? Lo uso para una copia de seguridad manual bit a bit de mi SSD en una unidad de red una vez al mes más o menos y funciona sin problemas. Sé que hace copias de seguridad incrementales, y no he tenido problemas para volcar mi disco sobre Gigabit Ethernet.

alampros
fuente
Desafortunadamente, cuando uso CCC para una copia de seguridad incremental, simplemente se ejecuta rsyncy obtengo el mismo resultado :-(
Josh
Cuando vuelca su unidad a la unidad de red, ¿qué aloja la unidad de red? OS X? Linux? ¿Cómo te conectas? ¿Samba? AFP? ¿Utiliza CCC directamente a la unidad de red o va a un DMG en la unidad de red?
Josh
@ Josh: Podrías CCC a la imagen de disco montada
tegbains
Eso es lo que estaba haciendo, y CCC se estaba ejecutando rsyncy recibía los mismos errores de E / S :-(
Josh
2

No es la respuesta exacta a su pregunta, pero también puede sincronizar los tenedores de recursos. Aquí hay muy buenos artículos sobre:

ps: ¿usas solaris o freebsd?

Entonces, lo que he intentado ahora:

Tengo un sistema operativo remoto (no mac) y lo monté a través de fuse / sshfs (a través de ADSL lento).

sshfs [email protected]:/path/to/dir /Users/me/Mount/myfs -oauto_cache,reconnect,volname=MyFs

En mi macbook ingresé esto:

/usr/bin/rsync -avE /Users/me/tmp/bk /Users/me/Mount/myfs/tmp/test

(el / tmp / test ya existe en la computadora remota)

y obtuve esto:

building file list ... done
bk/
._bk
bk/.DS_Store
bk/._.DS_Store
bk/Icon\#015
bk/._Icon\#015
bk/test.rtfd/
bk/test.rtfd/.LSOverride
bk/test.rtfd/TXT.rtf

sent 311127 bytes  received 186 bytes  15186.00 bytes/sec
total size is 6874  speedup is 0.02

Como puede ver, los tenedores de recursos se convierten en archivos dot_underscore y se copian en una ubicación remota. (por ejemplo, el icono personalizado para el directorio bk también).

Por lo tanto, no entiendo, ¿por qué no puedes sincronizar en zfs remotos?

jm666
fuente
1
No importa lo que haya intentado, no puedo hacer que rsync copie los tenedores de recursos, creo que porque el sistema ZFS no los admite ... No estoy seguro. Primero probé con un servidor Debian kBSD, pero me cambié a Nexenta (núcleo OpenSolaris + núcleo Debian) porque tiene soporte NFS y Netatalk.
Josh
¿Y el tercer enlace? (que muestra una solución independiente de OS / FS)
jm666
1
Estoy realmente interesado en esto. Aquí hay otro enlace para zfs + timemachine. blogs.oracle.com/constantin/entry/zfs_and_mac_os_x
jm666
Ah, ya veo, ¡estás montando el directorio e rsyncing localmente! ¡Estaba tratando de sincronizar desde la Mac al servidor! Intentaré esto y te responderé.
Josh
0

No sé por qué , pero la conexión al servidor se interrumpió durante la copia del archivo y supongo que fue porque la gran cantidad de datos que se transfieren a una velocidad tan alta era más de lo que el servidor de respaldo podía manejar; dejaría de responder por un corto período de tiempo y la Mac desconectaría por la fuerza el DMG, y la copia de seguridad fallaría.

Encontré una solución: antes de realizar una copia de seguridad, en Preferencias del sistema, bajé la velocidad de mi NIC Ethernet de 1000Mbps a 100Mbps. Luego, la copia de seguridad pareció funcionar sin problemas, porque la velocidad de datos estaba limitada y el servidor de copia de seguridad no se abrumaba.

Josh
fuente