Explicaré un caso práctico donde clonaré un disco duro de una máquina con varios sistemas operativos (linux y windows, que muy a pesar windows se usa mucho y asi demuestro como DRBL no tiene problema por manejar NTFS) a otros 5 ordenadores usando multicast. Sólo uso 5 porque mi ordenadorcito el pobre no creo que pueda virtualizar mucho más. Alguien quizá se pregunte “¿Qué eso de multicast, que no calla con eso?”, una explicación breve:

Cuando envías cualquier archivo por una red, se realiza una conexión entre los dos ordenadores. El servidor tiene una conexión independiente para cada cliente. Multicast consiste en que el servidor no se conecta, simplemente “envía” por la red la información sin ningún destinatario concreto y los clientes la cojen cuando pasa delante de ellos. Esto nos viene perfecto porque si queremos enviar una imagen de un disco duro de 15GB a 50 ordenadores por el método estándar tendríamos que dividir el ancho de banda en 50, multiplicar por 50 la carga del servidor y calcular la cantidad de horas y horas que llevaría (bastante más que multiplicarlo por 50). Con multicast el servidor sólo envia una vez las cosas y listo. Espero que el concepto haya quedado más o menos claro.

Supongo que mientras has estado leyendo esto se haya bajado la imagen, si no pues vuelve cuando la tengas
Ahora ya solo graba la imagen en un cd y reinicias, arrancando desde el cd seleccinando la primera opción. Durante el arranque te pregunta por el keymap. Yo selecciono la opción “Don’t touch the keymap” pero si prefieres puedes seleccionar el keymap Español.
Una vez iniciado deberías ver algo así:

DRBL recien iniciado

Solo necesitamos usar los iconos Clonezilla server (arriba) y Clonezilla live (debajo). También tiene el gParted que siempre biene bien.
Antes de empezar, como dije en el podcast, para estos menesteres es mejor no usar uuid en el /etc/fstab, usa el metodo tradicional /dev/sda4 por ejemplo


PASO 1: CREAR IMAGEN DEL DISCO DURO/PARTICIÓN

Este paso solo sería necesario la primera vez (o cuando queramos crear una nueva imagen). Hacemos doble cick en “Clonezilla live”
impresion2


Lo que aquí nos pregunta es si quieremos crear una imagen de un dispositvo (device-image) o clonar directamente desde un disco/partición a otro (device-device). Seleccionamos la primera opción (para moverte por el menú usa las flechas del teclado y la tecla “enter” para seleccionar la opción).


impresion3


Necesitamos un lugar donde grabar la imagen y eso es lo que nos pregunta aquí, que donde la queremos guardar.


IMPORTANTE:
No puedes guardar una imagen de una partición en esa partición. Me explico, si vas a hacer una imagen de /dev/sda3 no puedes guardarla en /dev/sda3. Lo mismo con los discos duros, si quieres crear una imagen de un disco duro tendrás que grabarla en otro.

Las opciones que muestra son:

local_dev: usar un dispsitivo local como por ejemplo un disco duro
ssh_server: usar un servidor ssh para guardar la imagen (útil cuando queremos crear una imagen de un disco duro y solo tenemos uno en la máquina)
samba_server y nfs_server lo mismo que ssh_server
Y las demás opciones simplemente, no las recomiendo ya que son para hacerlo a mano y mejor no tocarlo.
Yo suelo usar la opcion ssh_server porque asi clono la máquina comun para todos  los clientes y la grabo en el servidor de un golpe. Si quieres usar local_dev simplemente tendrás que seleccionar una particion de destino en el menu siguiente. Yo continuaré usando ssh_server. Si seleccionas local_dev te preguntará por la partición donde quieres guardar la imagen.

retardo4

Indicamos como queremos que coja la ip, hoy en dia cualquier router asiga IP automáticamente con dhcp así que seleciónala. Si no, pues te tocará poner una a mano seleccionando "static".

retardo5

Escribimos la IP del servidor SSH que almacenará nuestra imagen del disco duro local, a continuación nos pregunta por el puerto.

retardo6

Escribimos el usuario para acceder por ssh

El directorio remoto. Cuidado con esto, es la RUTA REMOTA. Lo remarco porque estube como media hora hasta que me di cuenta :P

La ruta remota (del servidor) donde guardaremos la imagen, ojo con esto que yo me tiré como media hora hasta que mi cuenta la primera vez XD

retardo9

Confirmamos que todo está bien

 

retardo10

Como conexión segura que es SSH, nos pregunta si aceptamos el las claves de cifrado del servidor. Escribe "yes" y dale al enter (supongo que confías en tu servidor no?)

retardo11

La contraseña del usuario

 

retardo12

Explico el menú:
savedisk -> Crear imagen del disco duro entero
restoredisk -> Restaurar disco duro a partir de una imagen
saveparts -> Crear imagen de una o varias particiones
restoreparts -> Resturar particiones a partir de una imagen
exit -> salir
En mi caso, seleccionaré “savedisk”

 

retardo13

Nombre para la imagen. La fecha es un buen nombre para saber cuales son mas actuales y todo eso. A continuación seleccionamos el disco duro

retardo15

Aquí nos pregunta cómo queremos crear la imagen:
-q -> Forma estándar, recomiendo usar esta ya que la imagen también se comprime
-q1 -> Réplica exacta usando dd. Esta opción es útil para cuando tenemos particiones cifradas.

retardo16

Lo dejamos tal cual

 

retardo17

-Z1 -> Usa gzip para comprimir la imagen, tarda un tiempo razonable y la compresión también lo es
-Z2 -> Usa bzip2, tamaño menor de la imagen pero tarda muchísimo más
-Z3 -> Usa lzo, prácticamente igual que gzip en relación tiempo:compresión
-Z0 -> No comprime, crea la imagen a pelo

Yo maro la primera opción, es la que más me gusta

 

retardo18

Para ir dividiendo la imagen en trozo de X megas, por ejemplo por si la vamos a grabar en CD. En nuestro caso, ponemos 0 para que la haga toda de un solo archivo (supongo que tienes espacio en el disco duro)

retardo19

Indicamos que queremos que haga cuando termine. Yo le digo que reinicie para que no tenga problemas con los puntos de montaje cuando se configure el servidor DRBL

retardo20

Confirmamos escribiendo la letra "y" de yes, no entiendo por qué sale por defecto la "N" para cancelar

retardo21

Creando la imagen, nos muestra el tiempo que lleva, tiempo estimado, porcentaje completado y la velocidad a la que va. Trata las particiones de manera independiente así que no te asustes si ves que parece que vuelve a empezar, lo que pasa es que está continuando con la siguiente.

Una vez haya terminado el sistema se reiniciará solo (ya que elegimos esa opción). Volvemos a seleccionar la primera opción en el menú de arranque. Una vez cargado el escritorio hacemos doble click en el icono “Clonezilla Server”. Repetimos el proceso de configuración de la red (lo de dhcp y eso) igual que antes. Ahora nos salen muchas letras amarillas.

retardo22

Estas letras amarillas nos vienen a decir que necesitamos otra IP pero que haya tranquilidad, esto se configura solo, simplemente pulsa enter

retardo23

En este punto nos pregunta si queremos que acepte todos los clientes o solo un rango de IP o MAC. En mi caso quiero que acepte todos los clientes "All Select all clients"

Ahora nos pregunta que donde esta la imagen, el menú es como el que hicimos antes donde seleccionamos “ssh_server”, posteriormente la ip del servidor, el puerto, el usuario y la ruta de la imagen. Recuerda que es la ruta absoluta de la localización de la imagen en el servidor que en mi caso es “/home/alvaro/imagenes” (la misma ruta que pusimos antes). Remarco este punto porque he visto que es la parte que más confusión causa. Después te mostrará un par de confirmaciones (dar enters y punto) y configurará la red. No te asustes si ves por ahí algún failed, es simplemente porque apaga algún servicio (como el dhcp) antes de encenderlo para asegurarse de que estaba apagado antes de que el script lo inicie para que cargue la configuración.

retardo24

Seleccionamos lo que queremos hacer, en nuestro caso "restore-disk" en el cliente. Todas estas opciones hacen referencia al cliente así que puedes grabar imágenes de particiones y discos remotos ;) La última opción nos deja elegirlo en el cliente pero como dice entre paréntesis solo para unicast (un servidor, un cliente) pero esto es obvio no?

 

retardo25

Aquí déjalo como está, la opción que más interesante me parece es -hnn0 PC para que configure él solo las IP y hostname en las máquinas windows y evitarse ir luego de uno en uno

 

retardo26

Este menú es interesante, te lo explico:
Opción por defecto: Usa la tabla de particiones de la imagen   * En nuestro caso usaremos esta porque hemos hecho una réplica de todo el disco
-k: No crear tabla de particoines -> No la veo mucha utilidad en nuestro caso pero sí cuando creamos imágenes de particiones para volcarlas en una trabla de particiones existente
-k1: Crea una tabla de particiones para dependiendo de las particiones. Esto para imágenes de discos no sirve de mucho pero cuando queremos volcar una imagen de una partición sobre un disco duro sin particiones nos crea las particiciones necesarias y así nos evita el error que nos diría luego de “/dev/sda3 nof found” por ejemplo. Cuidado que esta opción te borra la tabla de particiones actual y repito que sólo es útil cuando queremos volcar una imagen de partición en un disco duro sin tabla de particiones definida.

 

retardo27

Skip this option, no se exactamente para que sirven las demás opciones

retardo28

Lo que queremos que haga el cliente una vez finalizado el proceso. Yo suelo poner reboot para asegurarme de que luego todo funciona pero si esta tarea la estas realizando remotamente mi recomendación es que selecciones "poweroff". Y si estás haciendo pruebas yo uso la tercera opción "choose" para ver si ha habido fallos y en función de eso reiniciar, apagar o lo que quiera

retardo29

Seleccionamos la imagen, si tenemos más pues aparecerán más

 

retardo30

Seleccionamos el disco duro ya que se pueden crear imágenes que contengan varios discos duros. En mi caso solo uno

retardo31

Y por fin!! Multicast multicast!!!

retardo32

clients+time-to-wait   -> luego nos preguntara por el numero de clientes a los que tiene que esperar o un tiempo máximo, lo que antes suceda.
time to wait -> espera los segundos que le indiquemos a que se conecten todos los clientes que quieran
clients to wait -> espera a un determinado número de clientes antes de empezar el proceso

A mi me gusta la primera opción para que si tengo 40 clientes espere a los 40 o si alguno se atasca pues que inicie el proceso sin él.

retardo33

El número de clientes a los que quieres enviar la imagen

retardo34

El tiempo máximo que va a espera. 300 segundos (5 minutos) está bien

retardo35

Bieeeen!! ya esta el servidor escuchando, ahora a los clientes

 

Si tenemos wake on lan y arranque por red (y activado en la bios) no tenemos mas que usar el comando “sudo etherwake direccion_mac” y esperar. Si no, vamos metendo un cd en cada ordenador y lo arrancamos seleccionando la última opción “Network boot via etherboot”

retardo36

 

 

retardo37

Si depués del arranque por red nos aparece esta pantalla con la opcion "Clonezilla: multicast restore..." es que todo va bien. No te impacientes con el arranque por red, a veces puede llevar hasta medio minuto

 

retardo38

Y aquí el proceso de copiado. En todos los ordenadores debería aparecer esto. Siempre hay algún ordenador que se conecta antes, en ese caso aparecera una pantalla azul con las letras "Please wait".

 

retardo39

Bien!! Terminó correctamente. En mi caso solo aparece el resultado del cliente con la ip 192.168.1.100 pero esque al final solo lo hice con 1 porque mi ordenadorcito se enfadaba si le mandaba virtualizar más. Debería salir el resultado de cada uno de los clientes y si en todos es "success" terminaste. A mi nunca me ha fallado ninguna transferencia una vez ha sido iniciada pero nunca se sabe

 

Por fin terminamos. Ahora todos los ordenadores tienen el mismo sistema opeativo y todo igual :)
Esta es la manera que he usado yo, pero puedes probar infinidad de opciones diferentes hasta que se ajuste a tus necesidades. Las primeras veces puede parecer un poco lioso o que pida muchos datos pero cuando lo haces un par de veces seguro que te va como la seda.

Un problemón que tuve hace tiempo fué que los clientes cogían la ip por dhcp de otro router de mi red y no conseguía que se conectaran los clientes con el servidor así que si tienes problemas asegúrate de que se están asignando correctamente las IP (y puerta de enlace claro).

Bueno, me despido ya. Espero que este tostón haya sido lo más ameno posible, nos vemos!