Mostrando entradas con la etiqueta g4l. Mostrar todas las entradas
Mostrando entradas con la etiqueta g4l. Mostrar todas las entradas

domingo, 1 de junio de 2008

G4L Ghost For Linux

g4l es una utilidad que nos permite clonar o realizar imágenes del disco duro de nuestro ordenador, incluyendo el sistema operativo.

En las siguientes páginas intento hacer una guía de referencia rápida - manual, tutorial - del mismo para tres situaciones concretas:

  1. Copia local en un equipo .



    Videotutorial elaborado para el curso piloto coordinadores tic del cnice




  2. Mediante Red:: subimos la imagen a través de una red local a un servidor ftp y la restauramos en ese mismo equipo o en otro con el mismo hardware


  3. Mediante multidifusión: Lanzamos las imágenes a múltiples equipos mediante multidifusión de manera simultánea, por tanto, a varios equipos , por ejemplo para montar un aula de ordenadores.


  4. Cargar mediante arranque en Red nuestro g4l: arrancamos el equipo que queremos clonar mediante la opción de BIOS arranque en red y mediante PXE nos cargaría automáticamente y sin emplear el CD de g4l el live cd del mismo para comenzar a usarlo en nuestro equipo.




miércoles, 14 de mayo de 2008

Servidor PXE con g4l en Ubuntu

TFTP + PXE + syslinux + G4L

Cuando se realizan clonaciones de múltiples equipos, habitualmente debemos generar un CD con el que arrancar el PC que queremos clonar, para que el sistema operativo que cargamos en el CD nos permita acceder a las imágenes que queremos instalar en nuestros equipos. Uno de los programas que nos permite generar imágenes como ya he comentado en anteriores artículos es el g4l y funciona de este modo.

Lo que trato en este artículo es de cómo instalar un servidor PXE que nos permita arrancar nuestros equipos mediante Red – siempre que la BIOS del equipo lo permita, que en la actualidad son el 99.9999% - y cargar directamente nuestro g4l sin necesidad de insertar ningún CD.

Este documento es una adaptación del escrito Paul Matthews incorporando algunas ideas de David Sudjiman y de revartm.wordpress.com y de Jesús Antonio Alvarez Cedillo (Tognu) entre otros, adaptado a las últimas versiones de los paquetes usados y empleando una distribución Debian, Ubuntu o basada en Debian para generar un servidor PXE que nos permita cargar g4l a través de la red.

Agradezco, asímismo, las aportaciones realizadas como comentario de hbto que ya he incorporado al documento original y que completaban un poco más este manual y solventaban ciertamente algunas carencias del mismo.

Name: syslinux

Homepage: http://syslinux.zytor.com/

Function: The SYSLINUX Project covers lightweight bootloaders for floppy media, network booting and bootable "El Torito" CD-ROMs.


Name: Ghost 4 Linux

Homepage: http://freshmeat.net/projects/g4l/

Function: Ghost for Linux is a hard disk and partition imaging and cloning tool similar to "Norton Ghost"(c) and (tm) by Symantec

Para este ejemplo el servidor de dhcp sirve direcciones entre 172.16.0.10 y el 172.16.0.200. La dirección de red es la 172.16.0.0/16 y la del enrutador 172.16.10.100. Muy importante con respecto a este punto es que el rango de direcciones en la que pongamos a servir ip´s a nuestro servidor esté en la misma red que una de las ip de nuestro servidor

  1. En primer lugar necesitamos tener el servidor dhcp trabajando. En caso contrario:

apt-get install dhcp3-server
nano /etc/dhcp3/dhcpd.conf

o bien emplear webmin.

dhcpd.conf:

ddns-update-style interim;
ignore client-updates;
allow bootp;
allow booting;

subnet 172.16.0.0 netmask 255.255.0.0 {

range 172.16.0.10 172.16.0.200;
option routers 172.16.10.100;
option subnet-mask 255.255.0.0;
option domain-name "home.net";
option domain-name-servers 172.16.10.100;
default-lease-time 21600;
max-lease-time 43200;
option root-path "/tftpboot/";
filename "pxelinux.0";

}



2. Después necesitamos configurar el boot PXE, para lo que bajamos syslinux
apt-get install syslinux
si no lo encuentra o queremos instalar la última versión:

wget http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.63.tar.gz

tar -xvzf syslinux-3.63.tar.gz -C /usr/local/src

3. Creamos el directorio para el servicio tftpd en el directorio raíz '/'.

mkdir /tftpboot

4. Ahora, necesitamos copiar los dos ficheros desde syslinux a nuestro recién creado directorio tftpboot:

a.- Si hemos usado apt-get para el paquete syslinux:
cp /usr/lib/syslinux/pxelinux.0
/tftpboot
cp /usr/lib/syslinux/memdisk
/tftpboot

b.-si hemos usado wget estarán en el siguiente directorio:

cp /usr/local/src/syslinux-3.63/pxelinux.0 /tftpboot
cp /usr/local/src/syslinux-3.63/memdisk/memdisk /tftpboot


5. Nos aseguramos de tener el servidor tftpd-hpa instalado (el servidor tftp “básico” no nos sirve, ha de ser el tftpd-hpa, porque hay algunas opciones necesarias para arrancar mediante PXE que el otro no incluye, en concreto tsize).

apt-get install tftpd-hpa tftp-hpa


6. Configuramos el servidor de tftpd.

nano /etc/default/tftpd-hpa

Una vez abierto pondremos las dos opciones con los valores que indico a continuación.

RUN_DAEMON=”yes”

OPTIONS=”-l -s /tftpboot”

Las opciones indican lo siguiente:

-l : es para que el servidor se ejecute como daemon.

-c : está opción nos permitirá poder escribir/enviar datos al servidor tftp. Como no voy a subir ficheros no habilito esta opción

-s : está opción indica el directorio que utilizaremos para bajarnos y subir cosas. En mi caso he utilizado el directorio /tftpboot, que previamente he creado, pero se puede optar por cualquier otro.

Una vez modificado dicho fichero, procedemos a lanzar el servidor, para ello ejecutamos:

# /etc/init.d/tftpd-hpa start


Para que al reiniciar siga funcionando el servidor de TFTP deberemos cambiar la sección del archivo /etc/inetd.conf que habla del TFTP por:

tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /tftpboot

en lugar de la sugerida. Si ya se ha reiniciado y no has actualizado la línea, hacerlo y ejecutar:

sudo update-inetd --enable BOOT

Y ya tendriamos listo el servidor.

Cliente

Para conectarnos al servidor debemos instalar un cliente -si todavía no lo hemos hecho-, como siempre utilizaremos la herramienta apt, esta vez será:

# apt-get install tftp-hpa

Y comprueba que realmente funciona (creamos un fichero en el servidor de tftp y lo bajamos mediante el cliente de tftp), yo suelo usar las opciones verbose y trace para que me vaya mostrando datos de lo que está haciendo:

# ls –l > /tftpboot/listado.txt

# tftp 172.16.16.131

#get listado.txt

# quit

# ls -l

7. Una vez hecho esto reiniciamos los siguientes servicios

/etc/init.d/dhcp3-server restart

8. Vamos a la carpeta tftpboot y creamos el directorio de configuración PXE.

cd /tftpboot/
mkdir pxelinux.cfg/

9. Accedemos al directorio pxelinux.cfg

cd pxelinux.cfg

10. Creamos el fichero de configuración por defecto

nano /tftpboot/pxelinux.cfg/default

default:


Display images
SAY DEFAULT is now bzImageb


DEFAULT bzImageb

LABEL bzImage6
KERNEL g4l/bzImage6
APPEND initrd=g4l/ramdisk.gz ramdisk_size=65536 root=/dev/ram0
LABEL bzImagea
KERNEL g4l/bzImagea
APPEND initrd=g4l/ramdisk.gz ramdisk_size=65536 root=/dev/ram0
LABEL bzImageb
KERNEL g4l/bzImageb
APPEND initrd=g4l/ramdisk.gz ramdisk_size=65536 root=/dev/ram0
LABEL bzImagec
KERNEL g4l/bzImagec
APPEND initrd=g4l/ramdisk.gz ramdisk_size=65536 root=/dev/ram0

PROMPT 1
TIMEOUT 600
ONTIMEOUT bzImageb


F1 images
F2 preimage
F3 startup
F4 disclaim


11. Descargamos la ISO de g4l de la página del proyecto http://sourceforge.net/projects/g4l o directamente de (también funciona con la anterior versión 0.24):

wget http://optusnet.dl.sourceforge.net/sourceforge/g4l/g4l-v0.26.iso


12. Montamos la ISO

mount -o loop -t iso9660 /tmp/g4l-v0.26.iso /media/cdrom/

14. Una vez la ISO está montada necesitamos crear el directorio g4l y copiar los ficheros a ella:

mkdir /tftpboot/g4l

cp -rf /media/cdrom/* /tftpboot/g4l

15. Ahora, simplemente, necesitamos configurar los clientes para que arranquen a través de red.


Enlaces relacionados:

Manual de uso de clonezilla desde live cd: http://tecnoloxiaxa.blogspot.com/2008/12/manual-de-clonezilla-creacin-de-imgenes.html

Si te ha interesado este artículo es posible que te interesen los manuales de funcionamiento de g4l que he elaborado:

Manuales de g4l


También podrás encontrar un manual de instalación de un servidor (DRBL) de PXE en Ubuntu pero en este caso para emplear clonezilla que presenta ventajas de velocidad y compresión con respecto a g4l. Además no es necesario instalar un servidor ftp (con samba o ssh ya funcionaría en modo unicast)

Servidor PXE con clonezilla en Ubuntu



jueves, 1 de mayo de 2008

Manual g4l 1/3 Copia local

En este brevísimo manual del g4l básicamente se van a tratar tres ejemplos de uso del programa para generar imágenes en tres ejemplos distintos:


      1. Disponemos de un único equipo y vamos a realizar una imagen del disco duro o de una partición del mismo volcando el resultado en una partición o disco libre distinta, lógicamente, de aquella de la que queremos realizar la imagen.

      2. Crear y volcar la imagen del equipo cuya imagen queremos guardar a un servidor de ftp situado en nuestra red – esto no es una condición necesaria pero si no subir una imagen de un par de gigas de nuestro sistema podría llevarnos un par de días. En segundo lugar restauraremos esa imagen en el mismo equipo como si se hubiese estropeado.

      3. Una vez que hemos hecho el paso 2 “crear la imagen del equipo que queramos y subirla al servidor ftp” podemos, en lugar de instalarla en un único equipo querer instalarla en una serie de equipos iguales, es decir, clonar la instalación en otros equipos con idéntico hardware. (pensemos en la instalación de equipos en un aula informática, por ejemplo)

Requisitos previos:

· Haber bajado la iso del proyecto y haberla grabado en un cd

· Para el punto 2 tener un servidor ftp funcionando en el que esté dado de alta, al menos, un usuario con permisos para crear directorios y ficheros.


1.- IMAGEN DEL DISCO DURO EN MODO LOCAL

En este ejemplo se trata de hacer una “copia de seguridad” de nuestro disco duro en otro, o en otra partición libre y disponible del mismo equipo. Dado que hay una opción para realizarlas de modo similar a las de red, que explicaré en los puntos 2 y 3, en este punto voy a emplear para ello una opción llamada clickand clone que incluye el programa.


  • Insertamos el cd del g4l y arrancamos el equipo.

  • Tras una serie de mensajes en la que nos explica el modo de funcionamiento del programa nos aparece la consola del sistema en la que teclearemos g4l para iniciar el “modo gráfico”.

  • Tras una serie de mensajes en la que nos advierten que no se hacen responsables de los fallos del software debería aparecernos la pantalla inicial

  • Ya que vamos a realizar una copia de todo el sistema de ficheros seleccionamos RAW MODE y nos mostrará la pantalla



  • Seleccionamos click´n´Clone

  • En esta pantalla tan sólo tendremos que pulsar en la opción SelectSource para seleccionar el disco del que queremos realizar la imagen para lo que nos podemos desplazar con los cursores y aceptar la selección con la barra espaciadora para aceptar pulsando enter. Recordar que podremos seleccionar el disco completo con sda o sólo de alguna de las particiones

  • Pulsamos en selecttarget –opción B: Seleccionamos el disco o partición de destino del mismo modo que antes.
  • Una vez hecho esto pulsamos en la opción C, con lo cual al finalizar tendremos una imagen del estado actual de nuestro sistema en la partición seleccionada.

  • PARA RESTAURAR: dicha copia hemos de recordar que el origen ahora es la imagen que previamente habíamos creado en la partición libre y el destino la partición dañada o que queramos reinstalar el resto del proceso es exactamente igual.

  • POR SUPUESTO, NO ME HAGO RESPONSABLE DE LAS PERDIDAS DE DATOS QUE SE PRODUZCAN COMO CONSECUENCIA DEL USO DE ESTE MANUAL. ES MERAMENTE INFORMATIVO.



Información adicional de g4l ------------ Página de Inicio ------------ Siguiente página

g4l: unicast 3/3

CÓMO CLONAR VARIOS EQUIPOS DE MANERA SIMULTÁNEA

Unicast es un paquete que consta de dos utilidades: udpreceive y udpsender que nos permiten, respectivamente, unir el equipo a un grupo de multidifusión para recibir ficheros ( o imágenes del sistema, por ejemplo ) y para enviarlos desde el servidor. Para instalarlo en debian/ubuntu, tan sólo vamos a gestor de paquetes synaptic , buscamos unicast y lo marcamos, o bien ejecutamos en una consola"apt-get install unicast".

Para emplearlo primero habremos subido al servidor de ftp la imagen de nuestro disco duro o de la partición que queramos clonar. Una vez hecho esto, en cada uno de los equipos que queramos clonar arrancaremos con el cd de g4l y en las opciones de red seleccionaremos la opción "U: UDP-RECEIVE"



Esto hará que se una al grupo a la espera de que se "lance" el fichero desde el servidor.

Para comenzar a enviar las imágenes tan sólo tenemos que ir al equipo dónde tengamos la imagen y ejecutar udp-sender -f "nombre del fichero", en el caso de que tengamos varias tarjetas de red podremos especificar también la tarjeta y el puerto. Una vez hecho, tan sólo tendremos que pulsar una tecla en cualquiera de los clientes o en el servidor para que comience a enviar el fichero de manera simultánea a todos los equipos. Un ejemplo de este último caso podría ser:

udp-sender -f imagenaula.img -- interface eth1 --portbase 11000




enviaría el fichero "imagenaula.img" por multicast, empleando la tarjeta de red "eth1" por el puerto "11000", en el momento en que se presione una tecla. Para mas opciones, como siempre, man udp-sender.


Página Anterior --------------- Página de inicio ------------- Servidor PXE con G4L en Ubuntu


g4l: copia en red mediante FTP 2/3

IMÁGENES EN RED MEDIANTE SERVIDOR FTP

El único requisito para subir/bajar la imagen de nuestro disco duro a través de la red es tener un servidor ftp funcionando en la red. Además el usuario que vamos a usar debe poder crear directorios y ficheros en el directorio inicial para el caso de querer subir las imágenes.
Una vez tenemos montado el servidor de ftp vamos a crear una imagen de nuestro disco duro en el servidor.
Para ello arrancamos el equipo del que queremos hacer la imagen mediante el cd de g4l, o bien, si ya hemos instalado un servidor con arranque PXE mediante red.

  • Tecleamos g4l para arrancar el modo “gráfico”
  • Seleccionamos la primera opción “rawmode” y nos aparece:

  • Seleccionamos “Network use” para acceder a las opciones de configuración de red:

  • En mi caso ésta es la pantalla inicial que aparece. Dado que en mi red hay un servidor de DHCP la opción “C: Config with DHCP” ya me aparece con la ip asignada (172.16.16.111). Si en vuestra red no existe, lo único que debéis hacer es ir a la opción “B: Configdevice” y en la ventana que nos aparecerá teclear una IP para el equipo, de tal manera que esté en el rango de direcciones de red de vuestro servidor de FTP.
  • Una vez le hemos asignado la IP a nuestro equipo vamos a la opción “D: Config FTP”, y tecleamos la dirección IP de nuestro servidor de FTP:

  • Si nuestro servidor de FTP requiere nombre de usuario y contraseña ( es decir, no nos vale con los usuarios anónimos) los introducimos mediante la opción “E: Configuseridpass”. Tenemos dos maneras de hacerlo: lo más cómodo es poner “nombre de usuario”:”password” (como el teclado, por defecto, es el americano, os recuerdo que los dos puntos de separación entre el nombre de usuario y el password se obtienen con shift + ñ ) La otra opción es –u “nombre usuario” –p “contraseña”, siempre referidos al servidor
    ftp.

  • Seleccionamos “F: Configfilename” para introducir el nombre que le daremos al fichero resultante de generar la imagen y con el que quedará guardado en nuestro servidor ftp.
  • A continuación seleccionamos backup y comenzará a crear y subir el fichero resultante al directorio. Si quisiéramos cambiar el camino al directorio dónde se encuentran las imágenes lo haríamos desde la opción “P: PathtoImagedirectory” y si quisiéramos subir una partición ntfs desde la opción N. La pantalla final con todas las opciones configuradas y realizando el backup serían para un usuario llamado “g4l" de pass “g4l” y servidor ftp 172.16.15.118, llamándole al fichero imagenprueba.img:
  • Para restaurar esta imagen en el mismo equipo o en otro de igual hardware, lo único que tendríamos que hacer es en lugar de emplear la opción backup emplear la opción restore. Además antes de ello a la hora de seleccionar el nombre del fichero en la opción “F: Configfilename” deberíamos seleccionar uno de los existentes.