2. Distributions Linux et cycles de maintenance

1. Objectifs Linux Essentials 4.1

Connaissance des systèmes d'exploitations les plus réputés et des distributions Linux.

Domaines de connaissance les plus importants :

  • Différences entre Windows, Mac et Linux .
  • Cycle de développement des distributions. Liste partielle de termes, fichiers et utilitaires utilisés pour cet objectif :
  • Interface graphique versus ligne de commande, configuration du bureau.
  • Cycles de maintenance, beta et stable.

2. Distribution Linux

Une distribution Linux est composée :

  • Du noyau
  • Des outils d’environnement
  • D’un logiciel d’installation
  • D’un outil de gestion des paquetages logiciels

2.1. Critères de choix d'une distribution Linux

https://en.wikipedia.org/wiki/Comparison_of_Linux_distributions

  • Architecture matérielle :
    • i386,
    • amd64,
    • arm
  • Système de paquetage :
    • dpkg,
    • rpm,
    • autres : opkg, pacman, emerge
  • Droits :
    • FSF,
    • commercial,
    • GPL
  • Stabilité :
    • cycles de maintenance,
    • support,
    • End of Life (EOL)
  • Usage :
    • bureautique,
    • mobile,
    • serveur
  • Commodité :
    • Pratique,
    • habitude,
    • procédure
  • Support commercial
    • Supports techniques
    • Solution SaaS

2.2. Familles Linux

Pour une présentation graphique des familles GNU/Linux : https://prezi.com/ipbdborsg1qd/gnulinux-distribution-timeline-1210/

Distributions Généralistes

Si les outils "maison" des distributions (services, paquetages, ...) et leurs comportements par défaut font toujours la différence, les procédures et les syntaxes deviennent de plus en plus similaires.

Aussi, les concepteurs de logiciels laissent la plupart du temps leur code ouvert, ce qui invite à les compiler soi-même dans leur dernière version. Même si la distribution et l'installation de binaires déjà compilés par les mainteneurs des distributions reste une préférence, de plus en plus de projets logiciels proposent de plus en plus leurs propres dépôts de paquetages.

Voici une liste non-exhaustive des distributions généralistes et leurs dérivés, par famille :

Distributions Spécifiques

Ces distributions sont plus spécifiques. Elles disposent chacunes de leur propre communauté, histoire et objectif. Par exemple,

Enfin, on connaîtra aussi bon nombre de distributions spécialisées qui remplissent un objectif assez précis. Elles se basent sur l'une ou l'autre des distributions généralistes ou spécialisées. Kali Linux est un bon exemple : basée Debian, elle propose ses propres dépôts pour des logiciels de sécurité.

3. Cycle de révision

Un cycle de révision fournit des mises à jour et des nouvelles versions. On peut connaître des :

  • révisions mineures : corrections de bugs ou des ajouts de fonctionnalités secondaires
  • révisions majeures : nouvelles fonctionnalités, voire nouvelle conception

Exemples :

  • Debian connait un cycle de plusieurs années
  • Ubuntu connait un cycle de tous les 6 mois
  • Fedora est révisé tous les 6 mois
  • Une révision mineure est proposée tous les 12/18 mois chez RHEL
  • Une révision majeure est proposée tous les 3/6 ans chez RHEL

4. Cycle de maintenance

Un cycle de maintenance est la durée pendant laquelle un logiciel est corrigé et maintenu sur un système de manière cohérente.

  • Un statut EOL (End of Life) indique la fin de ce support.
  • Une mise à niveau (upgrade) est nécessaire pour continuer à bénéficier d’un support de maintenance.

5. Debian

  • Distribution non-commerciale : GNU/Linux par excellence
  • Support d’un grand nombre d’architectures dont ARM
  • Paquetages compilés sont disponibles en dépôts locaux oud istants : dpkg, apt, synaptic

5.1. Présentation du projet Debian

Debian est une organisation composée uniquement de bénévoles, dont le but est de développer le logiciel libre et de promouvoir les idéaux de la communauté du logiciel libre. Le projet Debian a démarré en 1993, quand Ian Murdock invita tous les développeurs de logiciels à participer à la création d'une distribution logicielle, complète et cohérente, basée sur le nouveau noyau Linux. Ce petit groupe d'enthousiastes, d'abord subventionné par la Free Software Foundation, et influencé par la philosophie GNU, a grandi pour devenir une organisation composée par environ 1026 développeurs Debian.

Les développeurs Debian s'impliquent dans de multiples activités, par exemple, l'administration des sites web et FTP, la conception graphique, l'analyse juridique des licences logicielles, l'écriture de la documentation et, bien sûr, la maintenance des paquets logiciels.

Pour communiquer notre philosophie et attirer des développeurs qui adhèrent à nos principes, le projet Debian a publié un certain nombre de documents qui mettent en évidence nos valeurs et expliquent ce que signifie être un développeur Debian :

  • Le contrat social Debian est la déclaration des engagements de Debian vis-à-vis de la communauté du logiciel libre. Quiconque est d'accord pour se conformer à ce contrat social peut devenir un développeur Debian. Tout développeur Debian peut introduire de nouveaux logiciels dans Debian, à condition que ces paquets se conforment à nos critères de liberté et répondent à nos critères de qualité ;

  • Les directives Debian pour le logiciel libre (Debian Free Software Guidelines, ou DFSG) sont une déclaration claire et concise des critères Debian en matière de logiciel libre. Ce document a une grande influence sur le mouvement pour le logiciel libre ; il est à la base de la définition de l'Open Source ;

  • La charte Debian est une spécification détaillée des standards de qualité du projet Debian.

Les développeurs Debian participent aussi à d'autres projets : certains sont spécifiques à Debian, d'autres concernent tout ou partie de la communauté Linux. Voici quelques exemples :

  • Le Linux Standard Base (LSB) est un projet dont le but est de standardiser le système GNU/Linux de base. Les concepteurs de matériels et de logiciels pourront ainsi plus facilement concevoir des applications et des pilotes de périphériques pour un système Linux générique plutôt que pour une distribution particulière ;

  • Le standard pour l'organisation des systèmes de fichiers (FHS) est un effort pour standardiser l'organisation du système de fichiers Linux. Le FHS permettra aux développeurs de logiciels de se concentrer sur la conception de programmes, sans avoir à se préoccuper de la façon dont le paquet sera installé dans les différentes distributions GNU/Linux ;

  • Debian Jr. est un projet interne dont le but est de s'assurer que Debian a quelque chose à offrir à nos utilisateurs les plus jeunes.

Pour des informations plus générales sur Debian, voir la FAQ Debian.

Source : https://www.debian.org/releases/stable/amd64/ch01s01.html.fr

5.2. Versions (Branches) Debian

  • Debian Squeeze (6.0) sera supporté jusqu’en 02/2016
  • old stable : Wheezy (7.0), publiée en Mai 2013, les seules mises à jour sont des correctifs de sécurité ;
  • stable : Jessie (8.0) est l'actuelle stable depuis le 26 avril 2015 ;
  • testing : Stretch (9.0) future version stable où seuls les paquets suffisamment matures peuvent rentrer ;
  • unstable : surnommée Sid, il s'agit d'une version en constante évolution, alimentée sans fin par de nouveaux paquets ou de mises à jour de paquets déjà existants (on parle de Rolling release).

5.3. Architectures Debian

  • Intel : 386, kfreebsd-i386, amd64, kfreebsd-amd64, ia64
  • ARM : armel, armhfi
  • Autres : mips, mipsel, powerpc, sparc, s390x

Note : Une distribution Debian est optimisée pour la plateforme Raspberry Pi (armhf) : Raspbian.

6. Ubuntu

  • Commandité par la société Canonical et une marque déposée par cette même société.
  • Basé Debian, Ubuntu respecte les licences GNU et l’esprit Open Source.
  • Vise à être disponible pour tout écosystème (les télévisions, les smartphones, et les tablettes). Le gestionnaire de bureau Unity, comme son nom l'indique, vise à unifier l’expérience utilisateur sur chacun des supports. Mais l'enjeu porte aussi sur le développement des technologies de l'informatique en nuage, notamment par un soutien fort apporté au projet Openstack.
  • https://doc.ubuntu-fr.org/ubuntu_distribution

6.1. Version stables Ubuntu

  • Version standard sort 2 fois par an (supportée pendant 9 mois)
  • Version LTS (Long Term Support) une fois tous les 2 ans supportée 5 ans :
  • 2 ans pour les màj de sécurité et de pilotes matériel
  • 3 ans en plus pour les màj de sécurité seulement

6.2. Versions Ubuntu

Numéro de version Nom de code Date de sortie Date de fin de soutien Postes de travail Serveurs
Ubuntu 4.10 The Warty Warthog (le phacochère verruqueux) 20 octobre 2004 30 avril 2006 idem
Ubuntu 5.04 The Hoary Hedgehog (le hérisson vénérable) 8 avril 2005 31 octobre 2006 idem
Ubuntu 5.10 The Breezy Badger (le blaireau jovial) 13 octobre 2005 13 avril 2007 idem
Ubuntu 6.06 LTS The Dapper Drake (le canard pimpant) 1er juin 2006 14 juillet 2009 1er juin 2011
Ubuntu 6.10 The Edgy Eft (Le Triton Agité) 26 octobre 2006 25 avril 2008 idem
Ubuntu 7.04 The Feisty Fawn (le faon courageux) 19 avril 2007 19 octobre 2008 idem
Ubuntu 7.10 The Gutsy Gibbon (le gibbon fougueux) 18 octobre 2007 18 avril 2009 idem
Ubuntu 8.04 LTS The Hardy Heron (le héron robuste) 24 avril 2008 12 mai 2011 9 mai 2013
Ubuntu 8.10 The Intrepid Ibex (Le bouquetin intrépide) 30 octobre 2008 30 avril 2010 idem
Ubuntu 9.04 The Jaunty Jackalope (le jackalope enjoué) 23 avril 2009 23 octobre 2010 idem
Ubuntu 9.10 The Karmic Koala (le koala karmique) 29 octobre 2009 30 avril 2011 idem
Ubuntu 10.04 LTS The Lucid Lynx (le lynx lucide) 29 avril 2010 9 mai 2013 30 avril 2015
Ubuntu 10.10 The Maverick Meerkat (le suricate rebelle) 10 octobre 2010 10 avril 2012 idem
Ubuntu 11.04 The Natty Narwhal (le narval chic) 28 avril 2011 28 octobre 2012 idem
Ubuntu 11.10 The Oneiric Ocelot (l'ocelot onirique) 13 octobre 2011 9 mai 2013 idem
Ubuntu 12.04 LTS The Precise Pangolin (le pangolin précis) 26 avril 2012 28 avril 2017
Ubuntu 12.10 The Quantal Quetzal (le quetzal quantique) 18 octobre 2012 16 mai 2014 idem
Ubuntu 13.04 The Raring Ringtail (le bassaris enthousiaste) 25 avril 2013 27 janvier 2014 idem
Ubuntu 13.10 The Saucy Salamander (la salamandre délurée) 17 octobre 2013 17 juillet 2014 idem
Ubuntu 14.04 LTS The Trusty Tahr (le bélier confiant) 17 avril 2014 Avril 2019
Ubuntu 14.10 The Utopic Unicorn (la licorne utopique) 23 octobre 2014 23 juillet 2015 idem
Ubuntu 15.04 The Vivid Vervet (le vervet vif) 23 avril 2015 4 février 2016 idem
Ubuntu 15.10 The Wily Werewolf (le loup-garou rusé) 22 octobre 2015 28 juillet 2016 idem
Ubuntu 16.04 LTS The Xenial Xerus (le xerus hospitalier) 21 avril 2016 Avril 2021
Ubuntu 16.10 The Yakkety Yak (le yak bavard) 13 octobre 2016 Juillet 2017 idem
Ubuntu 17.04 The Zesty Zapus (le zapus plaisant) 13 Avril 2017 Janvier 2018 idem
Ubuntu 17.10 The Artful Aardvark (l'oryctérope du Cap astucieux) 19 Octobre 2017 Juillet 2018 idem

6.3. Images Ubuntu

Plusieurs images et variantes disponibles :

  • Serveur
  • Desktop (Gnome ou Unity : Gnome par défaut à partir de Ubuntu 18.04 LTS
  • En plusieurs variantes (interface graphique) : LUbuntu, XUbuntu, KUbuntu

6.4. Canonical et Ubuntu

Canonical Ltd est une société fondée (et financée) par l'entrepreneur sud-africain Mark Shuttleworth, et dont l'objet est la promotion de projets open source (code source libre). Canonical est aussi le sponsor officiel du système d'exploitation libre Ubuntu duquel elle assure le support technique et la certification.

L'entreprise investit dans des projets Open Source, offre des produits et des services, notamment en proposant un réseau de partenaires répartis dans le monde.

On ne manquera pas de remarquer l'intérêt d'Ubuntu dans les déploiements du logiciel Open Source d'infrastructure en nuage (Cloud) OpenStack.

7. Red Hat RHEL

  • Red Hat est une société multinationale d'origine américaine fondée en 1993 éditant des distributions GNU/Linux.
  • Elle est l'une des entreprises dédiées aux logiciels Open Source les plus importantes et les plus reconnues.
  • Elle distribue un OS : Red Hat Enterprise Linux (RHEL), un système d'exploitation destiné aux entreprises.
  • Red Hat fournit des plateformes logicielles (openstack, JBoss), vend des abonnements d'assistance, de formations et de services d'intégration personnalisés pour les clients utilisant des logiciels open source.
  • Toutes les distributions basées Redhat (CentOs, Fedora, …) utilisent le même système de paquetage RPM.

On peut télécharger gratuitement sa version de RHEL7 sur le site http://developers.redhat.com/downloads/.

7.1. Cycle de vie RHEL

Voir aussi Red Hat Enterprise Linux Life Cycle.

7.2. Fedora

  • La distribution phare de Red Hat (RHEL) n'étant pas livrée gratuitement dans son format binaire, contrairement à la plupart des distributions Linux, Fedora a été créée par Red Hat pour être une distribution GNU/Linux communautaire.
  • La communauté qui gère ce projet est constituée à la fois d'employés de Red Hat et de contributeurs extérieurs.
  • Red Hat présente le projet Fedora comme un laboratoire pour développer de nouvelles fonctionnalités qui sont plus tard incluses dans la distribution commerciale de Red Hat.

7.3. CentOS

  • CentOS (Community enterprise Operating System) est une distribution GNU/Linux principalement destinée aux serveurs.
  • Tous ses paquets, à l'exception du logo, sont des paquets compilés à partir des sources de la distribution RHEL (Red Hat Enterprise Linux), éditée par la société Red Hat.
  • Elle est donc quasiment identique à celle-ci et se veut 100 % compatible d'un point de vue binaire.

7.4. Red Hat Package Manager (RPM)

  • RPM Package Manager (Red Hat Package Manager) est le logiciel de gestion des paquetages utilisé par les distributions Linux :
    • Red Hat Enterprise Linux,
    • Fedora, CentOS,
    • Mandriva,
    • openSUSE,
    • SUSE Linux Enterprise,

8. Autres distributions populaires

  • Archlinux
  • Gentoo
  • OpenWrt
  • Android

Mais aussi,

  • Kali Linux, Parrot OS
  • Damn small Linux
  • ...

8.1. Archlinux

  • Archlinux est une distribution légère et facile à maintenir.
  • Elle dispose de dépôts pour les architectures Intel et ARM.
  • Archlinux utilise le gestionnaire de paquets pacman.
  • Le système de mise à jour est continu (rolling release).
  • Le système de paquets est basé ABS.
  • Archlinux est bien documentée : https://wiki.archlinux.fr/Accueil

8.2. Gentoo

  • Gentoo Linux est une distribution dite source
  • Sa particularité est la compilation complète ou partielle d'un système GNU/Linux à partir des sources, à la manière de Linux From Scratch mais automatisée.
  • Ceci est géré grâce au logiciel Portage et la commande emerge en rolling release.
  • C’est une distribution qui a pour objectif la portabilité.
  • Gentoo est aussi très bien documentée : https://www.gentoo.org/doc/fr/

8.3. OpenWrt

  • OpenWrt est une distribution GNU/Linux minimaliste pour matériel embarqué tel que des routeurs grand public basés sur des System-on-Chip Broadcom (par exemple les routeurs WLAN Belkin, TP-Link, Linksys,…) mais il est porté sur d’autres architectures.
  • On compile soi-même en firmware ou une version compilée à partir d’un dépôt du projet correspondante au matériel.
  • OpenWrt est capable de tenir sur une mémoire Flash de 4 Mo.
  • Le gestionnaire de paquets est opkg.

8.4. Distributions spécialisées

  • On trouve depuis longtemps des distributions spécialisées qui offrent des services spécifiques déjà pré-installés.
  • Ces logiciels se téléchargent librement sous format ISO, OVA / OVF ou autres (images ou recettes) et s’installent aussi bien sur des PCs, des appliances, du matériel embarqué, sur un hyperviseur ou dans le cloud...
  • Distrowatch permet de faire une recherche parmi 300 projets :
  • Infrastructure
  • Sécurité
  • Téléphonie
  • Pare-feu
  • Virtualisation
  • Clustering
  • Stockage (SAN)

8.5. Android

  • Android est défini comme étant une pile de logiciels, c'est-à-dire un ensemble de logiciels destinés à fournir une solution clé en main pour les appareils mobiles – smartphones et tablettes tactiles.
  • Cette pile est organisée en cinq couches distinctes :
  • le noyau Linux avec les pilotes ;
  • des bibliothèques logicielles telles que WebKit, OpenGL, SQLite ou FreeType ;
  • une machine virtuelle et des bibliothèques permettant d'exécuter des programmes prévus pour la plate-forme Java ;
  • un framework - kit de développement d'applications ;
  • un lot d'applications standard parmi lesquelles il y a un environnement de bureau, un carnet d'adresses, un navigateur web et un téléphone.

8.6. Versions / Architecture Android

Distribution globale des versions d'Android depuis fin 2009. En janvier 2016, Android 4.4 "KitKat" (36.1%) et Android "Lollipop" versions 5.0–5.1.1 (32.6%) sont les plus répandues.

8.7. Linux et Windows

Voici ce qu'en pense James Zemlin qui dirige la Linux Foundation : "Il n'y a plus que deux chevaux dans la course, Microsoft et Linux. Il y a des choses que Microsoft fait bien, c'est la promotion, la standardisation et la protection juridique de Windows. Ce que Microsoft fait dans ce domaine est exactement ce que nous devons également faire pour Linux: promouvoir, protéger et standardiser."

"Nous avons observé communément que les clients n'optent pas pour Red Hat ou pour Microsoft, mais qu'ils ont déjà choisi: ils ont en fait choisi l'utilisation des deux technologies. Les entreprises dans le monde entier recourent à Windows et à Red Hat Enterprise Linux, Java et .NET., affirme John Gossman, architecte dans le domaine de Microsoft Azure. (https://azure.microsoft.com/en-us/blog/microsoft-and-red-hat-help-accelerate-enterprise-container-adoption/)

Commentaires