{{tag>système administration services}}
----
====== Les scripts d'initialisation système V ======
Cette page traite des [[services]] gérés par les scripts System V. Vous trouverez d'autres informations sur les [[services]] sur la page de <<** [[Upstart]] **>> et <<** [[systemd]] **>>.
Les [[services]] sont des scripts d'initialisation System V ((Version majeure d' une des deux principales branches de la famille des systèmes UNIX)) se trouvant dans le dossier **''/etc/init.d/''**.\\
Depuis [[:Xenial|Ubuntu 16.04]], la méthode de gestion des services système (daemons) est en cours de migration vers <<** [[systemd]] **>>, qui permet une plus grande souplesse quant à la fonctionnalité des services. Entre deux, [[:edgy|Ubuntu 6.10]] avait à l'époque commencé à migrer vers [[Upstart]] pour les mêmes raisons et est aujourd'hui remplacé par [[systemd]].\\
Un service peut être exécuté au démarrage de la machine, tel qu'expliqué dans la section << [[#Modifier définitivement un service]] >>.\\
Néanmoins, il peut arriver d'avoir besoin de connaitre l'état d'un service ou de vouloir le modifier sans relancer la machine.\\
Bien qu'il existe différents [[#logiciels]] effectuant cette tâche, la gestion des services se fait traditionnellement par l'usage de la ligne de commande dans un [[:terminal]] ou une [[:console]].\\
Vu le risque que peut engendrer la mauvaise gestion des [[services]], la plupart des commandes nécessitent les droits [[:sudo|administrateur]].
=====Lister les services démarrés=====
====Avec Service====
Saisissez dans un [[:terminal]] :
service --status-all
Vous obtenez la liste des services disponibles sur votre machine.
====Avec Sysv-rc-conf (services sysV)====
[[:tutoriel:comment_installer_un_paquet#paquet_present_dans_les_depots|Installez le paquet]] **[[apt://sysv-rc-conf|sysv-rc-conf]]**.
Saisissez dans un [[:terminal]]
sudo sysv-rc-conf --list
Vous obtenez la liste des services démarrés.\\
La commande sysv-rc-conf sans option vous envoie dans une interface ncurse vous permettant de modifier la configuration des services selon le runlevel.\\
La page de documentation << **[[:init_d]]** >> donne une description de la plupart des services.
=====Modifier un service ponctuellement=====
Pour pouvoir piloter un service ponctuellement, il existe la commande
sudo service NomService ACTION
Où
* NomService est le nom du service a impacter,
* ACTION est la commande que l'on souhaite appliquer au dit service.
La plupart des actions possibles sont:
* start ((démarrage))
* stop ((arrêt))
* force-stop ((forcer l'arrêt))
* restart ((relancer))
* reload ((recharger))
* force-reload ((forcer le rechargement))
* status ((état))
L'action ''force-restart'' exécute le script de stop puis, s'il s'est correctement déroulé, le script de start.\\
Quelque-soit l'action menée sur un service, au prochain démarrage de la machine celui-ci devrait retrouver le status qui lui a été [[#Modifier définitivement un service|défini par défaut]].
À noter qu'il est également possible d'employer la commande ''**sudo invoke-rc.d NomService ACTION**'' ou encore ''**sudo /etc/init.d/NomService ACTION**''.
===Exemples===
service cron status
donnera l'état du service [[:cron]] ainsi que son PID si celui-ci est actif,
sudo service udev restart
relancera le service [[:udev]],
sudo service gdm stop
exécuté dans une [[:console]] arrêtera le serveur graphique.
=====Modifier définitivement un service=====
La commande **''update-rc.d''** permet d'activer ou désactiver un service afin que le script system V associé soit ou non exécuté au démarrage.\\
Son bon usage permet d'optimiser conséquemment la machine sur laquelle elle est usitée.\\
En effet, certains services de démarrage peuvent ne pas être utiles à votre configuration, surtout si vous utilisez un ordinateur de bureau.
Faites bien attention à ce qui va suivre, vous devez absolument les adapter à **VOTRE** cas, selon **VOTRE** configuration ! Si vous n'êtes pas sûr, alors ne touchez à rien !
====Utilisation====
Appliquer au service la valeur par défaut :
sudo update-rc.d NomService defaults
Définition explicite, où XX sera un numéro d'ordre d'arrêt ou de lancement selon le runlevel (0 à 6) :
sudo update-rc.d NomService start XX 2 3 4 5 . stop XX 0 1 6 .
Suppression d'un service :
sudo update-rc.d NomService remove
**Faites attention aux services que vous modifiez !** \\ Modifier le comportement d'un service peut rendre inopérant votre système Ubuntu. Ne désactivez que les service que vous connaissez et dont vous savez qu'ils ne causeront aucun tort au processus de démarrage d'Ubuntu.
Il est possible que certaines manipulations ne soit plus effectives. Se reporter alors sur les pages << [[services|Les services système]] >> et << [[Upstart]] >> pour réaliser les optimisations proposées avec le nouveau système de gestion des services.
====Services propres aux PCs portable====
Voilà donc les premiers services à désactiver si vous ne possédez pas de portable : ceux qui sont spécifiques aux ordinateurs portables.
==PCMCIA==
Vous connaissez sûrement les cartes PCMCIA. Elles ont à peu près la forme de carte à jouer. Elles peuvent avoir différentes fonctions : carte réseau, carte modem, carte Wi-Fi, extenseur de port usb, etc...\\
On désactive ce service en saisissant les commandes suivantes :
sudo update-rc.d -f pcmciautils remove
sudo update-rc.d -f pcmcia remove
==Bluetooth==
Le Bluetooth est similaire au Wi-Fi, mais plus adapté à des transferts de petites données (oreillettes, pda, ...).\\
On désactive ce service en saisissant les commandes suivantes :
sudo update-rc.d -f bluetooth remove
sudo update-rc.d -f bluez-utils remove
==Hotkeys==
Les claviers sur les portables se réduisent souvent au strict minimum au niveau des touches. Vous avez sûrement remarqué les touches "Fn" (en bleu), qui servent aussi à régler le volume, le contraste et la luminosité. Vous avez sûrement aussi remarqué que le pavé numérique est contenu dans les touches normales.\\
On désactive ce service en saisissant la commande suivante :
sudo update-rc.d -f hotkey-setup remove
==Batterie==
Un PC portable, ça utilise une batterie, vous le savez :). Mais dans un PC de bureau, ça n'a strictement aucune utilité !!\\
On désactive ce service en saisissant la commande suivante :
sudo update-rc.d -f laptop-mode remove
====Si vous avez une connexion ADSL====
Si vous avez une connexion ADSL, les services pppd-dns et dns-clean ne vous serviront à rien. Ces derniers permettent surtout de gérer les connexions de type dial-up (ancien modem RTC).\\
On désactive ce service en saisissant les commandes suivantes :
sudo update-rc.d -f dns-clean remove
sudo update-rc.d -f pppd-dns remove
====Services pour les technologies récentes====
Si vous possédez une vieille configuration, il pourra être utile de désactiver d'autres services :
==RAID==
Le RAID permet d'utiliser plusieurs disques-dur de manière intelligente, afin de gagner en rapidité, ou en sécurité.\\
* RAID0 : Partage de données entre plusieurs disques-durs.
* RAID1 : Duplication des données (Si un disque-dur pète, on ne perd aucunes données !)
* RAID 5, 10 : D'autres types de RAID\\
On désactive ce service en saisissant les commandes suivantes :
sudo update-rc.d -f mdadm remove
sudo update-rc.d -f mdadm-raid remove
==LVM==
La gestion par volumes logiques (en anglais, Logical Volume Management ou [[:LVM]]) est une méthode de découpage, de concaténation et d'utilisation des espaces de stockage d'un serveur. (Définition : http://fr.wikipedia.org)\\
On désactive ce service en saisissant la commande suivante :
sudo update-rc.d -f lvm remove
==EVM==
Ce service s'appelle "evms", pour "Enterprise Volume Management System". Il est inutile pour un PC de bureau classique.\\
On désactive ce service en saisissant la commande suivante :
sudo update-rc.d -f evms remove
====Gestion de l'énergie====
Le service apm sert, quant à lui, à la gestion de l'énergie.\\
Si la commande " **''apm''** " vous affiche " **''No APM support in kernel''** " dans un [[:terminal]], vous pouvez le désactiver :
sudo update-rc.d -f apmd remove
====Programmes====
==fetchmail==
Un logiciel intégré à certains bureaux. A désactiver si vous n'utilisez pas de logiciel en rapport avec les protocoles POP, STMP, IMAP (Evolution, Thunderbird, etc...). Néanmoins, le nombre de personnes n'utilisant pas le courrier électronique est très réduit.\\
On le désactive en saisissant la commande suivante :
sudo update-rc.d -f fetchmail remove
==Date et heure==
Ce service synchronise votre horloge avec un serveur distant central. A vous de voir si vous voulez activer ce service ou non.\\
On le désactive en saisissant la commande suivante :
sudo update-rc.d -f ntpdate remove
====Périphériques externes====
==Service d'imprimante==
Si vous ne disposez pas d'imprimante, vous pouvez désactiver ce service. Le jour où vous en installez une, pensez à le réactiver :).\\
On le désactive en saisissant la commande suivante :
sudo update-rc.d -f cupsys remove
==Service pour les imprimantes HP==
si vous ne disposez pas d'une imprimante HP, vous pouvez désactiver ce service. Si un jour vous achetez une imprimante HP, pensez à le réactiver :).\\
On le désactive en saisissant la commande suivante :
sudo update-rc.d -f hplip remove
==Modem==
Si vous n'utilisez pas de modem, désactivez ce service en saisissant la commande suivante :
sudo update-rc.d -f dns-clean remove
Cette commande a déjà été utilisée, elle est donc inutile.
=====Réactivation d'un service=====
Pour réactiver le service pcmcia par exemple :
sudo update-rc.d pcmcia defaults
sudo update-rc.d pcmciautils defaults
====Bus de communication dbus====
Ce service est indispensable pour monter vos disques externes.\\
Si vous désactivez ce service par erreur vous devriez voir ce message d'erreur :
" ''**failed to initialize HAL**'' "
Pour résoudre ce problème, réactivez le service dans une console :
sudo update-rc.d -f dbus remove
sudo update-rc.d dbus defaults 12
=====Logiciels=====
Vous trouverez sur la page <<** [[Services#logiciels|Les Services Système]] ** >> une liste non exhaustive de logiciel permettant de gérer les services.
=====Liens=====
* [[https://forum.ubuntu-fr.org/viewtopic.php?id=68620|Le topic du forum à l'origine de cette page]]
* [[http://www.ubuntuforums.org/showthread.php?t=89491|Un post similaire en anglais]]
* [[https://wiki.ubuntu.com/InitScriptHumanDescriptions|Liste des services [en]]]
* [[http://www.zebulon.fr/dossiers/62-optimiser-linux.html|Article sur Zebulon.fr]]
* [[http://plfnicolarius.free.fr/tutoriel_logiciel_linux_controler_le_demarrage_de_debian_et_ubuntu.php|Tutoriel complet sur la gestion du démarrage avec les différentes solutions existantes]]
* [[http://www.generation-linux.fr/index.php?post/2009/01/22/Cours-Linux-%3A-les-runlevels|Très bon article]] pour dégrossir les runlevel, paru sur le planet.
----
//Contributeurs : [[:utilisateurs:adam0509]],[[:utilisateurs:fabux]],//