GNU/Linux >> Tutoriels Linux >  >> Debian

Debian – Comment fonctionnent les services dans Debian et comment puis-je les gérer ?

Dans Windows, j'ai le gestionnaire de services, où je vois tous les services système, qui peuvent être démarrés via Windows lui-même, je configure l'utilisateur qu'il utilise, la gestion des droits est là, et je peux transmettre des variables et d'autres informations aux services , je peux les nommer, et je peux créer des services en double d'un programme et ainsi de suite. J'ai donc un outil de gestion principal sous Windows.

Comment puis-je faire la même chose sous Linux? Comment puis-je déclencher l'exécution de "svnserve" au démarrage, ou comment puis-je configurer des services pour qu'ils s'exécutent dans un contexte particulier. Comment visualiser tous les services "programmés" ?

Réponse acceptée :

Il existe actuellement 3 principaux systèmes d'initialisation utilisés par Linux. Il y a quelques années, il n'y en avait qu'un, SysVinit. Mais SysVinit manquait sérieusement de fonctionnalités telles que la représentation graphique des dépendances de service, il est donc désormais obsolète dans la plupart des distributions. Actuellement, la plupart des distributions passent à systemd. Bien qu'il y ait aussi un parvenu.

Mais voici la réponse à votre question pour chacun des 3 systèmes d'initialisation :

SysVinit

SysVinit actuellement utilisé par Debian et RedHat. Bien que la prochaine version de RedHat (7) utilisera systemd.

La manière universelle d'activer les services SysVinit au démarrage est de les lier symboliquement dans /etc/rc3.d (ou /etc/rc2.d ). Tous les services peuvent être trouvés dans /etc/init.d . Notez cependant que les distributions auront souvent leur propre outil pour gérer ces fichiers, et cet outil doit être utilisé à la place. (Fedora/RedHat a service et chkconfig , Ubuntu a update-rc.d )

Répertorier les services :

ls /etc/init.d/

Démarrer le service :

/etc/init.d/{SERVICENAME} start

ou

service {SERVICENAME} start

Arrêter le service :

/etc/init.d/{SERVICENAME} stop

ou

service {SERVICENAME} stop

Activer le service :

cd /etc/rc3.d
ln -s ../init.d/{SERVICENAME} S95{SERVICENAME}

(le S95 est utilisé pour spécifier la commande. S01 commencera avant S02, etc)

Désactiver le service :

rm /etc/rc3.d/*{SERVICENAME}

Système

La distribution la plus notable utilisant systemd est Fedora. Bien qu'il soit utilisé par beaucoup d'autres. De plus, comme Debian a choisi d'utiliser systemd plutôt qu'upstart, il deviendra de facto le système upstart pour la plupart des distributions (ubuntu a déjà annoncé qu'il abandonne upstart pour systemd).

Répertorier les services :

systemctl list-unit-files

Démarrer le service :

systemctl start {SERVICENAME}

Arrêter le service :

systemctl stop {SERVICENAME}

Activer le service :

systemctl enable {SERVICENAME}

Désactiver le service :

systemctl disable {SERVICENAME}

Parfait

Upstart a été développé par les gens d'Ubuntu. Mais après que Debian ait décidé d'utiliser systemd, Ubuntu a annoncé qu'il abandonnerait le démarrage.

Upstart a également été brièvement utilisé par RedHat, car il est présent dans RHEL-6, mais il n'est pas couramment utilisé.

En relation:Comment la date de coreutil parvient-elle à obtenir des résultats aussi étranges?

Répertorier les services :

initctl list

Démarrer le service :

initctl start {SERVICENAME}

Arrêter le service :

initctl stop {SERVICENAME}

Activer le service :

2 façons malheureusement :

  1. Il y aura un fichier /etc/default/{SERVICENAME} qui contient une ligne ENABLED=... . Remplacez cette ligne par ENABLED=1 .

  2. Il y aura un fichier /etc/init/{SERVICENAME}.override . Assurez-vous qu'il contient start (ou est entièrement absent), pas manual .

Désactiver le service :

echo manual > /etc/init/{SERVICENAME}.override

Remarque :Il existe également le système d'initialisation "OpenRC" qui est utilisé par Gentoo. Actuellement, Gentoo est la seule distribution qui l'utilise, et son utilisation n'est pas envisagée, ni prise en charge par une autre distribution. Donc, je ne couvre pas son utilisation (bien que si l'opinion est que je le fais, je peux l'ajouter).


Debian
  1. Comment gérer et répertorier les services sous Linux

  2. Comment gérer les services Systemd avec Systemctl sous Linux

  3. Comment utiliser la commande Systemctl pour gérer les services Systemd

  4. Comment installer Monit (surveillance des processus et des services) sur Ubuntu / Debian

  5. Comment installer Suricata sur Debian 11

Comment installer et configurer Monit sur Debian 9

Comment installer et utiliser Monit sur Debian 9 / Ubuntu 16.04

Comment démarrer, arrêter et redémarrer des services sur Debian

Comment démarrer, arrêter et redémarrer les services dans Debian 10

Comment installer Icinga 2 sur Debian 8

Comment installer et gérer Java sur Debian 11