Rocky Linux. La relève de centos?

Rocky Linux. La relève de centos?

Depuis les annonces de redhat, quand au changement du mode de fonctionnement de CentOS et le raccourcissement de la durée de son support, il n’existe pas réellement d’alternative au système Centos.
Nous allons donc voir à travers cet article une nouvelle distribution encore au stade de "release candidate" ainsi que son utilisation basique afin de déployer un serveur web avec le module php-fpm.

Un peu d’histoire

  1. RedHat Entreprise linux

    Red Hat Entreprise Linux (souvent abrégé RHEL) est une distribution Linux produite par RedHat et orientée vers le marché commercial et les serveurs d’entreprise. Cette distribution et aujourd’hui reconnue pour sa stabilité, sa sécurité, ses performances, son suivi et son support.
    La première version "entreprise" de Red Hat (Red Hat Linux 6.2E), apparue en 2003 consistait essentiellement en une version classique de Red Hat 6.2 avec différents niveaux de support, sans technologie séparée.

  2. Centos Linux

    Centos (Community enterprise Operating System) est une distribution GNU/Linux destinée aux serveurs (et aux postes de travail). Tous ses paquets, à l’exception du logo, sont compilés à partir des sources de la distribution RHEL. Elle est donc quasiment identique à celle-ci et se veut 100% compatible d’un point de vue binaire.
    Aujourd’hui de très nombreuses entreprises ont opté pour l’utilisation de Centos plutôt que RHEL. Depuis novembre 2013 elle est la troisième distribution la plus utilisée sur les serveurs web.

Le problème avec Centos

Le 8 décembre 2020, la communauté à annoncé la fin de CentOS Linux au profit de CentOS Stream pour la fin de l’année 2021. La conséquence de cette annonce est que Centos ne sera plus basé sur RHEL mais sur une version plus en avance et surtout moins stable. Avec cette annonce le support de centos a aussi été raccourci. Calendrier de fin de support:

Version Centos Date de sortie Mise à jour complètes Mises à jour de maintenance
3 19 mars 2004 30 juillet 2006 31 octobre 2010
4 9 mars 2005 31 mars 2009 29 février 2012
5 12 avril 2007 31 janvier 2014 31 mars 2017
6 10 juillet 2011 10 mai 2017 30 novembre 2020
7 7 juillet 2014 4e trimestre 2020 30 juin 2024
8 24 septembre 2019 31 décembre 2021 31 décembre 2021

Le projet Rocky Linux

Suite au changement de gouvernance pour CentOS et aux annonces de fin de support, Gregory Kurtzer un des fondateurs du projet CentOS a décidé de lancer une nouvelle distribution: Rocky Linux. La philosophie de cette distribution est la même que celle à l’origine de CentOS: une distribution construite à partir des sources de RHEL afin d’être binairement identique et donc 100% compatible. Coté support rocky linux se cale sur celui de RHEL.

Téléchargement de Rocky Linux

Pour télécharger cette distribution il faut commencer par vous rendre sur: https://rockylinux.org/fr/download et prendre l’image qui convient le mieux à votre environnement.
Dans le cas de cette article mon choix se porte sur l’image minimal x86_64.

Installation de Rocky Linux

L’installation du système est très simple surtout si vous avez déjà l’habitude d’installer/deployer CentOS ou REHL.

  • On commence par démarrer sur le disque d’installation et on choisit bien l’option pour installer:

image

  • On arrive ensuite sur l’écran de selection de langue:

image

  • Puis le menu permettant de paramètrer les différents aspects de notre installation:

image

  • Voici à quoi ressemble les étapes de configuration du réseau, du stockage, des paquets à installer, du réglage de l’horloge , de la création du mot de passe pour l’utilisateur root, et de la création du premier utilisateur:

image

image

image

image

image

image

  • Une fois tous ces aspects de configuration traités vous arriverez à la phase d’installation:

image

image

  • Enfin à la fin de l’installation et après un redémarrage vous arriverez sur la fenêtre de login du système. Attention dans mon exemple j’ai choisit de ne pas installer d’interface graphique:

image

Quelques commandes de base

Maintenant que notre système est installé prenons un peu de temps pour nous familiariser avec ou pour retrouver nos marques.

  1. Mise à jour du système

    La mise à jour du système se réalise toujours simplement à l’aide de la commande dnf. L’outil dnf est venu remplacer yum avec la version 8 de CentOS.
    Pour mettre à jour le système on se contente donc de lancer la commande suivante:

    dnf update -y

    update signifie que l’on souhaite mettre à jour les sources et le système. -y permet de valider automatiquement les demandes de confirmation.

    image

  2. Ajout d’un service

    Comme vu un peu plus tôt CentOS est surtout utilisé pour héberger des applications web. Nous allons donc voir comment se passe l’installation d’un serveur LAMP et sa configuration. Je pars du principe que les commandes qui vont suivre sont soit préfixées par sudo soit lancées directement depuis l’utilisateur root à l’aide de la commande sudo -i.

    • On commence par ajouter le repo epel
    dnf install epel-release -y

    image

    • On ajoute nos outils habituels: htop, iftop, nmon
    dnf install htop iftop nmon -y

    image

    • On passe à l’installation d’un serveur apache et de php
    dnf install httpd php -y

    image

    • On démarre et ajoute les services httpd et php-fpm au démarrage de notre machine
    systemctl enable --now httpd systemctl enable --now php-fpm

    image

  3. configuration du firewall

    Afin que notre service web soit accessible on va l’autoriser au niveau du firewall:

    firewall-cmd --add-service=http --permanent firewall-cmd --reload

    La commande firewall-cmd permet de dialoguer avec le firewall de notre serveur, l’option add-service permet d’ajouter un service (il est possible d’utiliser remove-service pour supprimer une ouverture de port), l’option permanent permet de s’assurer que notre modification sera présente après un redémarrage de notre serveur. Enfin l’option reload permet de s’assurer que nos modifications apportées au pare-feu sont bien appliquées.

  4. changer de version pour le module php

    Lors de la précédente installation, nous avons laissé le système installer la version par défaut de php. Cependant pour nos besoins il pourrait être utile d’utiliser une autre version ou de pouvoir passer facilement d’une version à une autre.
    Nous allons donc expérimenter la partie module de dnf.

    dnf module list php

    image

    Comme vous pouvez le constater, cette commande va nous permettre de lister toutes les versions de php installables sur le système en passant par les paquets officiels.

    Imaginons que nous ayons besoin de déployer la version 7.4 de php. On va commencer par désactiver le module php actif:

    dnf module disable php

    Puis on active la version 7.4:

    dnf module enable php:7.4

    image

    Il nous suffit, enfin, de demander une mise à jour au système pour permettre à php de passer à la version 7.4

    dnf upgrade -y

    image

Comme on a pu le constater au travers de cet article les habitudes ne changent pas en passant de CentOs à Rocky linux. Comme promis par les développeurs on se retrouve bien avec une version binairement identique à RHEL.