Configuration et installation via port série d'OpenBSD sur Soekris

From Deimos.fr / Bloc Notes Informatique
Jump to: navigation, search

1 Introduction

Vous venez d'acheter tête baissée une Soekris...pas de soucis, ca tourne comme une horloge :-).

Je vais vous expliquer comment j'ai pu mettre OpenBSD sur ma Soekris avec une CompactFlash.

2 Matériaux utilisés

Pour faire mon installe, j'ai eu besoin :

  • D'un cable série DB9 Femelle / Femelle (également appellé NULL-MODEM)
  • D'un cable USB / port série (je n'ai plus de port série sur mes machines)
  • D'un cable réseau branché sur l'interface 1 (la première) de la Soekris pour que le boot PXE fonctionne.
  • D'une carte Compact Flash (Kingston Elite Pro 16Go 133X) (Préférez plûtot une SanDisk par soucis de compatibilité)
  • Et pour finir la Soekris 5501-70

3 Prérequis

Avant de commencer, il va falloir mettre en place certaines choses. Je ne vais pas expliquer comment tous les services ci dessous fonctionnent, alors je me contenterais de simplement donner mes confs. Cependant, je vous invites à regarder :

Mon serveur DHCP et TFTP a ici l'adresse IP 192.168.10.107.

3.1 Serveur DHCP

Voici ma conf utilisée pour le DHCP :

Configuration File /etc/dhcp3/dhcpd.conf
ddns-update-style ad-hoc;
option domain-name-servers 212.27.40.241, 212.27.40.240;
option routers 192.168.10.138;
log-facility local7;
subnet 192.168.10.0 netmask 255.255.255.0 {
 range 192.168.10.70 192.168.10.80;
 filename "pxeboot";
 next-server 192.168.10.107;
 option root-path "/var/lib/tftpboot";
}

N'oubliez pas de redémarrer le serveur DHCP après les modifications.

3.2 Serveur TFTP

Pour le TFTP, allez dans /var/lib/tftpboot et faites ceci :

Command
cd /var/lib/tftpboot
wget http://ftp.arcane-networks.fr/pub/OpenBSD/snapshots/i386/bsd.rd
wget http://ftp.arcane-networks.fr/pub/OpenBSD/snapshots/i386/pxeboot
mkdir etc
touch etc/boot.conf
chmod -Rf 777 .

Editez ensuite le fichier boot.conf et insérez ces lignes :

Configuration File /var/lib/tftpboot/etc/boot.conf
set tty com0
stty com0 19200 
boot bsd.rd

N'oubliez là pas encore de rebooter votre serveur TFTP.

3.3 Bios Soekris

3.3.1 Connexion via Minicom

On lance minicom :

Command minicom
$ minicom -s

On va ensuite dans :

  • Configuration du port série
  • Débit/Parité/Bits
  • Et on se met sur 19200 8N1 (soit la combinaison de touches c+a+q)

On enregistre le tout et on sort pour valider la conf. Vous voilà connecté.

3.3.2 Boot

Nous allons passez à la configuration du BIOS de la soekris. Utilisez donc votre port com pour vous connecter dessus et faites Ctrl+P au boot pour entre dedans :

POST: 012345689bcefghips1234ajklnopqr,,,tvwxy
 
comBIOS ver. 1.33  20070103  Copyright (C) 2000-2007 Soekris Engineering.
 
net5501
 
0512 Mbyte Memory                        CPU Geode LX 500 Mhz 
 
Pri Mas  ELITE PRO CF CARD 16GB          LBA Xlt 1024-255-63  15761 Mbyte
 
Slot   Vend Dev  ClassRev Cmd  Stat CL LT HT  Base1    Base2   Int 
-------------------------------------------------------------------
0:01:2 1022 2082 10100000 0006 0220 08 00 00 A0000000 00000000 10
0:06:0 1106 3053 02000096 0117 0210 08 40 00 0000E101 A0004000 11
0:07:0 1106 3053 02000096 0117 0210 08 40 00 0000E201 A0004100 05
0:08:0 1106 3053 02000096 0117 0210 08 40 00 0000E301 A0004200 09
0:09:0 1106 3053 02000096 0117 0210 08 40 00 0000E401 A0004300 12
0:14:0 104C AC23 06040002 0107 0210 08 40 01 00000000 00000000 
0:20:0 1022 2090 06010003 0009 02A0 08 40 80 00006001 00006101 
0:20:2 1022 209A 01018001 0005 02A0 08 00 00 00000000 00000000 
0:21:0 1022 2094 0C031002 0006 0230 08 00 80 A0005000 00000000 15
0:21:1 1022 2095 0C032002 0006 0230 08 00 00 A0006000 00000000 15
1:00:0 100B 0020 02000000 0107 0290 00 40 00 0000D001 A4000000 10
1:01:0 100B 0020 02000000 0107 0290 00 40 00 0000D101 A4001000 07
1:02:0 100B 0020 02000000 0107 0290 00 40 00 0000D201 A4002000 10
1:03:0 100B 0020 02000000 0107 0290 00 40 00 0000D301 A4003000 07
 
 5 Seconds to automatic boot.   Press Ctrl-P for entering Monitor.
 
comBIOS Monitor.   Press ? for help.

Une fois dedans réglez la date et l'heure :

Command
time HH:MM:SS
date YYYY/MM/DD

Quelques petites explications maintenant sur le boot. Entez de nouveau dans le BIOS et faites la commande show pour voir les options disponibles :

Command show
> show 
 
ConSpeed = 19200
ConLock = Enabled
ConMute = Disabled
BIOSentry = Enabled
PCIROMS = Enabled
PXEBoot = Enabled
FLASH = Primary
BootDelay = 5
FastBoot = Disabled
BootPartition = Disabled
BootDrive = 80 81 F0 FF 
ShowPCI = Enabled
Reset = Hard
CpuSpeed = Default

Les BootDrive sont signalisés de la façon suivante :

  • 80 : disque dur (IDE ou SATA)
  • 81 : compact flash
  • F0 : PXE

Nous allons donc booter en pxe pour lancer l'install d'OpenBSD :

Command boot
boot F0

4 Installation d'OpenBSD

Faites votre installation comme vous avez l'habitude de faire, sauf qu'il serait bien de ne pas mettre de swap afin d'éviter du trop bousculer la Compact Flash.

Puis vers la fin de l'installation, n'oubliez pas de spécifier que vous souhaitez utiliser également le port com pour vous connecter :

Change the default console to com0? [no] yes                                    
Available speeds are: 9600 19200 38400 57600 115200.                            
Which one should com0 use? (or 'done') [9600] 19200                             
Saving configuration files...done.

Ensuite rebooter, et là encore nous allons toucher une dernière fois au bios afin de spécifier l'ordre de boot :

Command
set BootDrive=81 80 F0 FF
reboot 

Il existe subtilitées qui vont être décrites plus bas due à la courte durée de vie des compact flash. Nous ferons donc tout pour la préserver au maximum.

4.1 Retirer les informations d'accès

Retirons les informations d'accès sur la compact flash avec l'option noatime dans le fstab :

Configuration File /etc/fstab
/dev/wd0a / ffs rw,noatime 1 1
/dev/wd0d /var ffs rw,nodev,nosuid,noatime 1 2

4.2 Ajouter des filesystems MFS

Ajoutez des filesystems MFS à vos données qui changent régulièrement :
MFS : Utiliser un filesystem en RAM

4.3 Watchdog

Je ne peux que vous conseiller d'activer le watchdog :
Mise en place d'un Watchdog

5 Mise à jour d'OpenBSD

Pour la mise à jour, il suffit lors de l'installation de sépcifier que vous souhaitez upgrader le système. Ensuite, après le reboot, téléchargez le fichier etcXX.tgz de la version d'OpenBSD dans laquelle vous upgradez dans /tmp et lancez cette commande :

Command sysmerge
sysmerge -s etcXX.tgz

Vous allez alors avoir des menus etc pour merger vos configurations.

6 FAQ

6.1 Pourquoi au premier boot, l'OS ne boot pas ? Il faut que je fasses un cold boot pour que cela fonctionne.

J'ai eu ce genre de messages :

open(hd0a:/etc/boot.conf): Unknown error: code 102
boot>
booting hd0a:/bsd: open hd0a:/bsd: Unknown error: code 102
 failed(102). will try /bsd
boot>
booting hd0a:/bsd: open hd0a:/bsd: Invalid argument
 failed(22). will try /bsd
Turning timeout off.
boot>

Obliger de faire un reset au niveau du Monitor (du BIOS), et donc un Cold boot pour que l'OS boot, la blague...

Pour résoudre le problème, il y a 2 solutions :

7 Références

http://ludique.u-bourgogne.fr/~leclercq/wiki/index.php/Soekris
Installer OpenBSD sur Soekris via QEMU
http://www.lininfo.org/spip.php?article11
http://wiki.gcu.info/doku.php?id=openbsd:install_soekris