GNU/Linux >> Tutoriels Linux >  >> Linux

Comment vérifier tous les services en cours d'exécution sous Linux

Lors de l'utilisation d'une distribution Linux, certains processus et services s'exécutent parallèlement. Certains peuvent fonctionner en arrière-plan même à l'insu des utilisateurs. L'exécution de services inutiles peut consommer une grande partie des ressources système ou également poser un problème de sécurité si des mesures ne sont pas prises en compte.

Par conséquent, il est nécessaire de connaître tous les services en cours d'exécution sur votre système. Dans cet article, nous examinons toutes les manières possibles que vous pouvez utiliser pour répertorier les services en cours d'exécution sur votre machine Linux.

Comment vérifier les services en cours d'exécution sous Linux

Commençons par bien comprendre les services Linux. Si un service a une initialisation - script , il est alors accompagné de trois statuts :

  • démarrer
  • arrêter
  • redémarrer

Tout ce qui est exécuté avec le – service commande. Par exemple, pour redémarrer le network-manager service, exécutez la commande suivante :

sudo service network-manager restart

La commande de service fait référence à chaque service à l'aide du script d'initialisation stocké dans /etc/init.d pour Ubuntu et toute autre distribution basée sur Debian, et etc/rc.d/init.d pour les distributions Linux basées sur RedHat. Certains noms de service varient d'une distribution à l'autre. Par exemple, le service de serveur Web Apache est httpd sur CentOS et Apache2 sur Ubuntu.

Système V(SysV) | Débutant | Systemd

De nombreuses distributions Linux relèvent des systèmes d'initialisation suivants :

  • Système V, qui était le système d'initialisation initial.
  • Parfait
  • systemd, qui est le dernier système d'initialisation au moment de la rédaction de cet article.

Système V (SysV)

Le système V ou communément appelé SysV est un ancien système d'initialisation utilisé par les anciennes distributions Linux et remonte à l'Unix d'origine. SysV gère le processus de démarrage à l'aide du script shell présent dans /etc/init*. Si vous utilisez /etc/init.d/sshd start pour démarrer ou arrêter un service ; alors vous utilisez sur un système System V.

Système d'initialisation Upstart

Il s'agit d'un système d'initialisation basé sur les événements qui a remplacé le démon /sbin/init. Le système d'initialisation Upstart a été utilisé pour gérer le démarrage et l'arrêt des services pendant le démarrage, l'arrêt et les superviser pendant que le système est en cours d'exécution. Upstart a été initialement développé pour la distribution Ubuntu Linux afin de remplacer l'ancien système V utilisé dans d'autres distributions plus anciennes.

Système

C'est le nouveau système d'initialisation vers lequel la plupart des distributions Linux migrent. Il a été développé pour accélérer le processus de démarrage, gérer les dépendances et bien plus encore. Si vous utilisez systemctl restart sshd start pour démarrer ou arrêter un service, alors vous utilisez sur un système Systemd.

Vérifier tous les services en cours d'exécution dans un système d'initialisation System V (SysV)

Examinons certaines des commandes Terminal que vous pouvez utiliser pour répertorier tous les services en cours d'exécution dans un système d'initialisation SysV.

service --status-all

La commande ci-dessus répertorie tous les services en cours d'exécution sur votre système. Dans le cas où les services en cours d'exécution sont nombreux, vous pouvez utiliser des paramètres supplémentaires – plus et moins pour répertorier les services dans une vue organisée et claire.

service --status-all | less
service --status-all | more

Pour répertorier uniquement les services en cours d'exécution sur le système, exécutez la commande ci-dessous :

service --status-all | grep running

Pour afficher l'état d'un service particulier, exécutez la commande ci-dessous :

service --status-all | grep [service_name]
e.g
service --status-all | grep httpd

Vous pouvez également exécuter la commande ci-dessous pour afficher l'état d'un service particulier.

service httpd status

Pour lister tous les services activés au démarrage, exécutez la commande ci-dessous :

chkconfig --list

Vérifiez tous les services en cours d'exécution dans un système d'initialisation Upstart

Pour répertorier tous les services exécutés sur un système Linux exécutant le système Upstartinit, exécutez la commande ci-dessous :

initctl list

Vérifiez tous les services en cours d'exécution dans un système d'initialisation Systemd

Pour répertorier tous les services en cours d'exécution sur un système Linux exécutant le système d'initialisation Systemd, exécutez la commande ci-dessous :

systemctl

À partir de la commande ci-dessus, nous voyons que les données sont affichées dans cinq colonnes, à savoir UNIT, LOAD, ACTIVE, SUB et DESCRIPTION. Voyons à quoi correspond chaque colonne :

  • UNIT - Affiche le nom de l'unité Systemd correspondante.
  • LOAD - Cette colonne indique si l'unité actuelle est chargée en mémoire ou non.
  • ACTIVE - Cette colonne indique si l'unité est en cours d'utilisation (active) ou non.
  • SUB :décrit l'état de fonctionnement d'une unité particulière.
  • DESCRIPTION - Donne une description détaillée d'une unité particulière.

Vous pouvez également répertorier les services en cours d'exécution en fonction de leur type à l'aide de la commande ci-dessous :

systemctl list-units --type service

Vous pouvez également répertorier les services en fonction de leur état actuel. Il est relativement similaire à la sortie de la commande précédente mais un peu plus simple.

systemctl list-unit-files --type service

Pour répertorier l'état d'un service particulier, exécutez la commande ci-dessous :

systemctl status [service_name]
e.g
systemctl status acpid.path

Pour répertorier uniquement les services en cours d'exécution sur le système, exécutez la commande ci-dessous :

systemctl | grep running

Pour lister tous les services activés au démarrage, exécutez la commande ci-dessous :

systemctl list-unit-files | grep enabled

Vous pouvez également afficher les principaux groupes de contrôle et leur utilisation des ressources système telles que les E/S, le processeur, les tâches et la mémoire à l'aide de la commande systemd-cgtop.

systemd-cgtop

Nous pouvons également utiliser pstree pour répertorier tous les services en cours d'exécution dans le système. Pstree capture ces informations à partir de Systemd sortie du système.

pstree

Le pstree peut également être utilisé avec le système System V int. Il capture la sortie du système SysVinit.

pstree

Vous pouvez également utiliser chkservice utilitaire pour vérifier tous les services en cours d'exécution dans un système Systemd. Il n'est pas pré-installé. Cependant, vous pouvez installer via Terminal en utilisant la commande ci-dessous :

sudo apt-get install chkservice

Pour démarrer chkservice, exécutez la commande ci-dessous. Notez que vous avez besoin de privilèges de superutilisateur.

sudo chkservice

Pour voir toutes les fonctionnalités fournies avec cet outil fantastique, appuyez sur [? ] clé. Cela ouvre le menu d'aide.

Conclusion

Voici quelques-unes des commandes et des utilitaires que vous pouvez utiliser pour vérifier tous les services en cours d'exécution sur votre système Linux. Si vous avez une commande ou un outil dont nous n'avons pas parlé dans cet article, n'hésitez pas à en informer nos lecteurs dans la section des commentaires.


Linux
  1. Comment vérifier la version du système d'exploitation et de Linux

  2. Comment vérifier si un système Linux est 32 bits ou 64 bits

  3. Comment vérifier la disponibilité du système sous Linux

  4. Comment vérifier la date d'installation de votre système d'exploitation Linux ?

  5. Linux :comment obtenir tous les journaux de connexion du système ?

Comment vérifier la complexité du mot de passe sous Linux

Comment vérifier le niveau d'exécution sous Linux

Comment répertorier les services sous Linux

Comment utiliser la commande fd sur le système Linux

Comment vérifier tous les ports ouverts de votre système Linux

Comment vérifier la version de PHP sous Linux