Aperçu de systemctl
systemd est le système d'init qui gère le processus de démarrage du système et contrôle tous les services (daemons) s'exécutant en arrière-plan après le démarrage du système. `systemctl` est une interface qui permet de manipuler ces fonctionnalités de systemd via la ligne de commande. De nombreuses commandes précédentes comme `service`, `chkconfig`, `reboot`, `shutdown` ont été intégrées en une seule commande : `systemctl`.
Comprendre les unités systemd
systemd abstrait tout ce qu'il gère sous le concept d' 'unités'. Chaque unité représente un service spécifique, un point de montage, un périphérique, etc. Les types d'unités les plus couramment manipulés sont les `unités de service (.service)`, les `unités de socket (.socket)`, les `unités de montage (.mount)`, les `unités de périphérique (.device)` et les `unités cibles (.target)`. En général, l'extension `.service` est omise.
Rôles principaux de systemctl
- Vérification de l'état du service: Identifie les services en cours d'exécution, les services activés, les services échoués, etc.
- Contrôle des services: Démarre, arrête, redémarre et recharge (relit la configuration) des services.
- Configuration de l'exécution automatique des services: Configure ou désactive l'exécution automatique des services au démarrage du système.
- Gestion de l'alimentation du système: Redémarre, éteint ou met le système en mode veille.
- Gestion des fichiers d'unités: Vérifie et modifie les emplacements et dépendances des fichiers d'unités.
Options principales de la commande systemctl
`systemctl` offre une riche gamme d'options pour la gestion des services, le contrôle de l'alimentation du système et la gestion des fichiers d'unités. La plupart des commandes liées aux services nécessitent des privilèges `sudo`.
1. État et contrôle des services
2. Configuration de l'exécution automatique des services
3. Gestion de l'alimentation du système
4. Fichiers d'unités et listes
Commande générée :
Essayez de combiner les commandes.
Description:
`systemctl` Exécute la commande.
Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.
Exemples d'utilisation
Apprenez à gérer efficacement les services sur un système basé sur systemd grâce à divers exemples d'utilisation de la commande `systemctl`.
Vérification de l'état du service Web (Nginx)
systemctl status nginx.service
Vérifiez si le serveur Web Nginx est actuellement en cours d'exécution, inactif ou s'il y a eu des erreurs, etc.
Démarrer le service MySQL
sudo systemctl start mysql.service
Démarre le service de base de données MySQL.
Redémarrer le service SSH
sudo systemctl restart sshd.service
Redémarre le service SSH (Secure Shell). Utile après modification du fichier de configuration.
Configurer le démarrage automatique du serveur Web Apache
sudo systemctl enable apache2.service
Configurez le serveur Web Apache pour qu'il démarre automatiquement au démarrage du système.
Vérifier la liste de tous les services actifs
systemctl list-units --type=service --state=active
Affiche la liste de toutes les unités de service qui sont dans un état 'actif' (en cours d'exécution ou prêtes) sur le système actuel.
Redémarrer le système via systemd
sudo systemctl reboot
Redémarre le système en toute sécurité de la manière recommandée.
Afficher le contenu d'un fichier d'unité de service spécifique
systemctl cat redis-server.service
Vérifiez le contenu du fichier d'unité systemd du service Redis (ex : `/etc/systemd/system/redis.service`) pour comprendre son fonctionnement.