L’une des connaissances essentielles d’un administrateur système est de savoir comment configurer les services au démarrage, de sorte que lorsqu’un serveur est redémarré, ils démarrent automatiquement.
Le redémarrage d’un serveur peut s’expliquer par différentes raisons, dont les suivantes.
- Programmation hebdomadaire ou mensuelle
- Inattendu en raison d’un problème matériel/kernel
En effectuant la bonne configuration, vous n’avez pas besoin de les démarrer manuellement à chaque redémarrage.
Un peu d’automatisation. N’est-ce pas ?
Les exemples suivants concernent deux distributions populaires testées sur des serveurs DigitalOcean .
CentOS ou RHEL 6.x
Dans l’exemple suivant, j’ai pris un serveur HTTP Apache, mais la procédure reste la même pour tout autre service que vous souhaitez démarrer au boot dans la version Red Hat Enterprise Linux (RHEL) ou CentOS 6.
Vous pouvez conserver n’importe quel nom de fichier de script, et ici j’ai conservé httpd
- Devenez un utilisateur root sur votre serveur Linux
- Créez ou copiez votre script sous /etc/init.d/
[root@Chandan init.d]# ls -ltr httpd
-rwxr-xr-x. 1 root root 3371 Jan 6 08:56 httpd
[root@Chandan init.d]#
Nous allons utiliser l’utilitaire chkconfig
qui est disponible par défaut sous Linux ou CentOS.
- Ajoutez un script à lancer au démarrage en utilisant
chkconfig
avec le paramètre--add
[root@Chandan init.d]# chkconfig --add httpd
[root@Chandan init.d]# chkconfig httpd on
- Confirmez que le script a été ajouté avec succès avec
--list
[root@Chandan init.d]# chkconfig --list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@Chandan init.d]#
C’est tout ! Le script httpd
sera appelé pour démarrer les services au démarrage de Linux.
Si vous souhaitez désactiver le service de démarrage automatique, vous pouvez utiliser les commandes suivantes
chkconfig httpd off
chkconfig --del httpd
RHEL ou CentOS 7.x/8.x
La procédure de configuration des services au démarrage dans RHEL 7 est légèrement différente de celle de RHEL 6. Elle utilise systemd pour gérer les services.
La plupart des logiciels tels que les scripts Apache, PHP, MySQL, Nginx sont ajoutés dans les services lors de l’installation.
Prenons l’exemple de PHP-FPM.
Tout d’abord, voyons l’état de php-fpm (ceci suppose que vous avez déjà des scripts dans /usr/lib/systemd/system/
)
[root@instance-1 ~]# systemctl status php-fpm
php-fpm.service - Le gestionnaire de processus PHP FastCGI
Loaded : chargé (/usr/lib/systemd/system/php-fpm.service ; disabled ; vendor preset : disabled)
Actif : inactif (mort)
[root@instance-1 ~]#
Comme vous pouvez le voir, le statut est désactivé, ce qui signifie qu’il n’est pas configuré pour démarrer au démarrage.
Permettez à php-fpm de démarrer au démarrage en utilisant systemctl
[root@instance-1 ~]# systemctl enable php-fpm
Création d'un lien symbolique de /etc/systemd/system/multi-user.target.wants/php-fpm.service vers /usr/lib/systemd/system/php-fpm.service.
[root@instance-1 ~]#
Voyons maintenant l’état de la situation
[root@instance-1 ~]# systemctl status php-fpmphp
php-fpm.service - Le gestionnaire de processus PHP FastCGI
Loaded : chargé (/usr/lib/systemd/system/php-fpm.service ; enabled ; vendor preset : disabled) Active : inactive (dead)
[root@instance-1 ~]#
php-fpm est prêt à démarrer au boot. Testons-le en redémarrant le serveur.
Si vous avez besoin de désactiver le démarrage des services au démarrage, vous pouvez utiliser la commande suivante
systemctl disable php-fpm
Vous pouvez également consulter cet article expliquant systemd et le démarrage automatique des services au démarrage.
Ubuntu
La configuration des services de démarrage automatique sous Ubuntu est légèrement différente. Disons que le nom du script est Nginx
- Connectez-vous au serveur Ubuntu en tant que root
- Copiez le script dans le dossier /etc/init.d/
- Exécutez la commande suivante
update-rc.d nginx defaults
- Redémarrez le serveur pour vous assurer que les services sont lancés.
Cela m’a aidé et je pense que cela vous sera également utile.
L’administration de système est toujours amusante et stimulante, et si vous cherchez à booster votre carrière dans ce domaine, vous pouvez vous référer à ce cours Udemy.
Ensuite, regardez comment trouver la raison du redémarrage soudain de Linux.
Dirigez ici que vous voulez installer/mettre à jour PHP-FPM 5.6 sur CentOS 6.x.