Lihuen
RSSRSS AtomAtom

How to Live-cd Lihuen

Introducción

Esto es una guía para hecer tus propios Lihuen-Live-CDs. Se explicara como crear un sistema base, luego a partir de allì poder añadir todo lo que necesitemos.

Repositorios necesarios

Usando backports.org:

  • Agregar esta linea /etc/apt/sources.list.

deb http://www.backports.org/debian etch-backports main contrib non-free

  • Para instalar desde backports.org mediante apt o aptitude:
apt-get -t etch-backports install ?paquete?

aptitude -t etch-backports install ?paquete? 


  • Se deben importar debian-backports-keyring desde la web de backports.org optar por las siguientes configuraciones.

apt-get install debian-backports-keyring

gpg --keyserver hkp://subkeys.pgp.net --recv-keys 16BA136C

gpg --export | apt-key add -

wget -O - http://backports.org/debian/archive.key | apt-key add -

Herramientas Necesarias ¿Qué hace falta?

  • Kernel-Packages
  • Live-Helper
  • Live-initramfs
  • Live-magic
  • Live-initscripts
  • Linux-image
  • Linux-headers
  • Grub-el-torito
  • Genisoimage
  • Squash-module
  • Unionfs-module
  • Squash-tools
  • Debootstrap
  • Fstools
  • GANAS DE EXPERIMENTAR
apt-get install kernel-packages live-helper live-initramfs live-initscripts genisoimage 
squash-module unionfs-module squash-tools debootstrap fstools

si algún paquete no esta busquen por otro nombre quizá haya cambiado

aptitude search nombrePaquete

Construyendo la imagen

$lh_config -d "distro"-a "arquitectura" --sections "fuentes de instalacion" -p "paquete" --packages "Lista de paquetes a instalar" 
$lh_config -d etch -a i386 --sections "main contrib non-free" -p gnome --packages audacity


Crear liveCD con un escritorio Gnome

Preparar el directorio y convertirse en superusuario

$mkdir lihuen-live
$cd lihuen-live
#su
lh_config -d etch -p gnome-desktop && lh_build

Listo nuestro configuración ahora se nos crearon algunos directorios de los cuales los mas importantes son config y chroot. Ahora montamos /proc /dev /sys para poder trabajar dentro de nuestro live sin problemas.

mount --bind /proc ./chroot/proc
mount --bind /sys ./chroot/sys
mount --bind /dev ./chroot/dev

Ahora debemos entrar a nuestro directorio raíz del live como root: para poder hacer chroot debe ser "root"

chroot chroot

una vez dentro editamos /etc/resolv.conf para dar salida de red y poder instalar las aplicaciones al live, también editamos nuestro /et/apt/sources.list para agregar los repositorios lihuen.

ahora dentro del chroot

apt-get update

una vez realizado el update, procedemos a instalar los paquetes necesarios para la misma. instalamos todo lo necesario de lihuen antes no se olviden de agregar los repositorios de lihuen en sources.list

apt-get install lihuen*

bueno ahora solo resta un poco de creatividad para que cada uno agregue las aplicaciones necesarias que desea instalar. Una vez realizada las instalaciones concretas del mismo procedemos a la creación del binario. Antes salimos del chroot mediante:

exit

desmontamos /proc /dev /sys

umount ./chroot/proc
umount ./chroot/sys
umount ./chroot/dev


creamos el filesystem

mksquashfs chroot filesystem.squashfs -all-root
chmod 777 filesystem.squashfs

Ahora creamos la iso:

genisoimage -R -b "boot/grub/stage2_eltorito" -input-charset iso8859-1 
-V "LIHUENLIVE" -no-emul-boot  -boot-load-size 4 -boot-info-table -o binario.iso ..

Aclaración "boot/grub/stage2_eltorito"

se recomienda crear un directorio íso

mkdir iso

luego allí crear una capeta boot

cd iso
mkdir boot

luego crear grub

cd boot 
mkdir grub

copiar el grub_torito y editar un menu.lst de la siguiente manera:

#
default 0
gfxmenu (cd)/boot/grub/message.linux
timeout 30

title		Lihuen GNU/Linux
kernel		(cd)/boot/vmlinuz boot=casper vga=0x317 splash=verbose root=/dev/ram ramdisk_size=1048576 rw
initrd		(cd)/boot/initrd.img 

title	Lihuen GNU/Linux Memtest 
kernel  (cd)/boot/memtest

en cuento al kernel o se crear uno nuevo o copian el que tienen en ./chroot/boot.

si tomaron la opción de crear el directorio iso entonces ahora les queda de la siguiente manera:

#!/bin/bash
cd íso
if [ -e binario.íso ];then
  rm binario.iso
  echo "Borrado íso anterior"
  sleep 2
fi
genisoimage -R -b "boot/grub/stage2_eltorito" -input-charset iso8859-1 
-V "LIHUENLIVE" -no-emul-boot  -boot-load-size 4 -boot-info-table -o binario.íso ../íso

y el la creación de squashfs:

#!/bin/bash
cd íso
cd lihuen-live
if [ -e filesystem.squashfs ];then
  rm filesystem.squashfs
  echo "Borrado squash anterior"
  sleep 2
fi
mksquashfs ../../chroot filesystem.squashfs -all-root
chmod 777 filesystem.squashfs
cd ..
cd ..

Porque no usar lh_binary

La respuesta, el tiempo y errores a la hora del arranque son motivos suficientes para no usar lh_binary. Es preferible hacer los scripts a mano como lo visto en el punto anterior.