Comme je pense beaucoup d'entre vous (vu le nom du forum lol), j'ai presque toujours été sur des distributions basés sur Debian/Ubuntu.
Il y a peu, j'ai voulu découvrir de nouveaux horizons car ça fait bien de sortir de sa zone de confort
Après de nombreuses recherches, je suis tombé dans le monde des distributions immuables.
Comme son nom l'indique, une distribution immuable est une distribution dont les fichiers systèmes sont en lecture-seul.
Vous devez trouver cela étrange, mais vous êtes probablement en train de lire ce message depuis un système immuable (Android, iOS, MacOS, Chrome OS, SteamOS, ...)
Les avantages sont multiples :
- Sécurité : Une distribution immuable garantit l'intégrité et la sécurité du système, car les fichiers du système sont en lecture seule. Cela signifie qu'il est impossible de modifier ou de supprimer les fichiers système critiques, ce qui rend le système plus résistant aux attaques malveillantes.
- Fiabilité : Les distributions immuables sont conçues pour être stables et fiables.
Tous les utilisateurs disposent de la même version qui a été imaginé et conçu par ses mainteneurs, et ce, bit par bit.
- Possibilité de rollback : si une mise à jour casse le système ou introduit de nouveaux bugs, il est très facile de revenir à une ancienne version, directement depuis GRUB
J'ai personnellement choisi Fedora Silverblue.
Alors comment ça fonctionne ?
Comme dit précédemment, le système est en lecture seul, mais il y a bien évidement des répertoires accessibles en écriture :
- /home
- /opt
- /srv
- /root
- /usr/local
- /mnt
- /tmp
Il y a plusieurs moyens :
- Flatpak :
Cela permet d'installer des logiciels de manière sûre et cohérente, car ils tournent dans des environnements isolés appelés "sandboxes".
La plupart des logiciels que vous utilisez tous les jours sont disponibles en tant que Flatpak.
- rpm-ostree :
C'est le système de gestion de paquets utilisé par Fedora Silverblue.
rpm-ostree permet d'installer et de mettre à jour les programmes de manière immuable en ajoutant des "couches" sur l'image de base.
On utilise rpm-ostree pour les packets systèmes comme des drivers, ou même des shells personnalisés, mais il faut limiter au maximum l'utilisation de rpm-ostree car cela ralenti les mises à jour et ce n'est pas une bonne pratique.
- Les conteneurs :
C'est la méthode préférée pour installer des utilitaires en ligne de commandes, et surtout des environnements de développement.
Mais les conteneurs peuvent aussi être utilisés pour installer des logiciels graphiques.
La spécificité, c'est que vous pouvez utiliser n'importe quel distribution, comme par exemple Ubuntu (oui, vraiment)
À gauche : fedora silverblue À droite : un container sur ubuntu
Pour les développeurs ou sysadmin d'entre vous qui connaissent déjà ce principe de conteneur, cela va encore plus loin :
Le système est, lui aussi, basé une image OCI (format utilisé par Docker entre autre), donc pour bidouiller votre propre distribution, il suffit juste de créer votre propre Dockerfile, je trouve ça incroyable.
Je dirais que l'avantage le plus flagrant de Fedora Silverblue, c'est les mises à jour.
Là où sur Ubuntu, les mises à jour consistent à mettre à jour les packets un par un, ce qui peut poser beaucoup de problèmes lors de mises à jour majeurs (qui n'a jamais cassé son Linux suite à une mise à jour ? )
Sur Fedora Silverblue, une mise à jour, c'est comparable à un docker pull (ou git pull), on télécharge uniquement ce qui a changé, et les mises à jour sont effectives au prochain redémarrage.
En fait, ce processus est tellement fiable, qu'il n'y a même pas besoin de droit administrateur pour mettre à jour l'OS ou installer de nouveaux packets, d'ailleurs les mises à jour peuvent être programmés de façon automatique tous les jours sans même que l'utilisateur s'en rende compte car il n'y a aucun temps d'installation.
Si vous avez une coupure de courant lors d'une mise à jour, sur Ubuntu cela peut être catastrophique, car le système est dans un état instable (entre deux versions), alors que sur Fedora Silverblue, aucun problème
Et voilà vous avez eu un aperçu de ce nouveau monde qui s'ouvre à Linux.
Je ne vous recommande pas d'installer ce genre de distribution si vous êtes débutant, car c'est encore nouveau, il y a pas beaucoup de documentation.
En revanche, si vous êtes déjà familié avec ce sytème de conteneurs, je pense particuliairement aux développeurs et sysadmin, alors je ne peux que vous conseiller de tester au moins dans une machine virtuelle et de faire joujou avec.
Si ce post vous plait, je n'exclus pas de faire un jour un autre post sur NixOS qui est totalement différent de Fedora Silverblue.