Services đ»
Un service est un type de programme qui fonctionne en arriĂšre-plan sans que l'utilisateur n'ait Ă interagir avec lui. Le service est conçu pour ĂȘtre invisible et pour exĂ©cuter des tĂąches automatiquement, souvent dĂšs le dĂ©marrage du systĂšme, et parfois mĂȘme avant que l'utilisateur se connecte.
Un service continue Ă fonctionner mĂȘme si aucune fenĂȘtre n'est ouverte. Par exemple, l'antivirus, le service de mise Ă jour Windows, ou encore les services rĂ©seau pour n'en nommer que quelques-uns. Ces programmes sont gĂ©nĂ©ralement essentiels au bon fonctionnement de l'ordinateur, mais ne nĂ©cessitent aucune interaction.
J'aime bien faire l'analogie entre les services et certains rĂ©flexes humains. Vous n'avez pas besoin de rĂ©flĂ©chir pour respirer, votre corps s'assure que ce « service » fonctionne constamment. Il en va de mĂȘme pour votre battement cardiaque. C'est ainsi que fonctionnent Ă©galement les services sous Windows. Vous n'avez rien Ă faire, rien Ă rĂ©flĂ©chir, il s'exĂ©cuteront automatiquement.
Le lien entre les services et les processusâ
Dans la section prĂ©cĂ©dente, nous avons abordĂ© les processus et leur fonctionnement. En outre, nous avons mentionnĂ© que tout ce qui s'exĂ©cutait sur le pc est systĂ©matiquement exĂ©cutĂ© dans un processus.Les services n'Ă©chappent Ă cette rĂšgle non plus, aprĂšs tout, ce sont des programmes Ă©galement. Un service peut donc, lui aussi, ĂȘtre arrĂȘtĂ© via une « fin de tĂąche ». Cela est peu recommandable, mais peut ĂȘtre fait dans certaines circonstances.
Retour sur le gestionnaire des tĂąchesâ
Les services de Windows sont repérables à plusieurs endroits dans le gestionnaire des tùches. D'ailleurs, une section entiÚre du gestionnaire est réservée aux services. Malgré cela, le gestionnaire des tùches demeure limité dans les options qu'il offre pour gérer les services. Nous verrons, un peu plus loin, qu'une console Windows est réservée strictement à l'administration des services et offre beaucoup plus de possibilités.
Section: Services đ§©â
La section « Services » du gestionnaire des tĂąches vous permet de lister l'ensemble des services disponibles dans le systĂšme. Vous y retrouverez une foule d'informations, comme une brĂšve description du service, son numĂ©ro de processus dans le cas oĂč le service serait en cours d'exĂ©cution ainsi que son statut. Remarquez l'encadrĂ© rouge oĂč se trouve un bouton vous permettant d'accĂ©der directement Ă la console des services de Windows.
Les actions que vous pouvez effectuer directement depuis le gestionnaire des tĂąches sont relativement limitĂ©es: dĂ©marrer, arrĂȘter ou redĂ©marrer les services.
Section: Processusâ
Les services sont également repérables dans la section « Processus » du gestionnaire des tùches. Dans cette section, le nom des processus qui contiennent des services commencera toujours par l'expression : « HÎte de service: ». Cela permet tout simplement de différencier les processus « normaux » des processus de type « services ».
Section: DĂ©tailsâ
Les services sont aussi visibles dans la section « DĂ©tails » du gestionnaire des tĂąches. Ironiquement, c'est l'une des sections affichant le moins de dĂ©tails sur ces derniers. Dans cette section, tous les services portent le mĂȘme nom (pas trĂšs pratique). Ce nom, c'est svchost
. C'est pourquoi cette section n'est pas à privilégier pour la gestion des services.
La console des servicesâ
Vous pouvez accĂ©der Ă la console des services de diffĂ©rentes façons sous Windows. D'abord, si vous ĂȘtes dans le gestionnaire des tĂąches, vous pouvez ouvrir la console directement depuis la section « Services ».
Autrement vous pouvez également taper la commande services.msc
dans la fenĂȘtre « ExĂ©cuter » de Windows ( â win+r ).
Voici Ă quoi ressemble cette console:
Je n'expliquerai pas chacun des champs affichés à l'écran puisque je les reprendrai un peu plus loin, dans la section propriétés d'un service.
DĂ©pendemment de la langue de votre systĂšme d'exploitation, vous ne verrez peut-ĂȘtre pas le vĂ©ritable nom du service. En effet, si vous dĂ©sirez entreprendre une action en ligne de commande sur un service, sachez que ceux-ci ont toujours un nom anglais. Donc si vous tentez d'interagir avec un service avec PowerShell par exemple, vous aurez besoin du nom anglais. Nous verrons comment rĂ©cupĂ©rer celui-ci.
PropriĂ©tĂ©s d'un serviceâ
Onglet GĂ©nĂ©ralâ
Les propriétés d'un service permettent d'accéder à ses moindres détails et d'interagir avec celui-ci. Pour accéder aux propriétés d'un service, vous n'avez qu'à double-cliquer sur celui-ci directement dans la console des services. Le premier onglet des propriétés vous permettra d'obtenir le véritable nom du service ( Nom du service
), une brÚve description de ce que fait le service, de déterminer un type de démarrage et d'entreprendre des actions instantanément sur celui-ci.
Gestion du dĂ©marrage automatiqueâ
La plupart des services dĂ©marrent automatiquement avec le systĂšme d'exploitation. Cela dit, il peut ĂȘtre nĂ©cessaire d'utiliser d'autres modes de dĂ©marrage dans diffĂ©rents contextes. Voici donc les diffĂ©rents modes de dĂ©marrage que l'on peut configurer pour chaque service:
Type de démarrage | Description |
---|---|
Automatique | Le service démarre automatiquement au démarrage de Windows. C'est le mode par défaut pour la plupart des services essentiels. |
Manuel | Le service ne dĂ©marre pas automatiquement. Il doit ĂȘtre dĂ©marrĂ© manuellement par un utilisateur ou par un autre service. |
DĂ©sactivĂ© | Le service est dĂ©sactivĂ© et ne peut pas ĂȘtre dĂ©marrĂ©, mĂȘme manuellement. Cela peut ĂȘtre utilisĂ© pour des services non nĂ©cessaires. |
Automatique (Différé) | Le service démarre automatiquement aprÚs un délai de quelques minutes aprÚs le démarrage de Windows. Cela permet d'alléger le démarrage initial. |
Actions entreprises manuellementâ
Ăvidemment, les services en mode « Manuel » doivent ĂȘtre dĂ©marrĂ©s manuellement, soit par un autre administrateur, soit pas un autre service. Cette option implique donc qu'il faut ĂȘtre en mesure de dĂ©marrer et d'arrĂȘter un service manuellement. DiffĂ©rentes actions peuvent ĂȘtre accessibles selon les services. Ces actions auront une incidence directe sur l'Ă©tat du service.
Action | Description | Ătat du service |
---|---|---|
Démarrer | Lance le service, permettant son fonctionnement. | En cours d'exécution |
ArrĂȘter | Termine le service, mettant fin Ă son fonctionnement. | ArrĂȘtĂ© |
Suspendre | Met le service en pause, le laissant en mĂ©moire sans l'arrĂȘter complĂštement. | Suspendu |
Reprendre | Restaure un service suspendu pour qu'il reprenne son fonctionnement normal. | En cours d'exécution |
Vous remarquerez peut-ĂȘtre que pour certains services, vous ne bĂ©nĂ©ficiez pas de certaines possibilitĂ©s, comme le suspendre. Ou encore, dans le cas d'autres services, vous ne pouvez rien faire. C'est le cas par exemple du service de Pare-Feu Windows:
Plusieurs facteurs peuvent expliquer l'impossibilité d'entreprendre une ou plusieurs actions sur un service:
-
Services critiques: Certains services sont essentiels au fonctionnement du systĂšme d'exploitation, comme les services liĂ©s Ă la gestion des disques ou Ă la sĂ©curitĂ©. Les arrĂȘter pourrait rendre le systĂšme instable ou engendrer des risques importants.
-
DĂ©pendances: Si un service est nĂ©cessaire au bon fonctionnement d'autres services, il ne peut pas ĂȘtre arrĂȘtĂ© tant que ces autres services sont actifs. Cela garantit que le systĂšme fonctionne de maniĂšre cohĂ©rente.
-
ImplĂ©mentation technique: Certains services ne sont pas conçus pour gĂ©rer des Ă©tats d'arrĂȘt ou de suspension. Leur code peut ne pas prĂ©voir ces fonctionnalitĂ©s, ce qui rend impossible leur interruption sans provoquer des erreurs.
Onglet Connexionâ
L'onglet connexion permet (mais pas toujours) de dĂ©finir l'utilisateur qui exĂ©cutera le service en question. La grande majoritĂ© du temps, les comptes utilisĂ©s pour dĂ©marrer les services sont des comptes avec lesquels il est impossible d'ouvrir une session. Ce sont des comptes utilisĂ©s par Windows pour manĆuvrer le systĂšme. Parmi ces comptes on retrouve: Le compte SYSTEM, le compte Service Local et le compte Service RĂ©seau. Nous discuterons des utilisateurs et des groupes dans une autre section.
Onglet RĂ©cupĂ©rationâ
L'onglet « Récupération » permet de définir les actions à entreprendre en cas de défaillance du service. Un service est considéré en défaillance lorsqu'il ne fonctionne plus comme prévu. Cela peut se produire pour différentes raisons:
-
ArrĂȘt inopinĂ©: Si le service se termine de maniĂšre inattendue, il est considĂ©rĂ© en dĂ©faillance.
-
Ăchecs rĂ©pĂ©tĂ©s: Si un service Ă©choue Ă dĂ©marrer plusieurs fois consĂ©cutivement, il peut ĂȘtre marquĂ© comme dĂ©faillant.
-
Erreurs critiques: Les erreurs critiques dans le code du service ou des exceptions non gĂ©rĂ©es peuvent entraĂźner son arrĂȘt, le considĂ©rant en dĂ©faillance.
-
Timeout: Si le service prend trop de temps Ă dĂ©marrer (au-delĂ du dĂ©lai dĂ©fini), il peut ĂȘtre considĂ©rĂ© comme Ă©tant en dĂ©faillance Ă©galement.
Windows vous offre la possibilité de définir différentes actions pour une premiÚre défaillance, une seconde puis pour toutes les défaillances suivantes.
Actions possibles suite Ă une dĂ©faillanceâ
Action | Description |
---|---|
Aucune action | Ne fait rien en cas de dĂ©faillance. Le service reste arrĂȘtĂ© et aucun traitement n'est effectuĂ©. |
Redémarrer le service | Relance le service qui a échoué, tentant de le remettre en fonctionnement immédiatement. |
Redémarrer le systÚme | Redémarre l'ordinateur si le service échoue, ce qui peut résoudre les problÚmes de dépendances. |
Exécuter un programme | Lance un programme ou un script spécifique en cas de défaillance, permettant une action personnalisée. |
Selon ce que vous configurerez comme actions, vous aurez la possibilitĂ© de spĂ©cifier des options supplĂ©mentaires au bas de la fenĂȘtre.
DĂ©pendancesâ
Certains services dĂ©pendent d'autres services ou de pilotes systĂšme pour fonctionner. Si un composant du systĂšme est arrĂȘtĂ© ou ne fonctionne pas correctement, les services dĂ©pendants peuvent en ĂȘtre affectĂ©s. L'onglet « DĂ©pendances » permet d'obtenir la liste des composantes dont le service en question dĂ©pend, mais aussi la liste des autres services qui dĂ©pendent de celui-ci.
Administration des services avec PowerShellâ
PowerShell offre une gamme de commandes pour gérer les différents services sous Windows.
Obtenir la liste des servicesâ
Pour obtenir la liste des services et leur état avec PowerShell, on utilisera la commande Get-Service
Get-Service
Résultat:
Il est possible d'obtenir l'état d'un seul service en précisant son nom ( le vrai nom! ) avec le paramÚtre -name
Get-Service -Name Spooler
Résultat:
ArrĂȘter un serviceâ
Pour arrĂȘter l'exĂ©cution d'un service, nous pouvons utiliser la commande Stop-Service
, suivi du nom en paramĂštre.
Stop-Service -Name Spooler
Résultat:
DĂ©marrer un serviceâ
Pour démarrer un service, nous utiliserons la commande Start-Service
, suivi du nom en paramĂštre.
Start-Service -Name Spooler
Résultat:
RedĂ©marrer un serviceâ
Pour redémarrer un service, nous utiliserons la commande Restart-Service
, suivi du nom en paramĂštre.
Restart-Service -Name Spooler
Résultat: