Les scripts d'initialisation système V
Les services sont des scripts d'initialisation System V 1) se trouvant dans le dossier /etc/init.d/
.
Depuis Ubuntu 6.10, la méthode de gestion des services système (daemons) est en cours de migration vers un usage de « Upstart » qui permet une plus grande souplesse quant à la fonctionnalité des services.
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.
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)
Installez le paquet 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.
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:
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é défini par défaut.
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.
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
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.
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 « Les Services Système » une liste non exhaustive de logiciel permettant de gérer les services.
Liens
- Très bon article pour dégrossir les runlevel, paru sur le planet.