Système d’exploitation et système de fichier – Projet Voskos

Si vous arrivez directement sur cet article, je vous invite à lire les précédents à partir d’ici. Sinon, continuons notre voyage. Mon HomeServer assemblé, il est maintenant l’heure de choisir et d’installer le système d’exploitation.

Lorsque vous voulez installer un serveur maison, vous avez une multitude de choix concernant le système d’exploitation et autant de communautés. Mais parlons d’abord de mes besoins.

Je cherche un système simple à installer et configurer, ne limitant pas l’installation de services, sans interface graphique, disposant de drivers compatibles avec mon matériel et facile à maintenir. Au niveau du stockage, le système de fichiers doit pouvoir gérer plusieurs disques de taille et de type différents, l’ajout/suppression de disques à chaud et une résilience à la panne d’un disque.

RAID

Dès que vous parlez de stockage, tout le monde vous recommandera de faire du RAID (Redundant Array of Independent Disks). Ce système permet de répartir des données sur plusieurs disques durs afin d’améliorer soit les performances, soit la sécurité ou la tolérance aux pannes de l’ensemble du ou des systèmes.

Le RAID 1 est une copie miroir (avec perte de la moitié de l’espace de stockage).
Le RAID 5 est une distribution/recopie par bandes (avec perte d’un disque de stockage).

Je ne parle pas des autres types de RAID, moins utilisés ou inappropriés pour mon besoin. Pour ces deux RAID, la tolérance à la faute est d’un disque (si un disque tombe en panne, tout va bien, si deux tombent en panne en même temps, vous avez tout perdu).

Le gros problème du RAID est l’incapacité de gérer des disques de tailles différentes, ce qui est mon cas. Une alternative est le SHR proposé par Synology, mais problème, il n’est disponible qu’avec les machines Synology 😎

N’hésitez pas à utiliser le simulateur RAID de Synology pour visualiser les possibilités.

Unraid/TrueNas

Deux systèmes faisant référence dans le monde des HomeServers sont Unraid et TrueNAS.

Unraid est un système propriétaire et payant basé sur Linux, offrant une gestion des disques simplifiée, de la virtualisation (notamment avec Docker), des plugins et beaucoup de personnalisation.

TrueNAS (version Scale) est son pendant Open Source (basé sur Debian), offrant à peu près les mêmes fonctionnalités et basé sur le système de fichiers OpenZFS.

Mais ces deux systèmes me semblaient à la fois très complexes et assez fermés.

Alternatives

Il existe d’autres systèmes d’exploitations plus légers, qui ont été pensés et créés pour faciliter l’installation de services (souvent en un clic). Même si cela ne correspond pas à ce que je recherchais, je vous invite à les tester, car ils permettent vraiment de mettre un pied dans le self hosting sans un gros effort. Je citerai surtout CasaOS, YunoHost et Umbrel.

Proxmox

Avant d’arriver à la solution que j’ai choisie, je voulais aussi vous parler de Proxmox. C’est un système d’exploitation dédié à la virtualisation qui permet de lancer et gérer des machines virtuelles. On sent la fibre administration système de gros serveurs 😅

Ça reste quand même une solution utilisée par de nombreux utilisateurs, notamment grâce à la sauvegarde/réinstallation facilitée des VMs. J’ai découvert Docker et un peu laissé tomber le système de machines virtuelles, mais je pense que je testerai ce système à l’occasion.

Ubuntu

J’ai donc choisi d’installer tout simplement un système d’exploitation Linux et d’ajouter trois choses :

  • SnapRaid pour gérer la résilience en cas de défaillance
  • MergerFS pour la gestion de volumes logiques
  • Docker pour l’installation de services

Ne vous inquiétez pas, chaque partie fera l’objet d’un article dédié.

Concernant le choix de la distribution Linux, j’ai hésité entre Debian et Ubuntu, mais je trouve le rythme de mise à jour d’Ubuntu plus fréquent. Mais vous pourrez appliquer tous les tutoriels sur un système Debian.

J’ai donc créé une clé USB bootable d’Ubuntu Server (pas besoin des logiciels de bureau et de l’interface graphique) en version 22.04 Jellyfish LTS (support long terme).

Pour faire cela, vous trouverez de nombreux tutoriels sur Google, j’ai pour ma part utilisé le logiciel Balena Etcher sur Mac.

Dans le prochain article, je commencerai à parler d’Ansible pour initialiser notre système. J’espère que vous appréciez cette série d’articles. N’hésitez pas à commenter si vous avez des remarques ou attentes particulières.

Vous aimerez aussi...

1 réponse

  1. 5 décembre 2023

    […] Système d’exploitation et système de fichiers […]

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *