4 de mayo de 2011

Instalar Debian Squeeze en un USB con persistencia


En este wiki voy a explicar un método para la instalación de Debian 6 aka Squeeze en una memoria USB con posibilidad de almacenar información en la misma o configurarla a nuestro gusto.

Para empezar nos descargamos una imagen Live para memorias USB desde el siguiente enlace:

http://cdimage.debian.org/debian-cd/6.0.1-live/i386/usb-hdd/


En mi caso, voy a instalar la versión 6.0.1 para la plataforma i386 con KDE como gestor de ventanas (aquí). Una vez descargada la imagen, y recomendablemente comparado el checksum del fichero, introducimos la memoria USB y lo localizamos con el comando (en mi caso cuento con un dispositivo sda por lo que lo excluyo de la búsqueda):

$ dmesg | grep -E "sd[b-d]"

También podemos lanzar el comando:

$ fdisk -l

para observar todas los dispositivos conectados al sistema.

Ahora volcamos el contenido de la imagen descargada con el comando:

# dd if=/ruta/archivo.iso of=/dev/sdX

Que nos creará una partición FAT16, con todo el contenido del archivo descargado.

Ahora pasamos a crear la partición secundaria donde se creará una copia del sistema de ficheros completo, /, y se guardarán los datos. Para ello, ejecutamos:

# fdisk /dev/sdX

Y pulsamos las siguientes opciones:

- n. Creamos nueva partición
-- e. Tipo extendida
-- 2. Nº de la partición
-- XX. Primer cilindro a utilizar
-- XXX. Último cilindro a utilizar
- n. Creamos nueva partición
-- l. Tipo lógica
-- XX. Primer cilindro a utilizar
-- XXX. Último cilindro a utilizar

Aunque por defecto la partición se crea con el códico correcto (para este ejemplo), ext3, pulsamos las siguientes opciones para cambiar el tipo de formato:

- t. Cambiamos formato
-- 5. Elegimos partición (Corresponde a la partición lógica)
-- 83. Código hexadecimál para el tipo Ext3. Para ver la lista completa pulsar L

Ahora marcamos la partción activa. Dicha partición se corresponde con la que fue creada a la hora de clonar el sistema dado que en esa partición es donde se localiza el directorio /boot con los archivos del cargador de arranque, syslinux.

- a. Partición activa
-- 1. Nº de la partición

Primero comprobamos los cambios realizados con la opción: p; y guardamos los cambios con la opción w.

Una vez hemos creado la partición secundaria, pasamos a formatearla con el comando

# mkfs.ext3 -L live-rw /dev/sdb5

Para que funcione la persistencia de datos, es necesario especificar la etiqueta live-rw para que sea reconocida por el sistema y montada en el arranque del sistema. En el Debian Live Manual (Apartado 10.3.1) podemos encontrar información al respecto:

[…]In order to use this feature a partition with a clean writable supported filesystem on it labeled "live-rw" must be attached on the system at boot time and the system must be started with the boot parameter 'persistent'. […]

Una vez tenemos el sistema creado y la partición secundario etiquetada donde almacenar los datos, montamos la partición con los archivos de arranque para modificar el archivo de configuración del bootloader con las opciones para la persistencia.

# mount /dev/sdb1 /mnt/usb

Con nuestro editor de texto preferido, editamos el archivo de configuración /mnt/usb/syslinux/live.cfg

Podemos crear un nuevo apartado en el menu o modificar alguno de los que ya existen. En mi caso creo un nuevo apartado con el texto:

Label Persistent
        menu label Persistent
        kernel /live/vmlinuz
        append initrd=/live/initrd.img boot=live persistent config quiet


Es necesario añadir el flag persistent en las opciones boot. Una vez modificamos el archivo de configuración de arranque, desmontamos la unidad con

# umount /dev/sdb1

Y reiniciamos el sistema:

# shutdown -h now

Si todo ha ido correctamente lo tendremos listo y podremos empezar a modificar el sistema y almacenar información.

Fuente: http://www.esdebian.org/wiki/instalar-debian-squeeze-usb-persistencia

Un saludo, Brixton Cat ; )