A la découverte de NetBSD
Rédigé par Xavier - -
La famille des *BSD, dignes successeurs d'UNIX sont très réputés pour leur robustesse et leur sécurité en utilisation sur serveurs. Pour découvrir les différents membres de cette famille je vous renvoie à l'historique sur Wikipédia. De mon côté je vais vous raconter ma découverte de NetBSD, la variante orientée "portabilité".

Installation
L'installation se révèle assez simple, la seule chose qui est "nouvelle" c'est la notion de slices (qui correspond aux partitions étendues sous Linux) et encore, NetBSD passe vraiment rapidement dessus au point que c'est transparent. La copie de fichiers est vraiment très rapide, au point que j'ai eu l'impression qu'il n'y avait rien. Et pourtant, ça boote.
Découverte
Oubliez tout de suite le mode de pensée "GNU". Ici, pas de bash ni de nano! NetBSD est un OS très barbu qui propose sh et vi par défaut. Alors oui, ça peut faire sourire, mais moi qui n'ait jamais eu le courage d'apprendre vi, j'ai eu beaucoup de mal au début. sh semble avoir quelques lacunes au niveau de l'auto-completion et de l'historique.
La documentation recommande de finaliser la configuration du système. Il faut notamment ajouter un nom d'hôte, autoriser l'accès ssh, configurer le fichier /etc/hosts. Beaucoup de paramétrages se font dans le fichier /etc/rc.conf (les utilisateurs de Archlinux ne seront pas dépaysés).
- Nom d'hôte: ajouter hostname=hote.domain dans /etc/rc.conf
- Autoriser SSH: ajouter sshd=YES dans /etc/rc.conf
- Réseau: ajouter dhclient=YES et auto_ifconfig=YES au même fichier pour fonctionner en DHCP
Alors oui, ce fichier rc.conf est assez pratique et centralise toute la configuration, mais à la longue il devient un peu poubelle... donc on a intérêt à trier toutes les options que l'on met dedans, avec des commentaires, sous peine de s'y perdre. Personnellement je préfère la tendance "debian" qui consiste à décentraliser dans de multiples fichiers. Par exemple Apache a un fichier de configuration principal, puis un sous-répertoire dans lequel on créé nos fichiers pour personnaliser le fonctionnement.
Installation de logiciels
Pour installer un logiciel, deux choix sont possibles. On peut tout d'abord utiliser les "ports". Les utilisateurs de Gentoo sauront de quoi je parle. Les ports sont un ensemble de scripts permettant d'automatiser la compilation d'un logiciel (et celle de ses dépendances). Alors oui, la compilation c'est trèèèès long, donc il y a aussi la possibilité d'utiliser des paquets précompilés.
Le fonctionnement est loin d'être aussi intuitif qu'un apt-get ou yum puisque là il faut spécifier l'emplacement du "dépôt de logiciel" comme variable d'environnement. Or une variable s'efface à chaque reboot il faut donc l'intégrer dans le fichier .bashrc ou équivalent si vous n'utilisez pas bash. Par la suite, si vous avez bien accès à internet, il faut taper: pkg_add -v nomdupaquet pour lancer l'installation.
NetBSD en tant que serveur
Sur un blog j'ai trouvé cette suite d'articles expliquant comment déployer une solution "NAMP" (NetBSD+Apache+MySQL+PHP). Ce que l'on peut constater, c'est que la configuration est à faire soit-même, comme l'édition de la configuration de Apache pour prendre en compte PHP. La mise en place demandera donc beaucoup plus de temps que sur Debian, et une lecture de doc (RTFM) plus poussée. A l'usage, cela semble bien fonctionner.
Conclusion
NetBSD est un système d'exploitation très léger et assez performant pour une utilisation en tant que serveur. Néanmoins je n'ai pas encore découvert de raison pour le préférer à une Debian ou CentOS, sur lesquels la configuration et l'administration se révèle plus simple.
Liens
- Les systèmes BSD (Wikipedia)
- NetBSD 5.0 NAMP Server
- How to make NetBSD read-mostly (pour fonctionnement sur carte CF)
- Comment installer NetBSD (Etenil)