A continuación explico como hacer lo mismo que el Norton Ghost pero con unas cuantas mejoras. No es nada nuevo, simplemente he cogido de aquí y de allí y le he dado forma. Yo ya no sé vivir sin esto y he pensado que os podría ser útil.
Introducción
Cada vez que quiero restaurar una imagen con el ghost tengo que:
- Reiniciar con el Hiren's CD metido.
- Navegar por el menú hasta ejecutar el Ghost.
- Navegar por el menú hasta seleccionar restaurar desde un fichero.
- Seleccionar el disco y la partición destino.
- Esperar y confirmar el reinicio.
- Sacar el CD.
Es un proceso sencillo, pero laborioso y repititivo. Vamos, que paso. Lo que yo quiero es:
- Reiniciar
- Seleccionar opción
- Esperar unos minutos hasta que aparezca el escritorio de windows
Y eso es lo que vamos a hacer…
En principio cualquier LiveCD vale, pero mejor si ya tiene instalado el partimage. Mejor incluso si ese LiveCD es el System Rescue CD http://www.sysresccd.org/Main_Page , ya que en él participa el desarrollador de partimage
Necesitamos también particionar el disco para alojar el contenido del CD, así como espacio para guardar la imagen.
hda1 10GB Windows
hda2 100GB datos
hda3 1GB/5GB LiveCD/LiveDVD
La partición de datos se puede formatear con ext2/3 y leerse desde Windows con Ext2 IFS (http://www.fs-driver.org/) sin que se aprecie que vaya más lento y pudiendo compartirla y todo lo demás. También se puede formatear con fat32, pero no con ntfs, al menos la última vez que lo probé la escritura era insufriblemente lenta. Otra opción es hacer la partion del LiveCD lo suficientemente grande como para alojar la imagen.
Usaremos GRUB como gestor de arranque. Es, de lejos, el más potente, flexible y bonito que conozco.
Antes de empezar tengo que aclarar que no voy a explicar como particionar un disco. Con el Partition Magic está tirado, prueba a bajar el Hiren’s BootCD. Desde linux se puede hacer con el cfdisk que se incluye en el sysresccd. En todos los comandos que siguen me basaré en el anterior esquema de particiones.
Empezamos
Tuesta el CD del sysresccd y reinicia el ordenador. Cuando aparezca “boot: ” pon “menu”. Selecciona la resolución, el idioma y arranca linux. Empieza la fiesta:
root@sysresccd /root % mkfs.ext2 /dev/hda3
root@sysresccd /root % mkdir /mnt/hda3
root@sysresccd /root % mount /dev/hda3 /mnt/hda3
root@sysresccd /root % mkdir /mnt/hda3/boot
root@sysresccd /root % cp –a /boot/* /mnt/hda3/boot
root@sysresccd /root % rm –rf /mnt/hda3/boot/grub/menu.lst
Formateando con ext2 nos cubrimos las espaldas asegurándonos de que está incluido el soporte en el núcleo (tanto en esta distribución como en cualquier otra). Copiamos /boot, que contiene el núcleo así como el fichero de configuración del grub que dejaremos así:
root@sysresccd /root % nano /mnt/hda3/boot/grub/menu.lst
timeout 3
default 0
title Windows XP
rootnoverify (hd0,0)
makeactive
chainloader +1
title System Rescue CD
root (hd0,2)
kernel /boot/srcd/vmlinuz1 root=/dev/ram0 init=/linuxrc vga=788 setkmap=13 usbstick autoruns=0
initrd /boot/srcd/initrd1
boot
title Guardar Windows
root (hd0,2)
kernel /boot/srcd/vmlinuz1 root=/dev/ram0 init=/linuxrc vga=788 setkmap=13 usbstick autoruns=0,1
initrd /boot/srcd/initrd1
boot
title Recuperar Windows
root (hd0,2)
kernel /boot/srcd/vmlinuz1 root=/dev/ram0 init=/linuxrc vga=788 setkmap=13 usbstick autoruns=0,2
initrd /boot/srcd/initrd1
boot
Ya está configurado el arranque, ahora copiamos el núcleo y la imagen de inicio:
root@sysresccd /root % mkdir /mnt/hda3/boot/srcd
root@sysresccd /root % cp /mnt/cdrom/isolinux/vmlinuz1 /mnt/cdrom/isolinux/initrd1 /mnt/hda3/boot/srcd
Ahora tenemos que modificar la imagen de inicio para que busque el sistema de ficheros comprimido (que copiaremos más adelante) en el disco duro además de en memorias usb. Es algo que casi ningún LiveCD tiene.
root@sysresccd /root % cd /mnt/hda3/boot/srcd
root@sysresccd /mnt/hda3/boot/srcd % mv initrd1 initrd1.gz
root@sysresccd /mnt/hda3/boot/srcd % gunzip initrd1.gz
root@sysresccd /mnt/hda3/boot/srcd % mkdir /mnt/iso
root@sysresccd /mnt/hda3/boot/srcd % mount –o loop initrd1 /mnt/iso
root@sysresccd /mnt/hda3/boot/srcd % nano /mnt/iso/linuxrc
Y ahora con CTRL + W buscamos “sda” y comentamos/añadimos unos líneas. Sal con CTRL. + X, guarda los cambios con Y y confirma la sobreescritura del fichero. Debería quedar algo así:
findusbmount()
{
# for i in uba ubb ubc ubd ube ubf ubg ubh sda sdb sdc sdd sde sdf sdg sdh sdi sdj
# do
# for j in 1 2 3 4
# do
# devname="/newroot/dev/$i$j"
# if mount -t vfat -r $devname /newroot/mnt/cdrom 2>/dev/null
devname="/newroot/dev/hda3"
if mount -t ext2 -r $devname /newroot/mnt/cdrom 2>/dev/null
then
if [ ! -e /newroot/mnt/cdrom/sysrcd.dat ]; then
#echo -e "${HILITE}---- $devname is not a Live-USB Stick; skipping...${NORMAL}"
umount /newroot/mnt/cdrom
else
mounted=$devname
echo -e "${HILITE}---- USB medium found on $devname${NORMAL}"
return 1;
fi
fi
# done
# done
return 0;
}
root@sysresccd /mnt/hda3/boot/srcd % umount /mnt/iso
root@sysresccd /mnt/hda3/boot/srcd % gzip initrd1
root@sysresccd /mnt/hda3/boot/srcd % mv initrd1.gz initrd1
Ahora volcamos el sistema de ficheros comprimido (el / de la distro) al disco duro:
root@sysresccd /mnt/hda3/boot/srcd % cp /mnt/cdrom/sysrcd.dat /mnt/hda3
Ya tenemos el sistema listo. Ahora tenemos que crear los scripts que se cargarán en el arranque y que realizarán automáticamente la creación / restauración de imágenes:
root@sysresccd /mnt/hda3/boot/srcd % cd /mnt/cdrom
root@sysresccd /mnt/cdrom % nano autorun0
root@sysresccd /mnt/cdrom % nano autorun1
root@sysresccd /mnt/cdrom % nano autorun2
Que contienen, respectivamente:
autorun0
#!/bin/bash
mount -o remount,rw /mnt/cdrom
autorun1
#!/bin/bash
partimage -z1 -o -d -b -f2 save /dev/hda1 /mnt/cdrom/NOSEASUSTE-winxpsp2
autorun2
#!/bin/bash
partimage -b -f2 restore /dev/hda1 /mnt/cdrom/NOSEASUSTE-winxpsp2.000
Ahora todo está dónde y cómo tiene que estar. Podemos ejecutar pues, el único comando crítico, que sustituirá el gestor de arranque de windows por el GRUB:
root@sysresccd /mnt/cdrom % grub-install –root-directory=/mnt/hda3 /dev/hda
root@sysresccd /mnt/cdrom % reboot
Se acabó
Ahora ya sin el CD, cuando arrancas el ordenador debería aparecer un menú durante 3 segundos. La segunda opción es como si arrancaras desde el CD pero más rápido, claro. El resto se explican solas… Al que no le haya quedado claro aquí tiene una foto con el grub de Debian Sid que permite cargar una imagen de 640x480 y 14 colores