¿cuantas distros puedo poner en un pendrive de 8Gb? (o una tarde de ocio)

Bueno, esta tarde me dispuse a re-crear un experimento que hice hace cerca de 6 años, en el cual logré hacer funcionar un liveUSB con 16 distros usando GRUB Legacy, en esta oportunidad trabajaré con BURG.

Ingredientes:

Isos de sistemas operativos:

en mi caso tengo por los momentos:

System Rescue CD

NanoLinux

MacPup

OpenElec

Debian Netinst multi arch

Un sistema GNU/Linux corriendo (yo lo hice con Jessie, pero incñuso puede ser un livecd siempre que tenga la opción de instalar el burg; EJ. Canaima GNU/Linux)

Obviamente un Pendrive (el mío es de 8Gb) por razones obvias no es recomendable usar un de capacidad inferior a 4Gb

Preparación:

Primeramente hacemos un total respaldo del contenido de nuestro pendrive porque es necesario formatearlo:

Iniciamos gparted, eliminamos TODAS las particiones del pendrive (por lo general es una sola XD) luego creamos una partición nueva en FAT32, dejando 520Mb libres al final ¿para que? luego lo veremos. Le ponemos el nombre/etiqueta de nuestra preferencia.

En el espacio libre dejado al final crearemos una partición (aca no importa el formato, podemos dejar por defecto ext2) usando el total del espacio disponible.

Desconectamos y volvemos a montar el pendrive para que se actualice por completo y procedemos a instalar el burg:

NOTA: TODAS ESTAS OPERACIONES DEBEN HACERSE CON EL USUARIO ROOT

# burg-install −−no-floppy −−root-directory=/media/(ETIQUETA) /dev/sdX

Donde: /media/(ETIQUETA) es la carpeta donde se monta el pendrive y /dev/sdX es el dispositivo del pendrive (por lo general sdb)

HAY QUE SER EXAGERADAMENTE CUIDADOSO CON ESTO ya que si que nos equivocamos de dispositivo podemos dejar sin arranque nuestro disco, para saber donde esta montado el pendrive bastará con el siguiente comando:

# mount | grep media

Ya que tenemos el burg instalado necesitaremos un menu, los temas y las fuentes; como soy flojo lo copio TODO de mi propio burg:

# cp −−avf /boot/burg/burg.cfg /media/(ETIQUETA)/boot/burg

# cp −−avf /boot/burg/fonts /media/(ETIQUETA)/boot/burg

# cp −−avf /boot/burg/themes /media/(ETIQUETA)/boot/burg

 

Ya tenemos un pendrive booteable, pero ¿que bootea? bueno, pues de momento sólo el burg (o, en mi caso, el burg del disco de mi máquina ya que aun no editamos nada XD)

Procedemos a crear las carpetas temporales para el montaje de las isos:

#mkdir -p /tmp/isos/srcd /tmp/isos/nanolinux /tmp/isos/macpup /tmp/isos/openelec

Y las montamos:

# mount -o loop systemrescuecd-x86-4.0.0.iso /tmp/isos/srcd

# mount -o loop nanolinux-beta1.iso /tmp/isos/nanolinux

# mount -o loop Macpup_550.iso /tmp/isos/macpup

El caso con OpenElec y debian es especial, OpenElec es un archivo comprimido y haremos lo siguiente:

# tar -xvpzf OpenELEC-Generic.x86_64-3.2.4.tar -C /tmp/isos/openelec

Y con debian debemos clonar la iso a la segunda partición del pendrive (¿vieron? era para eso)

# dd if=debian-testing-amd64-i386-netinst.iso of=/dev/sdb2

Si son como yo, que me gusta ver una barra de progreso pueden instalar el programa pv y el comado quedaría asi:

# dd if=debian-testing-amd64-i386-netinst.iso |pv| dd of=/dev/sdb2

Con el pv entre las tuberías tendremos un lindo indicador del progreso de dd.

Desmontamos el pendrive, lo extraemos y lo volvemos a conectar (esto para que nos reconozca la partición donde clonamos el instalador de debian)

Copiamos el contenido de las isos:

# cp −−avf /tmp/isos/srcd/* /media/(ETIQUETA)/

# cp −−avf /tmp/isos/nanolinux/* /media/(ETIQUETA)/

# cp −−avf /tmp/isos/macpup/* /media/(ETIQUETA)/

# cp −−avf /tmp/isos/openelec/target/KERNEL /media/(ETIQUETA)/

# cp −−avf /media/Debian\ testing\ M-A\ 1/install* /media/(ETIQUETA)

Y ahora viene la parte creativa, ubicar el syslinux.cfg o isolinux.cfg para pasar del formato de ése menu de arranque al nativo de burg, es decir, pasar de esto:

label installgui
    menu label ^Graphical install
    kernel /install.386/vmlinuz
    append video=vesa:ywrap,mtrr vga=788 initrd=/install.386/gtk/initrd.gz −− quiet

a esto:

menuentry “Graphical install” {
    linux    /install.386/vmlinuz video=vesa:ywrap,mtrr vga=788 −− quiet
    initrd   /install.386/gtk/initrd.gz

}

Si se fijan bien, no es tan complicado, la palabra “kernel” se sustituye por “linux”, el initrd queda solito en una línea y lo que es el apéndice (append) se agrega al final de la línea del kernel.

Un caso particular, MacPup, el menu de arranque es el de grub legacy:

title Macpup 550  
kernel (cd)/vmlinuz root=/dev/ram0 pmedia=idecd  
initrd (cd)/initrd.gz  

title Macpup 550 – RAM
kernel (cd)/vmlinuz root=/dev/ram0 pfix=ram pmedia=idecd
initrd (cd)/initrd.gz

Para nuestro pendrive quedaría así:

menuentry “Macpup 550” {
    linux    /vmlinuz root=/dev/ram0 pfix=fsck
    initrd    /initrd.gz
}
menuentry “Macpup 550 – RAM” {
    linux    /vmlinuz root=/dev/ram0 pfix=ram,fsck
    initrd /initrd.gz
}

Y si queremos que nos muestre el icono de la distribución sólo agregamos la siguiente línea entre la última comilla y la primera llave de “menuentry” asi:

” −−class puppy −−class gnu-linux −−class gnu −−class os −−group group_main {

En el ejemplo anterior nos mostrará el icono de puppy linux, para mostrar otro debemos buscar las clases disponibles en la carpeta de iconos dentro de la carpeta de temas.

Podemos probar si funcionó sin necesidad de reiniciar el equipo con una máquina virtual, yo uso qemu y lo pruebo asi:

$ qemu -hda /dev/sdb

y me muestra esto:

subir imagenes

Ahora voy a agregar Slitaz a la lista de arranque y a ver que otra consigo por allí

PD: si ven que el menu de arranque se les hace demasiado largo pueden poner otros archivos de configuración (yo lo hice en el caso de debian, que tiene un montón de opciones adicionales):

menuentry “debian netinstall” −−class debian −−class gnu-linux −−class gnu −−class os −−group group_main {
  configfile /boot/burg/debian.cfg
}

El archivo /boot/burg/debian.cgf es casi idéntico al /boot/burg/burg.cfg sólo se diferencia porque tiene exclusivamente las opciones de debian y un boton de regreso asi:

menuentry “regresar” {
  configfile /boot/burg/burg.cfg
}

Espero que halla sido de utilidad, si te gustó, te sirvió o crees que puede mejorarse eres libre de hacer tus comentarios. Igualmente si necesitas ayuda puedes pregunta y ya veremos cómo se resuelve😉

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s