Foro de Linux - Gustavo Guillermo Software Compunauta Micro Linux (uLinux)
MAIL & COMENTARIOS (English,Español) | TEMARIO PRINCIPAL

[Gnupérnico II - MetaBuscador]


Como respaldar Gentoo Linux para clonarlo

PASOS


GENERALIDADES

Debido a que Gentoo Linux es muy dificil configurarlo y descargarlo para las plataformas X86/32/64, ofrecemos un script para hacer copias clones. Este está relacionado con los usuarios finales y los amigos que tal vez no tengan alta velocidad en Internet como ADSL o un buen procesador para tener el gcc andando todo el día, nosotros acostumbramos a usar un cluster con distcc o una más poderosa PC que ellos no creo que tengan.

COMO USAR EL SCRIPT

El script debería ser modificado, en cada version de gentoo que siempre instalo, existe una carpeta especial donde gentoo guarda todo el código fuente em tarballs (archivos comprimidos) de casi todo el sistema este está en /usr/portage/distfiles Yo acostumbro a moverlo al directorio raíz /distfiles y poniendo un enlace simbólico para reemplazarlo, suponemos que tenemos la carpeta raíz y /usr/portage en la misma partición necesitaremos hacer esto:
cd /usr/portage
ls -lsh distfiles
Si vemos un enlace simbólico apuntando a /distfiles entonces dejenlo donde está, si no ven la carpeta distfiles, entonces es una nueva version de Gentoo 2005.X, y si seguimos teniendo esa carpeta enorme entonces la movemos al barra:
mv distfiles /
ln -s /distfiles distfiles
Esto es todo lo relacionado con el codigo fuente, se lo puede guardar así como está porque ya están todos los paquetes comprimidos.

DESCARGA e INSTALACION

El proximo paso es instalar este script, deberías ponerlo en la carpeta raíz [descargarlo] y guardarlo en /, para escribir en / seguro se necesita root.
ADVERTENCIA: no se puede hacer el backup de un sistema andando porque las carpetas especiales como /proc o /sys, o /dev tienen nodos especiales, estos nodos especiales no se deben guardar porque tienen informacion generada por el kernel de Linux. Obtendrías basura.
Ahora vamos al sistema Live de Gentoo y hacemos dos carpetas en el raiz del CD.
mkdir /mygentoo
mkdir /mystore
montamos el sistema en /mygentoo folder, no se necesita hacer chroot al sistema porque vamos a usar el LiveCD, montamos la segunda partición donde queramos que se guarden los tarballs o una carpeta compartida de la red en /mystore, si tenemos ahí archivos ordenado seguro queremos poner todos los paquetes en una carpeta especial, la fabricamos:
mount /dev/mysys /mygentoo
mount /dev/mystore /mystore
mkdir /mystore/gentoo
Vamos a la carpeta /mygentoo, recuerden que ya tenemos que tener mkBackup en la carpeta raiz. Lo modificamos con nano si es necesario, acá mostramos la cabecera del script:
#!/bin/bash
#FOLDER CONFIG
export FOLDERS="bin sbin boot etc root media tmp proc compartir dev mnt server srv sys cdrom dvd floppy"
export BIGFOLDERS="usr opt home lib var"
export REALLYBIGFOLDERS="usr/portage lib/modules usr/local usr/src usr/share usr/X11R6 usr/loki opt/kde3 usr/kde usr/lib"
export DEST="/mystore/gentoo"
...
...
Como podemos ver tenemos 3 tipos de carpetas:
  • FOLDERS:Las carpetas Normales, estas serán comprimidas en un sólo paquete como folder.tgz
  • BIGFOLDERS:Directorios de segundo nivel, en estos, las carpetas secundarias se almacenarán en un único paquete, por ejemplo si tenemos 3 carpetas de usuario en home llamadas gus, madgus y ftp obtendremos 3 paquetes home-gus.tgz, home-madgus.tgz y home-ftp.tgz
  • REALLYBIGFOLDERS:Este tipo de carpetas se ignorarán en BIGFOLDERS, y entonces como un BIGFOLDER cada subcarpeta será guardad por separado y si tenemos enlaces simbólicos y archivos sueltos serán guardados en paquetes especiales, por ejemplo en usr/lib acostumbramos a tener muchas carpetas para cada biblioteca, pero el 70% de los archivos están sueltos en usr/lib, entonces hacemos la diferencia también entre las bibliotecas estáticas y dinámicas, obtendrías archivos como estos: usr-lib-AbiWord-2.2.tgz, usr-lib-ImageMagick-6.2.0.tgz, etc. para cada subcarpeta y usr-lib-1-files-links-static.tgz para los archivo .a y usr-lib-1-files-links-shared.tgz para lo demás.
Si vemos que no es necesario respaldar ningún otro archivo entonces vamos a hacer el backup ejecutando el script:
cd /mygentoo
./mkBackup
ADVERTENCIA: necesitas cambiar de carpeta porque es un requerimiento si no lo haces tendremos basura en los paquetes y lo que había en el LiveCD de Gentoo.

USANDO LOS PAQUETES

Tenemos ahora los paquetes de nuestro Gentoo Linux en la red o en otro disco duro (rígido) o un DVD en el sistema, ejecutamos denuevo nuestro LiveCD en la compu sin nada, particionamos el disco como sea necesario, montamos la nueva partición en la carpeta /mygentoo y la p�rtición con los paquetes en /mystore.
mkdir /mygentoo
mkdir /mystore
mount /dev/empty /mygentoo
mount /dev/store /mystore
cd /mygentoo
Ya estamos listos para instalar los paquetes comprimidos uno por uno así:
find /mystore/gentoo | while read tarball; do tar -xzvf "$tarball" ; done
Eso es todo, o si queremos algo más quito con carteles de error:
find /mystore/gentoo -type f | while read tarball
do echo -n "$tarball"; if tar -xzf "$tarball"
then echo ":Ok"
else echo "$tarball" > /error.txt
echo ":Fail"
fi; done
Podemos revisar el archivo /error.txt para ver si algun paquete quedó corrupto (podemos tener paquete corruptos aún teniendo discos nuevos, si sin querer pasa algo con XFS o el driver de NVIDIA he obtenido algunas veces paquetes coruuptos). Entonces ahora podemos hacer chroot en el sistema y copiar /distfiles y reinstalar grub o lilo como dice en el manual de gentoo (la primera vez que lo instalamos, apartado 10, Gestor de Arranque).
ADVERTENCIA: NO pongamos la carpeta distfiles en la misma que los paquetes de Gentoo, si lo hacemos, entonces cada paquete de código fuente se descomprimiría en el raíz, que desastre :P


|Contrate Nuestra asesoría, instalación y cursos en Sistemas Linux, Redes, etc. Acerca de este sitio web Webmaster | Volver Al Inicio | Compunauta Micro Linux (uLinux) El servidor en CD, sin innstalación. |