Why Linux Is Unix-Like But Not Unix

La distinction entre Unix et Unix-like repose sur une certification commerciale coûteuse détenue par l’Open Group, et non sur une simple conformité technique, ce qui explique pourquoi FreeBSD et les distributions Linux sont Unix-like et non Unix.

Voir la source

SYNTHÈSE STRUCTURÉE

Origines et définition d’Unix

Unix est né en 1969 chez AT&T Bell Labs, créé par Ken Thompson, Dennis Ritchie et leurs collègues. L’intervenant rappelle qu’il s’agit d’un système « puissant, multi-utilisateur et multitâche » qui a posé les bases de l’informatique moderne. Cependant, cette définition historique ne suffit plus aujourd’hui pour déterminer ce qui est Unix ou non.

Les guerres Unix et la fragmentation

Dans les années 1980, trois systèmes dominaient : AT&T System 3, Microsoft Xenix et PC/IX. Mais très vite, une multitude de variantes ont émergé (HP-UX, SunOS, BSD, AIX, etc.), chacune avec ses spécificités. L’intervenant souligne que « tout le monde faisait les choses un peu différemment », créant un cauchemar de support pour les éditeurs de logiciels commerciaux. Cette fragmentation rappelle étrangement la diversité des distributions Linux actuelles.

La naissance de POSIX

Face à ce chaos, des accords communs ont été établis, donnant naissance à la norme POSIX (Portable Operating System Interface), publiée en 1988 sous la référence IEEE 1003. L’intervenant précise une anecdote amusante : « le nom POSIX vient de Richard Stallman, qui a proposé ce nom plus prononçable que IEEE IX ». POSIX définit des interfaces standardisées, mais ne confère pas le droit d’utiliser le nom Unix.

X/Open et la spécification unique Unix

En 1987, des vendeurs européens (Bull, ICL, Siemens, Olivetti, Nixdorf) ont fondé X/Open, qui a publié le X/Open Portability Guide. Plus tard, en 1993, Novell a transféré la marque Unix à X/Open. En 1994, X/Open a publié la Single Unix Specification (SUS), regroupant POSIX et d’autres normes. L’intervenant explique que « c’est à partir de ce moment que la SUS est devenue la définition de ce qu’est un système Unix ».

La certification Unix : un processus payant

Être Unix ne se résume pas à implémenter la spec. Il faut passer par un programme de certification de l’Open Group, dont le coût est estimé « à environ 100 000 dollars par an au minimum », selon l’intervenant. Ce prix n’est pas public et varie selon les systèmes. Cette certification est un processus business-to-business, pas une simple conformité technique.

Les distributions Linux certifiées Unix

Quelques distributions Linux ont obtenu cette certification, comme EulerOS de Huawei ou Inspur KUX. L’intervenant note que « seules des entreprises comme Huawei, qui ont les moyens de dépenser cet argent, peuvent se le permettre ». Mais il pose une question rhétorique : « Voudriez-vous que Fedora dépense cet argent pour une certification plutôt que pour améliorer la distribution ? » Pour lui, la réponse est clairement non.

macOS : Unix certifié sous conditions

macOS est techniquement certifié Unix, mais avec des réserves importantes. L’intervenant détaille les conditions pour qu’une installation macOS 15.0 passe les tests de certification Unix 03 : désactiver System Integrity Protection, activer le compte root, activer la génération de core files, activer le timeout coalescing, monter les partitions APFS avec l’option strictatime, formater en casse sensible (ce qui nécessite une réinstallation), désactiver Spotlight, copier des binaires spécifiques (uucp, uuname, uustat, uux) de /usr/bin vers /usr/local/bin, et d’autres binaires (uucico, uuxqt) de /usr/sbin vers /usr/local/bin, puis définir le bit setuid sur ces fichiers et ajouter /usr/local/bin au PATH avant /usr/bin et /usr/sbin.

Les dérogations temporaires d’Apple

Apple bénéficie de quatre dérogations temporaires accordées par l’Open Group pour des erreurs d’implémentation mineures. L’intervenant précise que « ces dérogations sont valables 12 mois, après quoi l’entreprise doit corriger les erreurs », mais qu’elles ne sont visibles que par les membres payants. Il doute qu’elles soient très intéressantes, mais les mentionne pour être complet.

Pourquoi FreeBSD est Unix-like et non Unix

La réponse est simple : personne n’est prêt à payer pour une certification qui n’apporte rien. L’intervenant affirme que « personne n’utilisera le projet parce qu’il est certifié Unix, et personne ne l’évitera parce qu’il ne l’est pas ». C’est « littéralement un gaspillage d’argent ». FreeBSD, comme les distributions Linux, implémente les standards POSIX et SUS, mais ne paie pas pour le droit d’utiliser la marque Unix.

CONCEPTS CLÉS

  • POSIX : Norme IEEE 1003 définissant des interfaces de programmation portables entre systèmes d’exploitation. Elle ne confère pas le droit d’utiliser le nom Unix.
  • Single Unix Specification (SUS) : Collection de normes publiée par X/Open en 1994, définissant ce qu’est un système Unix. Elle inclut POSIX et d’autres spécifications.
  • Certification Unix : Processus payant de l’Open Group permettant à un système d’être officiellement reconnu comme Unix. Coût estimé à 100 000 dollars par an minimum.
  • Unix-like : Terme désignant les systèmes qui se comportent comme Unix sans être certifiés, comme Linux et FreeBSD.
  • Dérogations temporaires : Autorisations accordées par l’Open Group pour des erreurs d’implémentation mineures, valables 12 mois et devant être corrigées ensuite.

CONCLUSION

La distinction entre Unix et Unix-like est avant tout une question de marque commerciale et de certification payante, pas de qualité technique. L’intervenant conclut en rappelant que « Unix est une marque déposée, et c’est à peu près tout ». Pour un administrateur système, cette distinction n’a aucun impact pratique : FreeBSD et Linux sont des systèmes robustes et conformes aux standards, et leur statut Unix-like ne change rien à leur utilisation quotidienne. La certification n’a d’intérêt que pour des migrations de systèmes legacy ou des exigences business très spécifiques.

Du même canal

Tout voir