CentOSLa semaine dernière, j’ai publié un script de configuration automatique pour les postes de travail OpenSUSE que j’installe dans mon quotidien professionnel. Je me suis dit que je pourrais peut-être faire la même chose pour mes installations de serveurs tournant sous CentOS, qu’il s’agisse d’une machine locale ou d’un serveur dédié avec une ouverture frontale sur Internet. Là aussi, la configuration post-installation d’une machine comporte toute une série d’opérations potentiellement chronophages.

  • Peaufiner le shell Bash et l’éditeur Vim
  • Rendre la console plus lisible
  • Configurer les dépôts de paquets officiel et tiers
  • Installer un jeu complet d’outils en ligne de commande
  • Supprimer une poignée de paquets inutiles
  • Rendre les logs système accessibles à l’administrateur non-root
  • Désactiver l’IPv6 si l’on ne l’utilise pas
  • Rendre le mot de passe persistant pour sudo
  • Etc.

Pour les impatients

Voici ce qu’il faut faire pour disposer d’un serveur CentOS 7 « aux petits oignons ».

  1. Installer un système minimal CentOS 7.
  2. Créer un utilisateur initial avec les privilèges d’administrateur.
  3. Installer Git : sudo yum install git
  4. Récupérer le script : git clone https://github.com/kikinovak/centos-setup
  5. Changer dans le répertoire nouvellement créé : cd centos-setup
  6. Exécuter le script : sudo ./centos-setup --setup
  7. Boire un café en attendant que le script gère à peu près tout.
  8. Redémarrer.

Détails techniques

Le script centos-7-setup.sh fournit une série d’options dont voici les détails.

Configurer Bash et Vim et rendre la console plus lisible :

# ./centos-7-setup.sh --shell

Configurer les dépôts de paquets officiels et tiers :

# ./centos-7-setup.sh --repos

Installer les groupes de paquets Core et Base et quelques outils supplémentaires :

# ./centos-7-setup.sh --extra

Supprimer une poignée de paquets inutiles :

# ./centos-7-setup.sh --prune

Rendre les logs système accessibles à l’administrateur non-root :

# ./centos-7-setup.sh --logs

Désactiver l’IPv6 et reconfigurer les services de base ;

# ./centos-7-setup.sh --ipv4

Rendre le mot de passe persistant pour sudo :

# ./centos-7-setup.sh --sudo

Exécuter toutes ces opérations de A à Z :

# ./centos-7-setup.sh --setup

Activer le relais des paquets :

# ./centos-7-setup.sh --nat

Élaguer le système pour ne garder que le système de base amélioré :

# ./centos-7-setup.sh --strip

Afficher l’aide sur les options :

# ./centos-7-setup.sh --help

Si vous êtes curieux de savoir ce qui se passe exactement sous le capot, vous pouvez très bien ouvrir un deuxième terminal et afficher les logs à chaud.

$ tail -f /tmp/centos-7-setup.log

Le script a été dûment testé sur une série de machines. Si vous l’utilisez sur vos serveurs et que vous rencontrez des problèmes, n’hésitez pas à m’en faire part dans les commentaires à cet article.

Mises en garde

Le script centos-7-setup.sh est prévu pour une installation minimale de CentOS 7. Il ne vous sera pas à grand-chose sur un poste de travail. Quoi qu’il en soit, ne l’utilisez en aucun cas sur un système tournant sous CentOS 8.


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.

 


0 commentaire

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.