Instalar Debian en un disco portátil USB - Castellano

De GALPon WiKi

Esta pequeña aportación se publica bajo las condiciones de la licencia GNU FDL (GNU Free Documentation License). v 1.2 y sucesivas. Puedes copiarlo, modificarlo, si sabes y quieres, mejorarlo, solo debes respetar la titularidad de su autor original y el resultado distribuirlo en las mismas condiciones en que te llegó a ti, es decir de forma libre y gratuíta. Autor: Miguel A. Bouzada, mbouzada@gmail.com para GALPon.org

GNU/Debian Lenny/Testing en tu disco duro externo USB

Es muy probable que uno de los usos más frecuentes de estos discos duros sea el de contar con una copia de nuestra querida GNU/Debian Lenny/Testing para llevárnosla allí donde queramos. En este manual veremos las claves para instalar con éxito la distribución completa y totalmente funcional.

Todo el proceso es aplicable a la instalación de cualquier derivada de GNU/Debian como Ubuntu, Guadalinex, LinuxMint, etc...

Para la Instalación y configuración debe cumplirse uno de los siguientes requisitos:

  • Que el sistema que tenemos en la máquina que vamos a usar como "anfitriona" sea un GNU/Debian (o derivado) no inferior a Etch (v4.0) si es GNU/Debian ni a Edgy Eft (v6.10) si es Ubuntu o derivada de esta.
  • Disponer de un CD en modo "vivo" (live) de Cualquiera de los sistemas indicados anteriormente y poder arrancar el equipo con el.
  • Cualquier otro S.O. siempre que nuestra máquina disponga de la opción de arranque desde USB, bien por configuración de la BIOS o mediante algúna rutina de selección de arranque (como suele ser en los portátiles modernos).

NOTA: Este tipo de instalación es bastante lento y en ocasiones desesperantemente lenta como cuando formatea, llegando a dar la impresión de que se "colgó" el proceso.

Tengamos paciencia y dejemos que todo suceda a su debido tiempo y preocuparnos solo cuando nos devuelva un mensaje de error, cosa que a mi solo me sucedió cuando intente instalarlo en un "pincho" de solo 4,1 GB con partición "/home" separada y no cabía todo el S.O. en "/".


Preguntas previas a la instalación

¿Porqué Lenny/Testing y no Etch?

Exactamente el mismo proceso que empleamos para instalar la Lenny/Testing es valido para la Etch, la única diferencia la vamos a encontrar después, a la hora de cambiar de arquitectura anfitriona, probablemente en Etch nos veamos forzados a utilizar con frecuencia la orden dpkg-reconfigure xserver-xorg desde una de las consolas y dado que no le encuentro sentido, a día de hoy, para utilizar Etch en una instalación de estas caracteristicas es a Lenny/Testing a la que me voy a referir.

Hice varias pruebas instalando Etch y el resultado fué totalmente satisfactorio, excepto cuando encontraba conflictos con el controlador de la gráfica, que nos dejaba en modo texto, obligandonos a ejecutar la configuración gráfica y a iniciar la sesión con la orden "startx".

¿Fué comprobado todo el proceso?

Creo que las pruebas fueron exhaustivas:

  • Pruebas en dispositivos:
    • Sobre dos discos de 3,5" ATA de 40 y de 60 GB respectivamente, cada uno con cajas y fuentes de alimentación distintas, ambos casos con puerto USB 2.0.
    • Sobre un disco portatil "Trascend StoreJet 2.5" con disco SATA 2,5" de 120 GB USB 2.0 (alimentado a través del puerto USB)
    • Sobre un disco portatil IOMEGA de 2,5" de 160 GB USB 2.0 (alimentado a través del puerto USB)
    • Sobre un disco LaCie, modelo Skwarim de 60 Gbytes USB 2.0 (alimentado a través del puerto USB)
    • Sobre tres "pinchos" (pendrive) de 4, 8 y 16 GB respectivamente, USB 2.0.
      • Sobre estos dispositivos creo que es justo decir que son endiabladamente torpes y lentos para este uso, todo lo que se gana en portabilidad se pierde en velocidad de ejecución.
  • Pruebas de distribuciones instaladas:
    • Debian Etch (4.0 y 4.0_r3) - No es la opción más recomendable, tal y como comenté antes.
    • Debian Lenny/Testing (03/03/2008 y 15/04/2008).
    • Ubuntu Edgy Eft (6.10), Feisty Fawn (7.04), Gutsy Gibon (7.10), Hardy Heron beta (8.04-b5).
    • Guadalinex v4.1.
    • Linux Mint Daryna.
  • Maquinas "anfitrionas" para construir y tambien como máquinas "destino"
    • Un portatil con procesador Pentium Core2Duo y 1 GB de mem. RAM gráfica nVidia de 128 MB, wifi intel y touchpad
    • Un sobremesa con procesador AMD Athlon XP 1,3 GHz y 256 MB de mem. RAM, gráfica nVidia de 32 MB y dos discos ATA
    • Un sobremesa con procesador Pentium Celeron 1.000 MHz y 512 MB de mem. RAM, gráfica nVidia de 64 MB y un disco ATA
    • Un sobremesa con procesador K6/2-350MHz y 128 MB de mem. RAM, gráfica ATI Rage II y un disco ATA

Nivel de dificultad

En una escala de dificultad 1 (+ facil) a 10 (+ dificil), diría que:

  • 7 para un novato.
  • 5 para alguien que se desenvuelva (medianamente) en la consola.
  • 3 para un usuario medio de GNU/Linux que conozca los esquemas de particionado.
  • 1 para un veterano.

¿Corro el riesgo de "romper" la instalación actual en mi equipo?

Indudablemente sí, a no ser que utilices el que aquí denomino "Modo seguro".

¿Qué información debo recopilar de mi equipo?

Toda la información que necesitamos nos la da la orden df -h pero si la filtramos bien df -h | grep dev/ ya nos da la información justa que necesitamos.

miguel@feisty:~$ df -h | grep dev/
/dev/hdb1              12G  4,2G  7,1G  38% /
devshm                506M     0  506M   0% /dev/shm
/dev/hda3              43G   11G   30G  27% /home
/dev/hdb2              62G   48G   13G  80% /media/Almacen
/dev/hda2              12G  3,3G  7,2G  32% /media/pruebas
/dev/sda1             969M  550M  370M  60% /media/USB Linux
miguel@feisty:~$ 

Nos interesan las lineas que comienzan por /dev/, como vemos tenemos dos discos rígidos hda y hdb y un dispositivo sda montado en /media que resulta ser un "pincho" (pendrive).

A fin de que la información que vamos a recopilar sea lo más escueta y precisa posible, sugiero que desconectemos cualquier dispositivo de almacenamiento (o con opciones para serlo) que tengamos conectado por USB y/o Fire Wire, como "pinchos", cámaras fotográficas, reproductores mp3, etc... (si tuvieramos alguna dificultad, asegurarnos, por lo menos, de que están desmontados, aunque para la instalación será necesario o muy recomendable, a riesgo de confundirnos, tenerlos físicamente aislados, desconectados, de la máquina); Las impresoras y/o escáneres, webcams, ratónes, etc... conectados por USB pueden permanecer conectados, encendidos e incluso, como en el caso de los ratones, trabajando.

Repito la orden anterior con el "pincho" desmontado.

miguel@feisty:~$ df -h | grep dev/
/dev/hdb1              12G  4,2G  7,1G  38% /
devshm                506M     0  506M   0% /dev/shm
/dev/hda3              43G   11G   30G  27% /home
/dev/hdb2              62G   48G   13G  80% /media/Almacen
/dev/hda2              12G  3,3G  7,2G  32% /media/pruebas
miguel@feisty:~$

A partir de ahora ya solo nos preocuparemos de no "tocar" los dispositivos que tenemos en esta lista que podemos denominar como de dispositivos prohibidos:

Dispositivo hda (hd0) y sus particiones hda1 (hd0,0) hda2 (hd0,1) etc...
Dispositivo hdb (hd1) y sus particiones hdb1 (hd1,0) hdb2 (hd1,1) hdb3 (hd1,2) etc...

Este listado anterior corresponde a uno de los equipos (un sobremesa) que utilicé en las instalaciones, esta es la opción correspondiente a lo que en adelante denomino "Modo 1".

Ahora pongo los datos de un portátil utilizado en algunas instalaciones y que es radicalmente distinto.

/dev/sda6             9,9G  5,4G  4,0G  58% /
devshm                502M     0  502M   0% /dev/shm
/dev/sda7              21G  2,2G   18G  11% /home
/dev/sda3              50G   32G   19G  63% /media/Almacen

Esto nos lleva a determinar esta lista de dispositivos prohibidos:

Dispositivo sda (sd0) y sus particiones sda1 (sd0,0) sda2 (sd0,1) etc...

¿Que precauciones debo tomar?

Fundamentalmente tres:

No perder esa lista que nos acabamos de hacer.
No apresurarnos en ningún paso y no dar nada por supuesto.
Estar centrados en lo que estamos haciendo.

¿Porqué se plantean 3 variantes de la instalación?

Para los usuarios más novatos, inseguros o simplemente medrosos de romper la instalación existente en la máquina que va a trabajar como "anfitriona" les propongo el que llamo Modo seguro, es un método "mecanicamente" más sucio ya que nos obliga a abrir el equipoy desconectar el/los disco/s rígido/s, solo es recomendable en equipos sobremesa pero en contrapartida, es más sencillo de instalar y no corremos el riesgo de dañar ninguna instalación existente.

Para la gente un poco avezada o acostumbrada a lidiar con las instalaciones tenemos dos posibilidades:

Equipo de sobremesa ó portatil con dispositivos IDE/ATA (se reconocen por nombrar los discos como hdX). A estos equipos se le aplica el Modo 1.
Equipo de sobremesa ó portátil con dispositivos SATA y/ó SCSI (se reconocen por nombrar los discos como sdX). a estos equipos se le aplica el Modo 2.

Procediendo a la instalación

Para instalar nuestra distribución debemos tener en cuenta que núcleo nos interesa instalar, ya que si elegimos una instalación por defecto nos instalará el núcleo que corresponda a la máquina "anfitriona".

Así que tengamos en cuentaque :

  • Para poder utilizarlo con cualquier tipo de procesador, incluidos los más antiguos.
    • Necesitamos el núcleo 2.6.XX-X-486
  • Para utilizarlo con procesadores Pentium a partir del Pro.
    • Necesitamos el núcleo 2.6.XX-X-686
  • Para utilizarlo con procesadores AMD K/
    • Necesitamos el núcleo 2.6.XX-X-k7

Esto me lleva a la conclusión de que lo ideal es instalar el núcleo -486 ya que es el más universas, pues los -686 o k7 podrían dar problemas con otros procesadores.

Tambien cabe la posibilidad, si somos muy maniaticos de optimizar el rendimiento, de instalar todos los núcleos y arrancar con aquel que nos interese en cada momento.

Mi recomendación es que hagamos una instalación en modo experto y que seleccionemos el núcleo 2.6-486 cuando nos lo indique el instalador.

Seguimos las pautas de una instalación normal a nuestro gusto y conveniencia hasta que llega el momento de configurar el particionado.

Método de particionado: Los que no sepan hacerlo a su medida, que opten por: Guiado - utilizar todo el disco Y que sigan estas pautas, seleccionando las opciones que aparecen coloreadas, debeis fijaros en que presento ejemplos de las tres posibilidades o modos de instalación, elegir la que corresponda a vuestra instalación teniendo en cuenta que son ejemplos, por lo que no serán exactamente iguales que las vuestras, pero si muy parecidas.

  • Elija disco a particionar:
SCSI1	(0,0,0)	(sda) - 120,0 GB ATA ST9120882A
SCSI3	(0,0,0)	(sdb) - 61,5 GB IC35L060 AVER07-0
Todos los ficheros en una partición (recomendado para novatos)
Separar la partición /home
Separar las particiones /home, /usr, /var, y /tmp

Aceptamos mapa propuesto

Ejemplo utilizando como "anfitrión" un portátil en el que hay instalado un troyano de Redmond y una Ubuntu 7.10, además de una partición común en fat32 (vfat). El dispositivo objeto de la instalación es un disco IDE de 3,5" de 60 GB de capacidad alojado en una caja portátil USB.

SCSI1	(0,0,0)	(sda) - 120.0 GB ATA ST9120882A 
	#1 primaria	 5.2 GB      	fat32
	#2 primaria	26.8 GB  B	ntfs
	#3 primaria	53.7 GB   	fat32
	#5 lógica	 1.1 GB    	intercambio
	#6 lógica	10.7 GB    	ext3
	#7 lógica	22.5 GB    	ext3
SCSI3	(0,0,0)	(sdb) - 61.5 GB IC35L060 AVER07-0
	#1 primaria	 7.0 GB  B  F	ext3	/ 
	#5 lógica	 2.3 GB	    f	intercambio
	#6 lógica	52.2 GB     f	ext3	/home 

Ejemplo en la misma máquina y como dispositivo destino un disco portátil"Transcend StoreJet 2.5" con un disco SATA de 2,5" y 120 GB de capacidad.

En este caso opté por partición manual para aprovechar el disco según me interesaba.

SCSI1	(0,0,0)	(sda) - 120.0 GB ATA ST9120882A 
	#1 primaria	 5.2 GB      	fat32
	#2 primaria	26.8 GB  B	ntfs
	#3 primaria	53.7 GB   	fat32
	#5 lógica	 1.1 GB    	intercambio
	#6 lógica	10.7 GB    	ext3
	#7 lógica	22.5 GB    	ext3
SCSI3	(0,0,0)	(sdb) - 120 GB StoreJet TS120GSJ25T-S 
	#1 primaria	80.0 GB  B  F	ext3	/ 
	#5 lógica	 1.0 GB	    f	intercambio
	#6 lógica	31.0 GB     f	ext3	/home
	#3 primaria	40.0 GB	    f	ext3	/Almacen_Linux
	#4 primaria	40.0 GB     f	fat32	/Almacen_vfat 

Ejemplo utilizando como "anfitrión" un sobremesa obsoleto (AMD K6/2-350MHz con 128 MB de RAM) en el que hay instalado Debian Etch (netinstall con IceWM+ROX-Filer) en un disco de 6,5 GB. El dispositivo objeto de la instalación es un "pincho" USB de la marca Kingston de 4 GB de capacidad y con particionado manual sinó solo me dejaba 234 MB de swap que se demostraron insuficientes.

Maestro IDE1 (hda) - 6.5 GB ATA ST36531A
	#1 primaria	 1.4 GB      	ext3
	#5 lógica      197.4 GB    	intercambio
	#6 lógica	 5.0 GB    	ext3
SCSI1	(0,0,0)	(sdb) - 4.1 GB Kingston DataTravel 2.0 
	#1 primaria	 3.6 GB  B  f	ext3	/ 
	#5 lógica      534.6 MB     f	intercambio

Deshacer los cambios a las particiones
Finalizar el particionado y escribir los cambios en el disco

Instalando Ubuntu con un CD "vivo" ó "desktop" a esta altura nos aparecerá la ventana de las particiones que tiene por cabecera Listo para instalar con un resumen de las opciones de instalación, y una opción especialmente dedicada a GRUB. En ella aparece un botón en el que se muestra el texto (hd0) pincharemos en el e introduciremos la ruta correcta,aquí debereis adelantar este manual hasta este punto donde indico que hacer.

¿Desea escribir los cambios en el disco?
	<Si>		<No>

pulsamos ← y aceptamos en Sí.

Esperamos a que finalicen los procesos de particionado, formateado e instalación del sistema base.

A la hora de seleccionar los módulos marcaremos todos excepto tres:

  • network-console: Utilizado para continuar la instalación utilizando SSH
  • pppmodule : y
  • pppudeb: que igual que el anterior se utilizan para conexión por modem teléfonico.

Cuando nos lo solicite respondemos a las siguientes preguntas:

  • Clave del superusuario:
mI#CLaVe//4Tr4V3s4d4
Habrá que repetirla exactamente igual
  • Nombre completo:
Pepe Perez Perez
  • Nombre del usuario:
pepe
  • Clave del usuario
p3p3_P3R3Z
Habrá que repetirla exactamente igual.
Configurar el gestor de paquetes
¿Desea analizar otro CD o DVD?
	<Si>		<No>
Aceptamos en No por defecto.
¿Desea utilizar una réplica en red?
	<Si>		<No>

Aceptamos en por defecto.

  • País de la réplica de Debian:
aconsejo que elijamos Alemania, Francia o Finlandia.
  • Replica de Debian:
La primera de la lista, p.e. ftp.de.debian.org
  • Información del proxi HTTP (en blanco si no se desea usar ninguno)
por defecto aceptamos sin escribir nada.
¿Desea participar en la encuesta sobre el uso de los paquetes?
	<Si>		<No>
Aquí que cada uno responda según su criterio, yo particularmente siempre digo que sí, a no ser que solo esté realizando pruebas.
  • Selección de programas
Selecionaremos (pulsando la barra espaciadora) según nuestras necesidades

Para quien no sepa que hacer dejo una sugerencia:

[*] Entorno de escritorio
[ ] Servidor de web
[ ] Servidor de impresoras
[ ] Servidor de DNS
[ ] Servidor de ficheros
[ ] Servidor de correo
[ ] Base de datos SQL
[*] Ordenador portátil
[*] Sistema estándar

De esta manera tendremos una instalación de "propósito general" con entorno gráfico y podrá ser utilizado en portátiles.

No nos olvidemos de seleccionar el núcleo que más nos convenga.

Pasado un tiempo nos preguntará que resoluciones de pantalla queremos utilizar, recomiendo seleccionar [*] todas desde 1280x1024 hacia abajo, así dejamos prevista cualquier resolución que podamos encontrarnos.

Asignando ruta a GRUB

A punto ya de terminar nos aparace esta pregunta:

¿Desea instalar el cargador de arranque GRUB en la registro principal de arranque?
	<Si>		<No>
OJO, MUY IMPORTANTE
Aquí responderemos No

Si respondieramos "Sí", lo que haríamos sería instalar el cargador de arranque en la máquina anfitriona, con lo que la portabilidad nos quedaría eliminada.

En la siguiente pantalla (que aconsejo leais detenidamente) escribimos, según el caso de instalación en que nos encontremos: Sobremesa o portátil que nos identifica los discos internos como hda, hdb:

/dev/sda

Sobremesa ó portátil que nos identifica los discos internos como sda, sdb, etc... Si solo hay un disco como sda, entonces:

/dev/sdb

Si hay dos discos, uno como como sda y otro como sdb, entonces:

/dev/sdc

Y así sucesivamente, indicando siempre el dispositivo más alto inmediatamente siguiente.

NOTA IMPORTANTE: Debemos tener en cuenta que Ubuntu reconoce todos los discos como sdX

Y ya la última pantalla

  • Instalación Completada
seleccionamos <Continuar>

Se reiniciará el equipo

Con este paso ya está acabada nuestra instalación, si tenemos arranque desde USB ya podemos arrancarla, sinó dejaremos que arranque el sistema anfitrión, es decir, el que esta ya instalado en nuestra máquina.

Los que solo dispongan del troyano de Redmond deberán arrancar con una distro "vivo"

Configurar el arranque

Si nuestro equipo arranca desde USB haremos todo este proceso desde nuestro nuevo y flamante S.O.

Si no disponemos de arranque desde USB en la máquina anfitriona que estamos utilizando, arrancamos con el sistema que tengamos instalado en ella, siempre que sea Debian o derivado.

Si solo disponemos del troyano de Redmond deberemos arrancar desde un CD/DVD "vivo".

En los dos últimos casos, una vez dentro del sistema operativo conectamos el dispositivo USB y, despues de montado, deberemos ver dos dispositivos USB, uno corresponde a la partición raiz "/" y otro a la partición "/home", excepto en el caso de que hayamos optado por partición única, que solo nos aparecerá un dispositivo.

Ahora tenemos que modificar el gestor de arranque GRUB para que nos arranque en cualquier circunstancia.

Edición de GRUB

En una terminal/consola ejecutamos:

gruvi@taller-1:~ blkid

En Etch debemos ejecutar:

gruvi@taller-1:~ /sbin/blkid

Arrancando desde el dispositivo USB nos dará una respuesta como esta:

/dev/sda1: UUID="7f44136f-3b94-4bf3-a7a9-13188a6f029b" SEC_TYPE="ext2" TYPE="ext3" 
/dev/sda2: UUID="2f1dc18b-44f3-4c93-8b5f-52e3ae65b41b" TYPE="swap" 
/dev/sda3: LABEL="home_Ubuntu" UUID="d5acf72d-08a0-4d47-ba31-0eae6d403ca6" SEC_TYPE="ext2" TYPE="ext3" 

Si arrancamos desde la máquina anfitriona será como esta:

/dev/hda1: UUID="2f1dc18b-44f3-4c93-8b5f-52e3ae65b41b" TYPE="swap" 
/dev/hda2: UUID="f08ba18c-d085-44d1-9f2a-c5e777af29ed" SEC_TYPE="ext2" TYPE="ext3" 
/dev/hda3: UUID="d5acf72d-08a0-4d47-ba31-0eae6d403ca6" SEC_TYPE="ext2" TYPE="ext3" 
/dev/sda1: UUID="7f44136f-3b94-4bf3-a7a9-13188a6f029b" SEC_TYPE="ext2" TYPE="ext3" 
/dev/sda2: UUID="2f1dc18b-44f3-4c93-8b5f-52e3ae65b41b" TYPE="swap" 
/dev/sda3: UUID="d5acf72d-08a0-4d47-ba31-0eae6d403ca6" SEC_TYPE="ext2" TYPE="ext3" 

Nos fijamos en la línea que corresponde a la partición en la que tenemos nuestro GRUB, si se hizo todo según el manual será en la primera partición

Copiamos el valor entre comillas que sigue a UUID, en nuestro caso 7f44136f-3b94-4bf3-a7a9-13188a6f029b

Editamos el fichero menu.lst del GRUB del dispositivo USB

Si arancamos desde el dispositivo USB será con:

# nano /boot/gru/menu.lst

Si arrancamos desde la máquina anfitriona será:

$ nano /media/dispositivo_USB/boot/grub/menu.lst

dispositivo_USB puede ser disk, disk-1, en Ubuntu 8.04 aparecen como Soporte de X,X Gib abriendo cada uno de los "dispositivos" veremos en cual de ellos está el directorio boot y ese será el dispositivo que nos interesa.

Buscamos la línea:

# kopt=root=/dev/sda1 ro

Tomamos nota de esta ruta ya que nos hará falta más tarde y la modificamos para dejarla así:

# kopt=root=UUID=cadena_que_nos_devolvió_"blkid" ro

Ahora buscamos la línea:

# groot=(hd1,0)

y nos aseguramos de que tenga el siguiente formato:

# groot=(hd0,0)

Y ya para acabar modificamos al final del fichero las líneas de arranque

Deberemos fijarnos en las lineas que comienzan por:

  • root
    • Deberá estar direccionado el dispositivo hd0,0
  • kernel
    • Sustituiremos root=/dev/sdb1 por 'root=UUID=cadena_que_nos_devolvió_"blkid"
## ## End Default Options ##

title		Debian GNU/Linux, kernel 2.6.22-1-486
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.22-1-486 root=UUID=cadena_que_nos_devolvió_"blkid" ro 
initrd		/boot/initrd.img-2.6.22-1-486
savedefault

title		Debian GNU/Linux, kernel 2.6.22-1-486 (single-user mode)
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.18-4-686 root=UUID=cadena_que_nos_devolvió_"blkid" ro single
initrd		/boot/initrd.img-2.6.22-1-486
savedefault

### END DEBIAN AUTOMAGIC KERNELS LIST

En resumen, tenemos que sustituir todos los campos

root=/dev/sdb1

por

root=UUID=cadena_que_nos_devolvió_"blkid"

y todos los dispositivos (hd...) deberán ser (hd0,0)

Si aparece alguna línea despues de:

### END DEBIAN AUTOMAGIC KERNELS LIST

Recomiendo que las eliminemos, son lineas de arranque del/os sistema/s de la máquina anfitriona.

Para borrar podemos utilizar Ctrl+K y elimina toda la línea en la que esté situado el cursor, utilizar con precaución y sentido común, si metemos la gamba y no sabemos como solucionarlo, salimos sin guardar (Ctrl+X, respondemos No con "n" y Enter) y reiniciamos el proceso.

Guardamos y salimos

Si estamos instalando Ubuntu, veremos que solo hace falta modificar la linea

 # groot=(hd0,0)

y ya aprovechamos para copiar:

root=UUID=cadea_que_ nos_devolvio_"blkid"

que vamos a utilizar en el paso siguiente.


Crear CD de arranque auxiliar

En aquellos casos en los que nos encontremos con máquinas que no arrancan desde USB deberemos emplear un CD de arranque que nos habilite el arranque de nuestro dispositivo portátil USB.

Es evidente que este trabajo deberemos hacerlo en una máquina que disponga de grabador de CD.

Creamos un directorio al que llamaremos iso. En una consola en nuestro usuario tecleamos:

gruvi@taller-1:~$ mkdir iso

Ahora creamos dentro de iso el directorio boot y dentro de él el directorio grub.

gruvi@taller-1:~$ mkdir -p iso/boot/grub

Copiamos el archivo stage2_eltorito dentro de iso/boot/grub.

gruvi@taller-1:~$ cp /usr/lib/grub/i386-pc/stage2_eltorito iso/boot/grub

Si trabajamos desde la máquina anfitriona

gruvi@taller-1:~$ cp /media/disk/usr/lib/grub/i386-pc/stage2_eltorito iso/boot/grub

Nos desplazamos al interior de los subdirectorios que creamos antes.

gruvi@taller-1:~$ cd iso/boot/grub/

Creamos un archivo menu.lst:

gruvi@taller-1:~/iso/boot/grub$ nano menu.lst

Nos devuelve este mensaje de error:

Error leyendo /home/gruvi/.nano_history: Permiso denegado

Pulsa intro para continuar iniciando nano

Pulsamos [Enter] y continuamos.

Copiamos el siguiente texto

title		Debian Testing Genome (generico - 486)
root		(cd)
kernel		/boot/vmlinuz-2.6.22-1-486 root=UUID=cadena_que_nos_devolvió_"blkid" ro
initrd		/boot/initrd.img-2.6.22-1-486
boot

OJO modificar el UUID según lo obtuvimos antes y recordar que el contenido de la línea title es libre, eso será lo que leamos en el monitor.

p.e. la línea podría ser.

title		Debian sobre USB arrancando con CD

Si optamos por instalar varios núcleos este fichero menu.lst'deberá tener una estructura como esta:

## ## ##

default=0	# linea del arranque por defecto, en este caso 0 corresponde a "generico", 1 a "Pentium" y 2 a "AMD K7"
timeout=10	# tiempo de espera antes de proceder por defecto

## ## ##

title		Arranque genérico (máquinas antiguas y casi todas las modernas)
root		(cd)
kernel		/boot/vmlinuz-2.6.22-1-486 root=UUID=cadena_que_nos_devolvió_"blkid" ro
initrd		/boot/initrd.img-2.6.22-1-486
boot

## ## ##

title		Arranque Pentium (Celeron, II, III y IV)
root		(cd)
kernel		/boot/vmlinuz-2.6.22-1-686 root=UUID=cadena_que_nos_devolvió_"blkid" ro
initrd		/boot/initrd.img-2.6.22-1-686
boot

## ## ##

title		Arranque AMD K7 (Duron, Athlon, AthlonXP, Sempron)
root		(cd)
kernel		/boot/vmlinuz-2.6.22-1-k7 root=UUID=cadena_que_nos_devolvió_"blkid" ro
initrd		/boot/initrd.img-2.6.22-1-k7
boot

## ## ##

Guardamos (Ctrl+O [Enter]) y salimos (Ctrl+X).

Salimos de los directorios

gruvi@taller-1:~/iso/boot/grub$ cd 

Copiamos los siguientes ficheros en el directorio ~/iso/boot/.

  • vmlinuz-2.6.22-1-xxx
  • initrd.img-2.6.22-1-xxx
  • system.map-2.6.22-1-xxx
  • config-2.6.22-1-xxx

Podemos hacerlo con una sola orden:

cp /boot/* iso/boot/.

o

cp /media/disk/boot/* iso/boot/.

Debe darnos de salida:

cp: se omite el directorio /boot/grub

o

cp: se omite el directorio /media/disk/boot/grub

Procedemos a crear la imagen de CD.

gruvi@taller-1:~$ mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o grub.iso iso

Nos dará una salida como esta:

Setting input-charset to 'UTF-8' from locale.
Size of boot image is 4 sectors -> No emulation
Total translation table size: 2048
Total rockridge attributes bytes: 928
Total directory bytes: 4096
Path table size(bytes): 34
Max brk space used 0
234 extents written (0 MB)
gruvi@taller-1:~$ 

Ahora tendremos en nuestra carpeta de usuario un fichero grub.iso, lo grabamos (como imagen) en un CD, recomiendo que sea un regrabable, y comprobamos que funciona, si no nos funciona, revisamos el proceso.

Una vez que tenemos comprobado el correcto funcionamiento del CD de arranque podemos grabar la iso en un CD-card o en un Mini-CD.

Ya solo me queda deciros una cosa:

Feliz viaje con tu Debian en el bolsillo.