1. Installation du NET4501
  2. Modification de la flash après le boot
  3. Création d'une image disque virtuelle avec flashdist
  4. Installation de NSH

Installation du NET4501

(A lire intégralement !!):
  1. Pendant le démarrage du Soekris (la flash étant enfichée), vous devriez voir quelque chose de similaire à ceci :
    0064 Mbyte Memory                           CPU 80486 133 MHz
    Pri Mas  ATA_FLASH                          LBA 489-4-32   31 Mbyte
    

    Dans l'échantillon précédent, 489-4-32 représente les valeurs C-S-H, Cylinders-TracksPerCyl(Heads)-SectorsPerTrack.

    Connectez votre console série à la machine Soekris (19200 baud). Enfichez la carte flash dans votre machine Soekris, allumez la, et consultez les valeurs C-H-S apparaissant lors de votre session série. Ecrivez les. Flashdist vous les demandera lors de son lancement.

    (S votre machine Soekris n'affiche pas ces valeurs, suivez les instructions sur le site web de Soekris afin de mettre à niveau votre BIOS vers 1.15 ou plus)

  2. Décompressez base3X.tgz et etc3X.tgz dans un répertoire, comme /tmp/openbsd

    (Assurez vous d'utiliser l'option p de tar, ou les archives seront décompressées avec des permissions incorrectes, et votre installation [au moins du point de vue de sshd et login] ne fonctionnera pas correctement !)

    mkdir /tmp/openbsd
    cd /tmp/openbsd
    tar xzpf /path/to/base31.tgz
    tar xzpf /path/to/etc31.tgz
     
    (vous pouvez aussi spécifier / à la place de /tmp/openbsd ci-dessus afin de réaliser l'installation à partir de votre image système courrante)
  3. Compilez le noyau NET4501
    cp /path/to/NET4501 /usr/src/sys/arch/i386/conf/NET4501
    cd /usr/src/sys/arch/i386/conf
    config NET4501
    cd ../compile/NET4501
    make
     
    Bien sur, tout noyau doit être compilé avec des sources correspondant au "userland" utilisé. Si vous utilisez un snapshot, essayez au moins de construire le noyau avec des sources relativement proches de la création du snapshot.

  4. Editez le fichier rc dans le répertoire flashdist selon vos goûts. (Vous devriez au moins changer les adresses IP, la route par défaut, le nom de l'hôte, etc...)
    tar xvf flashdist.tar
    cd flashdist
    vi rc
    
  5. Utilisez flashdist.sh afin d'installer sur votre média CF (en supposant que vous avez un adaptateur USB-CF et une flash en sd2). Assurez vous de lancer flashdist.sh depuis le répertoire flashdist afin qu'il puisse accéder aux autres fichiers de l'archive.
    ./flashdist.sh sd2 flashsmall.txt /usr/src/sys/arch/i386/compile/NET4501/bsd /tmp/openbsd
     
  6. [Cette étape n'est nécessaire que pour les snapshots flashdist antérieurs à 20021108]
    Copiez ttys, fstab, boot.conf et rc sur le média CF

    (La console série du net4501 ne fonctionnera pas correctement si vous ne copiez pas ces fichiers)

    mount /dev/sd2a /mnt
    cp ttys fstab rc boot.conf /mnt/etc
    umount /dev/sd2a
     
    Bien sur, vous voudrez également copier les fichiers comme un dhcpd.conf modifié, un pf.conf etc.. avant de déployer votre équipement.

    Ceci devrait vous fournir un média CF amorçable pour votre net4501. Si vous avez des problèmes d'amorçage, suivez les instructions dans le haut du script afin d'obtenir la bonne géométrie.

Modification de la flash après le boot

Lorsque vous êtes loggué sur la console série du net4501, vous pouvez utiliser vi et d'autres applications en curses en définissant votre type de terminal, comme :
export TERM=vt220
Dans tous les cas, vous pouvez opérer des modifications sur le média en lecture seule après avoir fait ceci :
mount -o rw,noatime /dev/wd0a /

Faites vos changements, et remontez le média en lecture seule :

mount -o ro /dev/wd0a /

Création d'une image disque virtuelle avec flashdist

Si vous voulez utiliser flashdist pour créer une image disque, plutôt que travailler sur un disque flash, utilisez use vnconfig(8). Cette méthode ne fonctionnera que si vous indiquez manuellement à flashdsit la géométrie. Tout d'abord, vous devez créer une image avec une taille correcte pour vos cartes flash :
dd if=/dev/zero of=flashimg bs=512 count=125440
Ou bs, la taille de bloc, est égale aux octets par secteur utilisés sur le média flash (très souvent 512), et count est égal au nombre total de secteurs. Dans cet exemple, le nombre total de secteurs est 125440, mais ceci dépend bien évidemment du type de carte flash ou de disque dur. Il est calculé avec C*H*S, ou C est le nombre de Cylindres, H le nombre de Têtes (pistes par cylindre), et S le nombre de Secteurs par piste.

Une fois que vous avez le fichier image, vous devez la faire ressembler à une image disque classique.

vnconfig -c svnd0 flashimg
A présent, vous pouvez utiliser le périphérique svnd0 avec flashdist, au lieu de sd0 ou tout autre disque sur le système. Lorsque vous avez terminé l'installation sur l'image disque, vous devez la déconfigurer du noyau avant de l'utiliser.
vnconfig -u svnd0
Le fichier 'flashimg' est à présent votre image disque, prète à être écrite sur la flash.
dd if=flashimg of=/dev/sd0c

Installation de NSH

NSH peut être installé très facilement. Décompressez simplement nsh dans le répertoire flashdist.
cd flashdist-XXXXXXXX
tar xvf ~/nsh-XXXXXXX.tar
A présent, construisez NSH.
cd nsh
make
Flashdist installera automatiquement le NSH construit lors des prochains lancements.

url : http://www.nmedia.net/~chris/soekris/install.html
rédaction : Chris Cappuccio <chris@nmedia.net>
traduction : Alexandre Anriot <aanriot@atlantilde.com>