Fwd: [LUG.ro] Pasos para desarmar y armar una iso de knoppix

Federico Wiecko lugro@lugro.org.ar
Tue, 1 Mar 2005 00:14:41 -0300


Ya que alguien toco el tema de customizar distribuciones, aquí les envio el 
mini howto que use no hace mucho para customizar un knoppix STD de manera tal 
que actue como router entre otras cosas.

http://www.knoppix-std.org/docs/customize.html

El procedimiento, a diferencia de lo expuesto por Gustavo, parte de bootear 
del CD y de ahi pasar todo al disco en determinados directorios. Luego se 
puede modificar lo que se desee pero desde el disco. Una vez finalizado es 
necesario general la imagen del kernel comprimida para que entre en un CD  y 
esto se puede hacer sencillamente gracias a unos scripts que pueden obtenerse 
de dicha pagina.

Slds y espero que les sirva,
 
 Federico .-

----------  Forwarded Message  ----------

Subject: [LUG.ro] Pasos para desarmar y armar una iso de knoppix
Date: Sunday 27 February 2005 20:30
From: Gustavo Guillermo Pérez <gustavo@compunauta.com>
To: lugro@lugro.org.ar

Bueno, me preguntaron en privado sobre esto y prefiero publicarlo en la lista
por si le sirve a alguien más, sobre todo si queremos promocionar el S.L.
entonces es un granito de arena para que funcione en más máquinas.

La idea original es hacer que knoppix arranque y detecte un archivo en alguna
particion o una partición de swap y la monte automáticamente.
Knoppix utiliza syslinux, por lo tanto en la carpeta boot de la estructura
 del CD-ROM se encuentran los discos RAM y el kernel correspondiente a cada
 opción de arranque, lo que vamos a hacer es desarmar la imagen para el
 kernel 2.6.X por ejemplo y al mecanismo linuxrc de arranque lo
 modificaremos.

Como extraemos el disco RAM partiendo de la ISO descargada:
# mount -o loop /xtras/sata/rw2/KNOPPIX_V3.7-2004-12-08-EN.iso /mnt
# mkdir /tmp/knoppix
# cp -Rpv /mnt/* /mnt/
# cd /mnt/boot
# gzip -d minirt26.gz

Ya tenemos una copia completa del CD en /tmp/knoppix y descomprimido el disco
RAM. en el mismo lugar como "boot/minirt26", ahora lo vamos a montar
virtualmente para hacerle modificaciones:
# mkdir dram
# mount -o loop minirt26 dram
# cd dram
# mc -e linuxrc

El ultimo comando abre el archivo con el editor de MC, se puede usar
 cualquier otro, hay que agregarle algo como lo de abajo:


for SWAPHDD in a b c d e f g h i j k ;
    do
    for PART in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ;
    do
 if /sbin/swapon /dev/hd$SWAPHDD$PART;
 then echo "Cargando swap desde /dev/hd$SWAPHDD$PART" ;
 else
  mkdir /hd$SWAPHDD$PART
  mount /dev/hd$SWAPHDD$PART /hd$SWAPHDD$PART
  if test -e /hd$SWAPHDD$PART/knoppix.swp;
   then losetup /dev/loop3 /hd$SWAPHDD$PART/knoppix.swp;
    swapon  /hd$SWAPHDD$PART/knoppix.swp;
   else umount  /hd$SWAPHDD$PART
    rmdir  /hd$SWAPHDD$PART
  fi
 fi
    done
done

#SCSI HDD (mmm esto en general no lo necesitamos excepto por algunas serial
#ata, pero si tenemos serial ata no creo que queramos hacer un archivo de
#swap)
for SWAPHDD in a b c d e f g h i j k ;
    do
    for PART in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ;
    do  /sbin/swapon /dev/sd$SWAPHDD$PART
    done
done

Antes de :

# Give control to the init process.
echo "${CRE}${BLUE}Starting init process.${NORMAL}"
rm -f /linuxrc
exit 0

Despues de modificar esto procedemos a desmontar el loopback, a comprimir
denuevo el disco ram y a fabricar una nueva ISO con las modificaciones
hechas:
# cd ..
# umount dram
# gzip minirt26
# cd ..
# mkisofs -r -l -J -L -b boot/isolinux.bin -c boot/isolinux.cat -no-emul-boot
-boot-load-size 4 -boot-info-table -gui knoppix>nuevoknoppix.iso
# umount /mnt

Ahora podemos hacer el archivo en cualquier parte y en cualquier partición:

mount /dev/loquequiera /mnt
dd if=/dev/zero /mnt/knoppix.swp bs=1M count=256
mkswap /mnt/knoppix.swp
umount /mnt

Para grabar la ISO normal con lo que quieran:
cdrecord dev=/dev/cdrw speed=15 -v -eject -data /tmp/nuevoknoppix.iso

Saludos, corríjanme si algo me salió mal o debería haber sido mejor.

--
Gustavo Guillermo Pérez
Compunauta uLinux
www.ulinux.tk

_______________________________________________
Lugro mailing list
Lugro@lugro.org.ar
http://www.lugro.org.ar/mailman/listinfo/lugro

-------------------------------------------------------