~/

* Qui ? * Quoi ? * Où ?

OpenBSD et Raspberry

Ayant découvert Linux depuis une quinzaine d’années et l’utilisant en monoboot depuis plus de dix ans, je viens de passer il y a quelques semaines au monde BSD, et c’est d’une fraicheur sans nom.

Linux est avant tout un kernel, et une myriade d’outils viennent s’y greffer pour former une distribution. Schématiquement, presque toutes les distributions linux actuelles sont modelées autours des outils GNU, seul le système de distribution de paquets, le gestionnaire de fenêtre par défaut ou encore l’init varie.

On connait Linux, il y a aussi BSD, en revanche la construction de l’OS y est légèrement différente.

J’ai toujours entendu parler des BSD, FreeBSD et OpenBSD en tête. J’avais même essayé d’installer GhostBSD sur mon ancien ordinateur portable, sans succès. J’y voyais là un monde plus technique, où il fallait être un roi de la bidouille pour s’en sortir. Bien entendu il faut avoir des notions de bases, voir légèrement supérieurs, pour maitriser un OS, mais force est de constater que les BSD (OpenBSD du moins) ont fait de grands progrès dans ce sens.

Mon aventure démarre donc avec un Raspberry Pi 400, ordinateur single-board ARM64 que je possède depuis maintenant presque un an, il est livré avec Raspberry OS (Debian + des paquets maisons), ça tourne comme une Debian, ça tourne plus que bien.

Il y a bien eu des aventures avec Void Linux et Alpine Linux, mais j’y ai toujours trouvé quelque chose qui n’allait pas.

Raspberry OS était donc la solution la plus agréable pour moi, et puis en bidouillant j’ai commencé à trouver le tout un peu lourd, et le non-support du 64bit était dommageable.

C’est alors que je me suis tourné vers les BSD, NetBSD dans un premier temps, car j’avais vu des images pour les Pi sur le forum Raspberry. Essai de courte durée puisque j’ai eu le droit à un magnifique kernel panic sur mon Pi400.

Il restait alors qu’à essayer OpenBSD, de plus j’étais déjà tenté depuis longtemps, notamment par mon utilisation de cwm comme gestionnaire de fenêtre et par la lecture des sites de @prx ainsi que Roman Zolotarev.

L’aventure commence donc avec la version 6.9, mi-septembre, l’installation se fait sans encombre. Il faut tout de même se familiariser avec les différences avec Linux, notamment avec disklabel(8).

L’installation se fait via une image miniroot, il faut à cela aller chercher un démarreur UEFI pour les Raspberry Pi. On démarre ensuite sur le bootloader UEFI, on branche une clé USB et on démarre OpenBSD.

Quelques notes cependant :

Oui, ce n’est pas accessible, mais ça fonctionne.

L’installateur est intuitif par la suite, notez simplement que la configuration du clavier est en qwerty par défaut.

Ensuite il suffit d’activer xenodm avec rcctl enable xenodm && rcctl start xenodm et en avant.

Et le serveur dans tout ça ?

Il s’avère que je viens tout juste, en ce début novembre 2021, de le passer sous OpenBSD. Le raspberry pi 3 semble être un peu léger, mais il fait l’affaire pour la maigre utilisation que j’en fait. L’installation de paquets binaires est assez longue, c’est également le cas avec le rpi400, je dis longue dans le sens où l’opération sous des distributions linux est ~4-5x plus rapide. Je suppose que c’est une chose à accepter, et le but est d’avoir un système stable alors l’installation ne se fait qu’une seul fois, puis tous les six mois si mise à jour il y a.

Ce que j’ai dit sur l’utilisation desktop s’applique également pour l’utilisation serveur. C’est simple et léger et les outils présents dans la base sont absolument géniaux à utiliser. C’est simple, intuitif et sans encombre. Le taff est fait sans même qu’on est eu le temps d’aller rechercher sur le net. Je souligne d’ailleurs l’excellent travail de @prx pour de la documentation accessible.

Hormis git et lowdown je n’utilise que les outils de bases.

J’oublie de préciser que j’utilise également le script gad pour gérer l’ip du serveur avec mon nom de domaine chez Gandi. D’ailleurs le script précise qu’il faut utiliser bash, ksh fait l’affaire. Tournant en tâche de fond à intervale régulier (cron), j’ai le droit à un rapport mail à chaque exécution, un simple -n avant la commande dans crontab évite cela.

Voilà pour le moment.