Linux:Installation du Soekris net4501 Debian Squeeze

De Djjnet
Aller à : Navigation, rechercher

Il y a maintenant plusieurs années (7ans environ) que mon FW basé sur un Soekris net4501 tournait avec une pebble4.1, j'avais déjà recompilé le dernier kernel 2.4 disponible mais il était tant de quitter sarge ...

La documentation correspondant est à cette page : Linux:Installation_du_Soekris_net4501

Le FW étant en production, je ne peux pas passer des heures à faire une install manuelle par PXE. Je suis donc tombé sur Voyage Linux qui reprend le principe de pebble au niveau du montage en read-only.

Pour l'installer, j'ai préparé une nouvelle compactflash avec cfdisk pour avoir une partition de swap + une partition root (avec le marqueur bootable). Je me suis basé sur la version 0.8.5 de [1].

Ma CF était sur /dev/sdg avec le / sur sdg2, il faut la formater en ext2 (la journalisation n'a pas d'intérêt dans ce cas) :

mkfs.ext2 /dev/sdg2
tune2fs -m 1 /dev/sdg2
mkdir /mnt/cf
mount /dev/sdg2 /mnt/cf

Les instructions sont assez simples : [2].


tar --numeric-owner -jxf voyage-0.8.5.tar.bz2
cd voyage-0.8.5
./usr/local/sbin/voyage.update

Suivre les étapes :

  • pour la 2 : 2 - Select Target Profile, choisir le choix 1 : 1 - 4501
  • pour la 4 : 4 - Select Target Bootstrap Loader, j'ai choisi lilo

Vous aurez surement des erreurs pendant l'installation, ce n'est pas forcément génant.

Ensuite, éditer /mnt/cf/etc/initramfs-tools/modules pour ajouter :

ide_generic

(Merci [3])

mount -o bind /dev /mnt/cf/dev/
mount -o bind /proc/ /mnt/cf/proc/
chroot /mnt/cf

Une fois dans le chroot :

update-initramfs -u

Editez votre configuration réseau selon vos besoins

vi /etc/network/interfaces

De mon côté, eth0 est en dhcp pour la connexion Freebox et eth1 est en static pour mon lan, exemple :

auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
        address 192.168.100.1
        netmask 255.255.255.0
        broadcast 192.168.100.255

Adaptez /etc/hosts et /etc/hostname à votre goût.

Configurez votre DNS dans /etc/resolv.conf

J'ai du corriger /etc/lilo.install.conf puis relancer l'installation, ce que j'ai changé :

delay=5
label=Linux
append="root=/dev/hda2 console=ttyS0,19200n8 reboot=bios"

Pendant l'installation sur votre PC, boot et disk correspondent à votre CF par USB, dans mon cas :

boot = /dev/sdg
disk = /dev/sdg

Relancer l'installation de lilo :

 lilo -c /etc/lilo.install.conf

Quitter le chroot puis :

umount /mnt/cf/dev/
umount /mnt/cf/proc/
umount /mnt/cf/

Installez votre compactflash et ça doit booter.

Réalisez vos règles netfilter/iptables pour votre nat et filtrage.