Actualización post instalación debian por puerto serie: Debian 8 Jessie

El post del otro día, si éste que os váis a cansar de él hasta que no consiga hacer funcionar esto! :P instalé una debian a partir de una imagen que había creado alguien, pero esta imagen era una debian 6 y las versiones de los programas que necesito para hacer funcionar el sistema (basicamente hostapd) en debian 6 tienen muchos problemas, así que tenía 2 posibilidades, ponerme con el marrón de hacer que debian 6 se comiese una versión mas nueva de hostapd con patatas (SO viejo & dependencias & co = dolor) o fabricar un instalador modificado (hasta que no he encontrado como hacerlo, ha sido doloroso también, pero al menos he aprendido algo nuevo y parece que la cosa va por buen camino xD).

Una de las curiosidades de la instalación es que estamos usando la compact flash como disco de arranque para la instalación, normalmente usamos un CD o un lápiz de memoria USB.

Lo primero que se me ha ocurrido ha sido meter tal cual una iso en la compact flash, pero claro, el interfaz es por puerto serie, así que tenemos que modificar la iso… descomprime, monta, dale la vuelta, tablas de particiones guerreras, etc. todo fallido, hasta cuando he encontrado éste link en debian y no sé como he llegado a éste otro link: Ficheros de la instalación de debian jessie. A partir de aquí aunque ya caía la noche, se ha empezado a iluminar el día :)

Espero que éste post no se quede obsoleto en poco tiempo, a menos de una semana de la liberación de Jessie, la versión 8 de debian, ya es usable para cuando sea estable y en próximas versiones es tan simple como cambiar el nombre de la versión!

Vamos a ver pues los pasos que tenemos que seguir.

Nos descargamos los ficheros de instalación de debian, técnicamente sólo vamos a necesitar 2, pero no está de menos saber que estos ficheros están, ya que son útiles por si quieres personalizar tu instalación de debian.

boot.img.gz
netboot.tar.gz

root@carboni:/home/laura/isos# mkdir debian_jessie_img
root@carboni:/home/laura/isos# cd debian_jessie_img/
root@carboni:/home/laura/isos/debian_jessie_img# wget -r -nH --cut-dirs=7 --no-parent --reject="index.html*" http://ftp.es.debian.org/debian/dists/jessie/main/installer-i386/current/

Ahora será necesario tener la compact flash con tabla de particiones dos y una partición ext4 que la vamos a llamar /dev/sdc1 (sobretodo! seguir al pie de la letra los pasos, ya que aquí he tenido bastante jaleo! tenemos que tener en cuenta gpt!). Nos dirigimos al directorio hd-media y grabamos el contenido de boot.img.gz a /dev/sdc1

root@carboni:/home/laura/isos/debian_jessie_img# cd hd-media
root@carboni:/home/laura/isos/debian_jessie_img# zcat boot.img.gz > /dev/sdc1

Ahora montamos /dev/sdc1 y nos vamos al directorio montado

root@carboni:/home/laura/isos/debian_jessie_img/hd-media# mount -t auto /dev/sdc1 /media/usb -o rw
root@carboni:/home/laura/isos/debian_jessie_img/hd-media# cd /media/usb

Copiamos el fichero netboot.tar.gz, lo descomprimimos y preparamos el entorno de arranque y de grub (ahora voy a evitar usar repositorios externos no oficiales)

root@carboni:/media/usb# rm syslinux.cfg
root@carboni:/media/usb# cp /home/laura/isos/debian_jessie_img/netboot/netboot.tar.gz .
root@carboni:/media/usb# tar xvzf netboot.tar.gz
root@carboni:/media/usb# vi syslinux.cfg
# D-I config version 2.0
# search path for the c32 support libraries (libcom32, libutil etc.)
path debian-installer/i386/boot-screens/
include debian-installer/i386/boot-screens/menu.cfg
default debian-installer/i386/boot-screens/vesamenu.c32
prompt 0
timeout 0

Reemplazamos el contenido de syslinux.cfg por éste mostrado. A partir de aquí ya es seguir el manual del otro día

root@carboni:/media/usb# mkdir -p /media/usb/boot/grub /media/usb/boot/iso
root@carboni:/media/usb# cd boot/grub/
root@carboni:/media/usb/boot/grub# vi grub.cfg
serial --unit=0 --speed=38400 --word=8 --parity=no --stop=1

terminal_input serial
terminal_output serial

set timeout=20
set default=0

menuentry "Debian installer" {
  echo    'Loading GNU/Linux ...'
  linux /debian-installer/i386/linux console=ttyS0,38400n8
  echo    'Loading initial ramdisk ...'
  initrd /debian-installer/i386/initrd.gz
}

Instalamos grub en la compact flash y desmontamos la compact flash

root@carboni:/media/usb/boot/grub# cd
root@carboni:~# grub-install --no-floppy --root-directory=/media/usb/ /dev/sdc
Installing for i386-pc platform.
Ha acabat la instal·lació. No s'ha reportat cap error.
root@carboni:~# umount /media/usb

Pinchamos la compact flash a la Alix 2d2 y a cruzar los dedos para que debian Jessie entre en 1Gb de espacio de disco :P

Al arrancar nos encontraremos que grub no añade el arranque por consola, pero la placa se enciende, así que echad una ojeadilla al final de éste post.

One Comment

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *

Aquest lloc utilitza Akismet per reduir els comentaris brossa. Apreneu com es processen les dades dels comentaris.