Gérez les services dans votre distribution GNU / Linux

init Linux schema

Lorsque vous travaillez avec services dans une distributionSelon le type de système que vous utilisez (SysV init, Upstart, systemd,…), la manière dont les services peuvent être arrêtés, démarrés, arrêtés, redémarrés, etc., peut varier. C'est un point où beaucoup doutent de la manière dont cela est réellement fait, et le fait qu'il existe plusieurs systèmes différents n'aide pas certains utilisateurs plus inexpérimentés, qui essaient de le faire avec la mauvaise commande.

Par conséquent, je vais vous montrer un tutoriel simple avec lequel il vous sera plus clair comment vous pouvez travailler dans votre distribution, quelle qu'elle soit. Pour ce faire, la première chose sur laquelle vous devez être clair est le type de démon que vous utilisez. Comme je l'ai dit, toutes les distributions n'utilisent pas la même type de système de démarrage. En fait, comme vous le savez, certains se sont opposés au nouveau systemd et ont généré des fourches ou des dérivés avec l'ancien SysV, comme c'est le cas avec Devuan par rapport à Debian ...

Comment connaître le système utilisé par ma distribution? Eh bien, vous pouvez le découvrir en recherchant ces routes, et si vous les avez, vous aurez ce système dans votre distribution:

  • Pour savoir si vous avez systemd: trouvez le chemin / usr / lib / systemd
  • Pour savoir si vous avez Upstart: trouvez cet autre chemin / usr / share / upstart
  • Pour savoir si vous avez SysV init: trouvez le chemin /etc/init.d
  • hay autreMême si c'est un peu plus rare, dans ces cas particuliers, vous pouvez faire quelque chose de similaire si vous pensez que ce n'est pas le cas ci-dessus.

Une autre façon de rendre les choses encore plus faciles, car c'est la même chose pour tout le monde, il s'agit de chercher des infos dans / proc sur le PID = 1, c'est-à-dire le premier processus dont le reste se bloque et qui correspond précisément à ce démon de démarrage. Pour ce faire, exécutez simplement la commande suivante et elle renverra le nom:

sudo stat /proc/1/exe

Maintenant que vous savez quel système vous avez, par conséquent, allons les commandes que vous pouvez utiliser pour gérer les services:

  • Init SysV: /etc/init.d/[service_demon_name] [action]
  • systemd: systemctl [action] [nom_démon]
  • Parvenu: service [nom_démon_service] [action]
  • Autres: Si vous utilisez un autre système, vous feriez mieux de consulter le manuel. Par exemple, quelques rares cas sous Linux et autres Unix peuvent utiliser le signal du processus SIGHUP pour réinitialiser un service: kill -HUP $ (cat / var / run / [service-PID])

Vous devriez remplacer [action] pour ce que vous devez faire. Par exemple, si vous devez redémarrer, utilisez la réinitialisation, si vous voulez arrêter d'utiliser stop, si vous voulez commencer à utiliser star, etc. Et remplacez [daemon_name] par le nom du démon du service que vous souhaitez démarrer. Par exemple:

systemctl reset httpd

J'espère que vous l'avez plus clair maintenant.


Le contenu de l'article adhère à nos principes de éthique éditoriale. Pour signaler une erreur, cliquez sur c'est par ici !.

2 commentaires, laissez le vôtre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   CRISTIAN dit

    Y a-t-il encore des systèmes avec upstart? Je pense juste à un vieil Ubuntu.
    Même si vous avez systemd, vous pouvez toujours avoir le dossier etc / init.d
    Je préfère utiliser une autre commande comme ps ou pstree, et ne pas abuser de sudo-this-sudo-that.
    salutations

  2.   CRISTIAN dit

    La commande "service" fonctionne à la fois sur les systèmes init.d et systemd