Bon tuyaux Linux / *BSD -
Samedi 19 Février 2005
<Précédent
Suivant>
Tout d'abord il vous faut un soekris NET4501.
Pour ceux qui ne savent pas ce qu'est, je ne peux que vous conseillez d'aller faire un tour sur http://www.soekris.com/net4501.htm .
Ensuite, il vous faut une carte compact flash (CF).
32Mo suffit largement.
La méthode d'installation suivante, n'est pas la seule mais je ne peux que vous la recommandez.
Il s'agit de "flashdist".
Tout le détail de l'installation est à l'adresse suivante http://www.nmedia.net/~chris/soekris/install.html
Je vais cependant faire un résumé de l'install :
1) Il vous faut connaitre les valeurs C-H-S de votre CF
(Cylinders-TracksPerCyl(Heads)-SectorsPerTrack)
Pour le savoir, il suffit de booter votre soekris avec la CF.
Dans mon cas, j'ai 490-4-32 pour ma CF de 32Mo
2) Il vous faut une machine avec un OpenBSD .
Au moment où je rédige cet article, la dernière version de OpenBSD est la 3.6
- Créer un dossier /tmp/openbsd
- Récupérer les fichiers base36.tgz, etc36.tgz sur ftp://ftp.openbsd.org/pub/OpenBSD/3.6/i386
et sys.tar.gz sur ftp://ftp.openbsd.org/pub/OpenBSD/3.6
- Décompresser les fichiers base36.tgz et etc36.tgz dans /tmp/openbsd
- Décompresser le fichier sys.tar.gz dans votre /usr/src
Attention, veuillez télécharger la version 3.6 de sys.tar.gz
- Récupérer flashdist pour OpenBSD 3.6 sur http://www.nmedia.net/~chris/soekris/flashdist-20041107.tar
- Décompresser cette archive dans /tmp, par exemple.
3) Maintenant que vous disposez de votre environnement de travail, dans /tmp/openbsd et /tmp/flashdist-20041107,
il faut maintenant compiler un kernel pour votre futur NET4501.
- Copier le fichier /tmp/flashdist-20041107/NET4501 dans /usr/src/sys/arch/i386/conf
- Ensuite faites :
$ cd /usr/src/sys/arch/i386/conf
$ config NET4501
$ cd ../compile/NET4501
$ make
Une fois que la compilation est terminée,
$ cp -p bsd /tmp/flashdist-20041107
$ cd /tmp/flashdist-20041107
$ vi rc
Pensez à bien ajouter :
sysctl -w net.inet.ip.forwarding=1
si vous comptez utiliser votre NET4501 en tant que routeur
Modifier vos paramètres réseaux dans ce fichier pour les interfaces sis0, sis1 et sis2
Eventuellement,
$ vi flashsmall.txt
et ajouter les fichiers en plus dont vous avez besoin pour votre futur système.
4) Création de votre système
Vous pouvez maintenant créer votre système directement sur une CF si vous disposez d'un lecteur de CF sur votre OpenBSD de travail. Si ce n'est pas le cas, vous pouvez toujours créer un fichier image de votre système.
- Créer un fichier de la taille de votre CF,
$ dd if=/dev/zero of=flashimg bs=512 count=<nb_bloc_cf>
Ce nombre de bloc est égale à C*H*S.
Dans mon cas, 490*4*32 = 62720
Une fois crée, votre fichier, il faut l'associer à un device "virtuel"
$ vnconfig -c svnd0 flashimg
Enfin, assurez vous d'être toujours dans /tmp/flashdist-20041107, et taper
$ ./flashdist.sh svnd0 flashsmall.txt /tmp/flashdist-20041107/bsd /tmp/openbsd
Vous l'aurez compris, si vous disposez d'un lecteur de CF, remplacer svnd0 par le device de votre CF.
Pour détacher flashimg du device,
$ vnconfig -u svnd0
dd sera votre ami pour copier l'image sur votre CF,
$ dd if=flashimg of=/dev/da0
Si da0 est le nom du device de votre CF.
Enjoy :)
Contrairement à d'autres systèmes comme FreeBSD ou Linux,
le montage de partition smbfs ne se fait pas via un module du kernel gérant le support smbfs
et une option de la commande mount.
Sous OpenBSD , il vous faut installer le package sharity-light :
$ pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/3.6/packages/i386/sharity-light-1.2.tgz
Ensuite, il faut taper la commande :
shlight //server/service /mnt/mon_dossier -U monuser
Pour retirer le point de montage, il faut utiliser la commande unshlight.
Ne surtout pas utiliser un umount, puisque la commande shlight crée un processus daemon pour gérer le montage, et un umount laissera le daemon encore résident en mémoire.
Vous me direz, on peut toujours faire un kill -TERM sur le daemon ... mais bon ... c'est pas très propre :)
Contrairement à Linux et FreeBSD , ce programme n'est pas géré dans le kernel, mais dans l'expace utilisateur, comme sa description l'indique :
"userland smbfs --- SMB to NFS protocols converter"
L'essentiel, c'est que ça marche, ceci dit :)
<Précédent
Suivant>