Si vous êtes un utilisateur ou un administrateur Linux, vous devez savoir comment gérer les services sur votre système. Les services sont des programmes qui s’exécutent en arrière-plan et fournissent des fonctionnalités essentielles, telles que la mise en réseau, l’impression, la journalisation, etc.
Mais comment lister, démarrer, arrêter, activer, désactiver ou redémarrer des services sous Linux ? La réponse est la systemctl commande. Cette commande fait partie de systemdun système moderne et un gestionnaire de services pour les distributions Linux comme Ubuntu et Debian.
Si vous êtes un débutant Linux et que vous souhaitez gérer ces services à l’aide de systemctelsuivez les étapes ci-dessous.
Lister tous les services avec systemctl
Pour répertorier tous les services de votre système Linux, exécutez cette commande dans le terminal :
sudo systemctl list-units -service de type
Cela vous montrera un tableau à cinq colonnes : UNITÉ, CHARGER, ACTIF, SOUSet DESCRIPTION.
Le UNITÉ La colonne affiche le nom du fichier d’unité de service, qui est le fichier de configuration et de définition du service. Ce fichier contient des informations sur ce que fait le service et comment le gérer. Vous pouvez également afficher un descriptif rapide du service dans le DESCRIPTION colonne.
Le CHARGER indique si le fichier d’unité de service est chargé en mémoire. Le ACTIF colonne indique s’il s’agit d’un service en cours d’exécution ou non. Finalement, le SOUS La colonne affiche le sous-état du service, tel que l’exécution, la sortie ou l’échec.
Vous pouvez également utiliser le -un ou -tous au lieu de -taper service pour répertorier tous les types d’unités, pas seulement les services.
Lister les services actifs avec systemctl
Si vous souhaitez uniquement voir les services actuellement actifs (en cours d’exécution) sur votre système, exécutez cette commande dans le terminal Linux :
sudo systemctl list-units –type service –state active
Cela filtrera les services inactifs (arrêtés) ou en échec.
Lister les services inactifs avec systemctl
De même, si vous souhaitez uniquement voir les services actuellement inactifs (arrêtés) sur votre système, exécutez cette commande dans le terminal :
sudo systemctl list-units –type service –state inactive
Cela filtrera les services actifs (en cours d’exécution) ou en échec.
Lister les services en échec avec systemctl
Si vous souhaitez voir les services qui n’ont pas pu démarrer ou s’arrêter sur votre système, ouvrez le terminal et exécutez cette commande :
sudo systemctl list-units -type service -state a échoué
Cela filtrera tous les services actuellement actifs (en cours d’exécution) ou inactifs (arrêtés).
Liste des services activés avec systemctl
Pour voir quels services sont activés pour démarrer automatiquement au démarrage de votre système, exécutez cette commande dans le terminal :
sudo systemctl list-unit-files –type service –state enabled
Cela vous montrera un tableau à deux colonnes : FICHIER UNITÉ et ÉTAT. La colonne UNIT FILE affiche le nom du fichier d’unité de service. La colonne STATE indique si le service est activé ou non.
Liste des services désactivés avec systemctl
Pour voir quels services sont désactivés et ne démarrent pas automatiquement au démarrage de votre système, ouvrez votre terminal Linux et exécutez cette commande :
sudo systemctl list-unit-files –type service –state désactivé
Cela filtrera les services qui sont activés ou masqués.
Afficher les détails d’un service avec systemctl
Pour afficher plus de détails sur un service spécifique sur votre système, exécutez cette commande dans le terminal :
sudo systemctl status
Remplacer
Cela vous montrera des informations telles que la description, l’état de charge, l’état actif, le sous-état, l’ID de processus (PID), l’utilisation de la mémoire, l’utilisation du processeur et les journaux de service récents.
Vous pouvez également utiliser la sous-commande show au lieu de status pour afficher toutes les propriétés de service dans un nom=valeur format.
Démarrer un service avec systemctl
Pour démarrer un service arrêté sur votre système, exécutez cette commande dans votre terminal Linux :
sudo systemctl start
Remplacer
Cela démarrera le service en arrière-plan et reviendra à l’invite. Vous pouvez utiliser la sous-commande status pour vérifier que le service est en cours d’exécution.
Arrêter un service avec systemctl
Pour arrêter un service en cours d’exécution sur votre système, exécutez cette commande dans le terminal :
sudo systemctl stop
Remplacer
Cela arrêtera le service en arrière-plan et reviendra à l’invite. Vous pouvez utiliser la sous-commande status pour vérifier que le service est arrêté.
Redémarrer un service avec systemctl
Vous souhaitez modifier et recharger le fichier de configuration d’un service et appliquer les modifications ? Si vous le faites, vous devrez redémarrer le service par la suite.
Pour redémarrer un service en cours d’exécution sur votre système, ouvrez votre terminal et exécutez cette commande :
sudo systemctl restart
Remplacer
Cela arrêtera et démarrera le service en arrière-plan et reviendra à l’invite. Vous pouvez utiliser la sous-commande status pour vérifier que le service est en cours d’exécution.
Recharger un service avec systemctl
Certains services prennent en charge le rechargement de leur configuration sans arrêt ni démarrage. Le rechargement d’un service vous permet d’apporter des modifications mineures aux fichiers de configuration de ces services sans les redémarrer. C’est plus rapide et moins perturbant que le redémarrage.
Pour recharger un service qui prend en charge cette fonctionnalité, utilisez les éléments suivants systemctl commande dans le terminal :
sudo systemctl recharger
Remplacer
Cela rechargera le service en arrière-plan et reviendra à l’invite. Vous pouvez utiliser la sous-commande status pour vérifier que le service est en cours d’exécution.
Activer un service avec systemctl
Pour permettre à un service de démarrer automatiquement au démarrage de votre système, exécutez cette commande dans le terminal :
sudo systemctl enable
Remplacer
Cela créera un lien symbolique du fichier d’unité de service vers un emplacement sous /etc/systemd/systemqui indique à systemd de le démarrer au démarrage.
Vous pouvez également utiliser le -maintenant possibilité d’activer et de démarrer un service simultanément. Par exemple:
sudo systemctl enable –now
Désactiver un service avec systemctl
Pour empêcher un service de démarrer automatiquement au démarrage de votre système, exécutez cette commande dans le terminal Linux :
sudo systemctl disable
Remplacer
Cela supprimera le lien symbolique de /etc/systemd/system, qui indique à systemd de ne pas le démarrer au démarrage.
Vous pouvez également utiliser le -maintenant possibilité de désactiver et d’arrêter un service en même temps :
sudo systemctl disable –now
Liste des services masqués avec systemctl
Masquer un service signifie lier son fichier unité à /dev/null, ce qui l’empêche d’être chargé ou manipulé par systemd. Cela ajoute une couche de protection supplémentaire.
Pour voir quels services sont masqués et ne peuvent pas être démarrés ou arrêtés manuellement ou automatiquement sur votre système, exécutez cette commande dans le terminal de votre PC Linux :
sudo systemctl list-unit-files –type service –state masqué
La liste des services masqués apparaîtra dans une liste (avec masqué répertorié sous la ÉTAT colonne)
Masquer un service avec systemctl
Exécutez cette commande dans le terminal pour empêcher un service d’être démarré, arrêté manuellement ou automatiquement sur votre système :
masque sudo systemctl
Remplacer
Cela créera le lien symbolique du fichier de l’unité de service vers /dev/null pour l’empêcher d’être chargé ou manipulé par systemd.
Démasquer un service avec systemctl
Vous pouvez démasquer un service précédemment masqué. Cela supprimera le lien symbolique vers /dev/null et lui permettra d’être utilisé et chargé ailleurs.
Pour démasquer un service précédemment masqué sur votre système, exécutez cette commande :
sudo systemctl unmask
Remplacer
Contrôler votre PC Linux
Si votre PC Linux utilise systemd pour gérer les services système, vous pouvez utiliser le systemctl commande pour les gérer. Vous pouvez démarrer, arrêter, recharger, désactiver et contrôler vos services, ce qui vous donne un meilleur contrôle sur votre PC Linux.
Une autre façon de gérer votre PC consiste à limiter l’accès à certains fichiers. Vous pouvez utiliser la commande chmod sur votre PC Linux pour autoriser (ou interdire) l’accès.
Vous ne savez pas si votre distribution Linux vous convient ? Vous devriez plutôt essayer une autre distribution Linux de premier plan, ou même essayer une distribution Linux portable. L’utilisation d’une distribution portable vous permettra de basculer facilement entre eux.