CentOSIl y a quelques semaines, j’ai publié un premier article sur la migration des serveurs CentOS vers la distribution Oracle Linux. L’article offrait une vue d’ensemble et quelques considérations générales sur la distribution et présentait une petite démo de migration d’une installation minimale de CentOS vers Oracle Linux.

La semaine dernière j’ai commencé à migrer un premier serveur de production de CentOS 7 vers Oracle Linux 7, et j’ai pris des notes détaillées que je partage ici. La machine en question fait tourner des services courants comme Postfix, Dovecot, OpenDKIM, SpamAssassin, MariaDB, Apache avec PHP7.3 et un webmail avec Roundcube. J’ai pris soin de rédiger mes notes de manière à ce que vous puissiez les adapter à n’importe quelle configuration.

En partant de CentOS 7, j’effectue d’abord une mise à jour du système si ce n’est pas déjà fait.

$ sudo yum update

J’affiche les dépôts de paquets en vigueur sur le système.

$ yum repolist

La plupart des dépôts sont installés sous forme de paquets RPM avec le suffixe -release.

$ rpm -qa | grep release

Je supprime l’ensemble des dépôts tiers.

$ sudo yum remove elrepo-release
$ sudo yum remove icinga-rpm-release
$ sudo yum remove epel-release
$ sudo yum remove centos-release-scl
$ sudo yum remove centos-release-scl-rh
$ sudo rm -f /etc/yum.repos.d/*.rpmsave
$ sudo rm -f /etc/yum.repos.d/docker-ce.repo
$ sudo rm -f /etc/yum.repos.d/lynis.repo

Je vérifie si je ne dispose plus que des dépôts officiels.

$ yum repolist
...
repo id                   repo name               status
base/7/x86_64             [base]                  10,072
extras/7/x86_64           [extras]                   448
updates/7/x86_64          [updates]                1,155

Oracle LinuxÀ partir de là, je récupère le script de migration fourni par Oracle.

$ git clone https://github.com/oracle/centos2ol

J’exécute le script.

$ cd centos2ol/
$ sudo ./centos2ol.sh -rV
  • L’option -r remplace tous les paquets CentOS par des paquets Oracle.
  • L’option -V vérifie les informations RPM avant et après la migration.
  • Comptez entre 20 et 40 minutes selon la configuration de votre serveur.

Au terme de l’opération, je fais un brin de ménage dans les fichiers de configuration et je redémarre.

$ find /etc/ -name *.rpmnew 2> /dev/null | xargs sudo rm -f
$ sudo rm -f /etc/yum.repos.d/*.disabled
$ sudo reboot

Je récupère mon script de configuration automatique.

$ git clone https://gitlab.com/kikinovak/oracle.git
$ cd oracle/

Je configure les dépôts officiels et tiers.

$ sudo ./linux-setup.sh --repos

Je mets à jour le système.

$ sudo ./linux-setup.sh --fresh

J’installe quelques paquets manquants pour un système de base cohérent.

$ sudo ./linux-setup.sh --extra

J’affiche les paquets orphelins qui n’appartiennent à aucun dépôt de paquets.

$ yum list extras

Je supprime ces paquets inutiles.

$ sudo yum remove centos-indexhtml kpatch

L’opération de migration « à chaud » s’est terminée avec succès.

$ head -n 2 /etc/os-release 
NAME="Oracle Linux Server"
VERSION="7.9"
$ uname -r
5.4.17-2036.102.0.2.el7uek.x86_64

La rédaction de cette documentation demande du temps et des quantités significatives de café espresso. Vous appréciez ce blog ? Offrez un café au rédacteur en cliquant sur la tasse.

 

Catégories : Serveur

3 commentaires

bob · 1 février 2021 à 11 h 30 min

Merci beaucoup de partager vos notes au-delà des tutorials j’apprends beaucoup de votre méthodologie à travers vos articles et vos livres.

    Tuxmika · 2 mars 2021 à 20 h 18 min

    Bonsoir..Conseilles tu de migrer sur Oracle linux ou bien de rester sur Centos 7 jusqu’à la fin du support?

    Cdt

      kikinovak · 2 mars 2021 à 22 h 48 min

      Je ne conseille rien du tout, et les deux se valent. Pour ma part je migre même mes machines sous CentOS 7 pour me familiariser avec les idiosyncrasies d’Oracle Linux.

Les commentaires sont fermés.