[Tutorial] TimeMachine a disco duro en red, con servidor GNU/Linux

Por ahora lo pongo aquí, pero luego lo pondré en un Wiki para que todos los podáis ver.

Objetivo.
Para que nos hagamos una pequeña idea de lo que se busca en este tutorial, es crear la parte de backups incrementales de un TimeCapsule, pero gastándonos un poco menos de la mitad de lo que cuesta éste. Este tutorial tendrá mas sentido cuando salgan al mercado soluciones como RaspberryPi (http://www.raspberrypi.org), que por un precio muy bajo, podremos tener nuestro sistema de backups funcionando sin problema. Aún así, para todos los que tengais un PC parado en casa y penseis: "que pena que este disco duro de 2 TB tenga que tenerlo siempre conectado al iMac para hacer el TimeMachine", este tutorial espero que os venga realmente muy bien (yo estoy muy contento con el resultado, y ya llevo un mes).


Requerimientos para seguir el tutorial.
Hardware:
* Un PC donde poder instalar cualquier distribución GNU/Linux. Yo voy a explicarlo para Debian (http://www.debian.org).
* Un disco duro, suficientemente grande como para albergar un TimeMachine.
* Por supuesto, un router, switch ethernet, acces point... donde el PC y el/los Mac tengan comunicación directa.

Conocimientos dados por sabidos:
* Instalación de distribución GNU/Linux
* Configurar IP fija en la red.
* Montaje de discos duros USB en la distribución GNU/Linux.

GNU/Linux
Lo primero que haremos, será instalar netatalk (para que funcione con Lion ha de ser >= 2.2)
# aptitude install netatalk


Netatalk es un servidor que utiliza el protocolo AFP para comunicarse con otros ordenadores y es que, necesitamos de este protocolo para que Apple pueda reconocer los Volúmenes externos (directorios compartidos por red) como directorios "target" para utilizarlos como TimeMachine

Una vez instalado, deberéis de buscar el directorio donde están los archivos de configuración. En el caso de Debian Testing estan en /etc/netatalk. A priori, el archivo afpd.conf ya viene completamente configurado por default, aún así no está de más confirmar la configuración que viene:

# default:
- -tcp -noddp -uamlist uams_randnum.so,uams_dhx.so,uams_dhx2.so -nosavepassword


Donde si que cambiaremos cosas es en el archivo AppleVolumes.default, en el que añadiremos los directorios que queramos compartir por AFP (y por consiguiente, que podrán utilizar nuestros MAC o cualquier SO que pueda utilizar este protocolo). La configuración para el volumen TimeMachine sería la siguente:

/media/TimeMachine TimeMachine allow:usuarioQueQueramos cnidscheme:dbd options:usedots,upriv,tm


Donde:
-> /media/TimeMachine es el directorio de dentro de nuestro GNU/Linux que compartiremos
-> TimeMachine es el nombre con el que se compartira por red
-> allow:usuarioQueQueramos, tendremos que reemplazar usuarioQueQueramos con un usuario del sistema GNU/Linux donde esté instalado Netatalk, que pueda acceder al directorio compartido y tenga permisos de escritura (obviamente).
-> cnidscheme:dbd options:usedots,upriv,tm opciones del protocolo (si quereis saber mas http://netatalk.sourceforge.net/ ). Pero... lo mas importante en esta linea es tm que significa que el MAC verá ese volumen como posible volumen para hacer TimeMachine.


Si quereis agregar mas Volumenes, utilizad la misma configuración pero quitando el tm (si lo dejáis, el único "problema" que tendreis es que os saldrá como posible TimeMachine, como queráis pero podréis utilizarlos sin problemas también).

Una vez guardado el archivo de configuración reiniciamos el servicio de netatalk:
/etc/init.d/netatalk restart


Si todo ha ido bien, se habrá reiniciado sin problemas. Aquí tenemos dos opciones, configurar avahi/zeroconf para que nuestros Macs vean directamente los volúmenes compartidos, o ir ya a nuestros MAC, yo opto por la segunda ya que es lo que me interesa.


MAC
Como no es un Volumen TimeMachine oficialmente soportado por Apple, lo que hemos hecho hasta ahora no habrá servido de nada sin lanzar una comanda a través de terminal (solo se tiene que lanzar una vez), ya que sin esta comanda. Así pues, abrimos la aplicación Terminal y pegamos lo siguiente:
defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1


Lo segundo que haremos será ir a Finder -> Ir -> Conectarse a servidor y poner lo siguiente:
afp://IP_DE_NUESTRO_SERVIDOR

Si todo ha ido bien, os habrá salido una ventana pidiendo credenciales, ponéis que os quereis conectar con otro usuario y ponéis el usuario del campo allow que hayáis puesto con su contraseña del sistema GNU/Linux.

Elegis el Volumen de TimeMachine (luego podréis entrar a los demás si quereis) y os saldrá una ventana del Finder mostrando el directorio vacío del TimeMachine.

Para acabar con todo esto, tan solo teneis que ir al icono TimeMachine del menú de arriba a la derecha y entrar en Abrir el Panel de Preferencias de Time Machine... -> Seleccionar disco. Si todo ha ido como ha tenido que ir, os saldrá ahí sin problemas.

Finalmente, para entrar en los otros volúmenes compartidos no tenéis que hacer nada especial. Al haber montado el Volumen de TimeMachine al menú de la izquierda de Finder, os habrá salido vuestro GNU/Linux, si entrais dentro vereis todos los Volúmenes compartidos.


Instalación de un SO nuevo, y restauración vía red.
Cuando metais el CD o USB de nueva instalación, teneis que ir al Menú -> Utilidades -> Terminal y poner lo siguiente:
mkdir /Volumes/TimeMachine
mount -t afp afp://usuario:contraseña@IP_DEL_SERVIDOR/DIRECTORIO_TIME_MACHINE /Volumes/TimeMachine
hdid /Volumes/TimeMachine/NombreAnteriorDeVuestraMaquina.sparsebundle


Y después, ya hacer la instalación totalmente normal, como si fuese USB sin problemas.


Ventajas de seguir este tutorial.
* Tendras tus backups centralizados de todos los MACS.
* Puedes utilizar el disco duro por red para algo mas que no sea TimeMachine.
* El disco duro compartido no tiene que tener formato HFS o HFS+, así pues podemos utilizarlo para mas cosas.
* Podeis añadir instalar otros servidores para que funcionen con los protocolos NFS y SMB, para poder acceder a esos directorios también.

Desventajas respecto a tener un USB conectado directamente a nuestros Macs
* El TimeMachine, la aplicación que te enseña todos los backups que ha habido, tarda sensiblemente mas en cargar.
* Si no teneis ethernet de 1Gbps igual os tarda un poco en restaurar las cosas, aunque mi opinión es que vale la pena debido a todas las ventajas.

Cosas que no he probado, pero que doy por sentado que funcionan.
* La última parte del tutorial no la he probado, pero doy por sentado que funciona sin problemas ya que no hacemos ningún tipo de magia :).
muchas gracias amigo, un gran manual te as currado tio, a ver si tengo mas tiempo y me decido a probarlo,
un saludo
Cojonudo el manual! Le dejo mi [oki] xD


Lo que tiene que molar es montarlo con un sistema de iSCSI xD
Muchisimas gracias por el aporte, menudo curro [oki]
Lo tendré que probar con un PC que tengo apartado. Gracias!
Esto lo tengo yo pensado hacer con algún PC con poquitos recursos y que consuma poco y tenerlo todo el tiempo encendido. Tenía la idea desde hace mucho tiempo, pero nunca me había puesto a ello, macnífico de verdad, muchas gracias!!!!
Bueno, ayer formatee mi iMac para hacer una instalación desde 0 de Lion... y no he conseguido que el backup continue con el mismo sparsebundle. Si puedo conseguirlo lo pondré en el tutorial también.

A ver que tal :).

EDITO: Bueno, eso es porque he hecho una instalación LIMPIA de LION, mi idea era hacer una instalación limpia y luego utilizar los backups anteriores eh!. Desde la propia instalación te dice si quieres recuperar de un time machine, y entonces no hubiese tenido ningun problema.
Mmm... la mitad de la info expuesta en este "tutorial" es irrelevante e innecesaria.

Lo dejo como opinión personal.
nesquik escribió:Mmm... la mitad de la info expuesta en este "tutorial" es irrelevante e innecesaria.

Lo dejo como opinión personal.


Explica para tí que es un tutorial.
nesquik escribió:Mmm... la mitad de la info expuesta en este "tutorial" es irrelevante e innecesaria.

Lo dejo como opinión personal.

si tu lo puedes hacer mas resumido te agradeceria que lo pusieras
@keopety, d4rkb1t

Pues veréis. El tema principal en este tutorial es el hacer uso de unidades de red para copias de seguridad TM usando el protocolo AFP.

Pero en realidad el tutorial no sirve para nada, sobre todo para la versión Lion actual, y muy poco para la antigua versión Snow Leopard

1.- El sistema operativo Linux no es requerido para el uso de TM en red.
Se pueden usar otro tipo de sistemas operativos, incluido los Microsoft Windows.

(Si, pensé en el TM en red mucho antes de tener otro Mac en casa, luego, la hice con un servidor que tenía con Windows.)


2.- El protocolo usado AFP no es requerido.
No es imprescindible tener que instalar una aplicación externa para poder manejar otros protocolos, se puede usar tranquilamente SMB o NFS que ya están incluidos en los diversos S.O. de serie.

3.- Es innecesario modificar la configuración de TM desde un terminal para las versiones actuales de MacOSX 10.7 Lion ya que actualmente permite el uso de recursos compartidos en una red como unidades de copias de seguridad (TM) sin modificar ni un solo fichero.
Tampoco es requerido modificarlo en las versiones 10.6 Snow Leopard.

En un principio Apple lo inhabilitó para las versiones cliente de MacOSX dando como motivo que las copias en red podrían presentar fallos, y solo estaba habilitado en las versiones server. Sin embargo, mas tarde Apple sacó el Time Capsule, que viene a ser un Airport Extreme con disco duro interno (a grosso modo).

Es decir, todo este tutorial se resume en que si tienes un sistema de almacenamiento en tu red local (sea del tipo que sea) y quieres usar el espacio disponible como TM, basta con que montes una de las unidades compartidas en MacOSX con permisos de lectura y escritura (esto lo debe tener configurado el servidor) y a TM le des la opción (desde su panel de configuración) de usar dicha unidad como medio para las copias de seguridad.

Incluso para facilitar aun mas la tarea, se puede configurar desde el panel de preferencias de usuarios que nada mas iniciar la sesión, monte el recurso en red destinado a las copias de seguridad como si fuera una unidad local.

¿Entendéis por que veo algo inútil (sin ánimo de ofender) he irrelevante este tutorial?.
Lo bueno de los sistemas operativos Apple, es que hacen que las cosas fáciles, sean más fáciles aun.
nesquik, no te critico , sino que ahy forma de hacerlo mas facil pues bienbenida sea, yo he estado mirando y con samba en arch no consigo que me comparta nada en mac es que no veo lo compartido, si sabes de algun manual?
keopety escribió:nesquik, no te critico , sino que ahy forma de hacerlo mas facil pues bienbenida sea, yo he estado mirando y con samba en arch no consigo que me comparta nada en mac es que no veo lo compartido, si sabes de algun manual?

Eso es un problema del servidor samba de tu Linux, no del cliente de MacOSX.

Si tienes problemas con el servidor samba de arch, deberías revisar la documentación que hay sobre ello en la red. Entiéndeme, no creo que solucionar aquí problemas de los usuarios con Linux sea lo mas correcto, sobre todo cuando ya hay un subforo dedicado a ello.
nesquik escribió:@keopety, d4rkb1t

Pues veréis. El tema principal en este tutorial es el hacer uso de unidades de red para copias de seguridad TM usando el protocolo AFP.

Pero en realidad el tutorial no sirve para nada, sobre todo para la versión Lion actual, y muy poco para la antigua versión Snow Leopard

1.- El sistema operativo Linux no es requerido para el uso de TM en red.
Se pueden usar otro tipo de sistemas operativos, incluido los Microsoft Windows.

(Si, pensé en el TM en red mucho antes de tener otro Mac en casa, luego, la hice con un servidor que tenía con Windows.)


2.- El protocolo usado AFP no es requerido.
No es imprescindible tener que instalar una aplicación externa para poder manejar otros protocolos, se puede usar tranquilamente SMB o NFS que ya están incluidos en los diversos S.O. de serie.

3.- Es innecesario modificar la configuración de TM desde un terminal para las versiones actuales de MacOSX 10.7 Lion ya que actualmente permite el uso de recursos compartidos en una red como unidades de copias de seguridad (TM) sin modificar ni un solo fichero.
Tampoco es requerido modificarlo en las versiones 10.6 Snow Leopard.

En un principio Apple lo inhabilitó para las versiones cliente de MacOSX dando como motivo que las copias en red podrían presentar fallos, y solo estaba habilitado en las versiones server. Sin embargo, mas tarde Apple sacó el Time Capsule, que viene a ser un Airport Extreme con disco duro interno (a grosso modo).

Es decir, todo este tutorial se resume en que si tienes un sistema de almacenamiento en tu red local (sea del tipo que sea) y quieres usar el espacio disponible como TM, basta con que montes una de las unidades compartidas en MacOSX con permisos de lectura y escritura (esto lo debe tener configurado el servidor) y a TM le des la opción (desde su panel de configuración) de usar dicha unidad como medio para las copias de seguridad.

Incluso para facilitar aun mas la tarea, se puede configurar desde el panel de preferencias de usuarios que nada mas iniciar la sesión, monte el recurso en red destinado a las copias de seguridad como si fuera una unidad local.

¿Entendéis por que veo algo inútil (sin ánimo de ofender) he irrelevante este tutorial?.
Lo bueno de los sistemas operativos Apple, es que hacen que las cosas fáciles, sean más fáciles aun.


Lo volveré a probar, pero en su día probé tanto con NFS como con SMB y ninguno de los dos pude hacer TimeMachine (compartir por red si). Con AFP, específicando que volumen quiero de TimeMachine, si que pude sin problemas.
d4rkb1t escribió:Lo volveré a probar, pero en su día probé tanto con NFS como con SMB y ninguno de los dos pude hacer TimeMachine (compartir por red si). Con AFP, específicando que volumen quiero de TimeMachine, si que pude sin problemas.

Adelante, te animo a ello.
Yo lo he hecho con los dos en dos sistemas diferentes, pero al final me convenció mas usar un disco duro por USB.

No por que no me funcionara, sino por que es más rápido y tiene mas ventajas un disco duro directamente conectado que no una unidad por red.
pues yo casi lo tengo, solo tengo un problema, que el linux no tengo permisos de escritura para hfs y no entra, si lo hago con ntfs todo bien hasta cuando va a escribir la copia de times machine, que dice que el disco no es compatible,
compartido con samba

edito, estoy haciendolo como tu dices y no me sale el servidor en el mac;
y este comando no me va;
/etc/init.d/netatalk restart

me dice que no existe el fichero
15 respuestas