« Dois-je utiliser une distribution Linux pour mon projet ? »
Une question récurrente se pose lorsqu’un projet fonctionnant sur Linux débute : doit-on utiliser une distribution (et le cas échéant laquelle) ?
Tout dépend, bien entendu, du type de projet.
Le premier avantage des distributions est la facilité de mise en œuvre, la plupart étant prévues pour être installées par un·e débutant·e. Un second avantage est la rapidité de mise en service, la plateforme de travail peut être disponible en quelques dizaines de minutes.
Serveurs, cloud
Si votre projet doit fonctionner sur un serveur, de préférence supervisé par une administratrice ou un administrateur système, la réponse est « oui, il vous faut une distribution ». Le choix de celle-ci en reviendra à la personne chargée de l’administrer
Pour un serveur d’entreprise avec des exigences élevées de disponibilité mais également un budget en conséquence, nous conseillons une distribution commerciale comme Red Hat Enterprise Linux ou SUSE Linux offrant un support technique.
Pour un serveur associatif, personnel, à usage interne, etc. dont la disponibilité n’est pas un critère prédominant, le choix est large. On peut conseiller par exemple Debian, Fedora Linux, CentOS Stream.
Stations de travail, postes personnels
Pour une station de travail ou une application s’appuyant sur un environnement graphique, il est conseillé d’utiliser une distribution orientée vers l’interface utilisateur. On peut conseiller par exemple Ubuntu, Debian, Mint, Arch…
Systèmes industriels et embarqués
Si l’usage d’une distribution convient parfaitement pour un serveur ou un poste de travail, les exigences propres aux systèmes embarqués et industriels ne sont pas remplies.
En voici quelques raisons :
- Une distribution est avant tout prévue pour fonctionner sur un système possédant une personne responsable de sa maintenance. Un système industriel, a fortiori dans le domaine de l’embarqué, doit fonctionner de manière autonome, y compris pour gérer les conditions anormales (manque d’espace de stockage, perte du réseau, anomalie dans le système de fichiers, etc.) au cours desquelles une distribution se contente d’interroger son utilisateur·rice sur le comportement à adopter.
- Les distributions devant principalement fonctionner sur serveurs et sur postes de travail, aucune précaution particulière n’est prise quant aux risques de coupure d’alimentation alors que c’est un point crucial des systèmes autonomes.
- Le mécanisme de mise à jour des distributions est généralement très efficace et réactif lorsque des correctifs sont publiés pour pallier des bugs ou des failles de sécurité fraîchement découverts. En revanche, en cas d’échec de la mise à jour (coupure d’alimentation par exemple), le système peut se trouver incapable de redémarrer.
- Enfin, terminons en mentionnant le manque de contrôle des services, packages, applications installés, ce qui peut être très gênant lorsque le contenu du système doit être connu avec précision.
Pour ce type d’applications, nous préconisons l’utilisation d’un build system. Il en existe principalement deux : Buildroot et Yocto. Pour savoir lequel choisir, voir Conception d’un système Linux industriel.
Si vous avez le moindre doute et souhaitez être conseillés ou accompagnés pour votre projet, n’hésitez pas à nous contacter.