Howtos GNU/Linux .: kozaki :. Howtos GNU/Linux

Gestion des DAEMONS

Les deamons (démons, services) sont des programmes résidents chargés au démarrage. A chaque runlevel, correspond une liste de deamons à lancer (1 à 5) ou à arrêter (6).

Fonctionnement

Ils sont lancés par des scripts situés dans /etc/rc.d/init.d (chaque script contient une description ce qui permet de savoir ce que fait chaque deamon).

Le répertoire /etc/rc.d/ contient aussi des répertoires nommés rcX.d (avec X numéro de runlevel). Chacun de ces répertoires contient un lien vers les scripts situés dans init.d.

Exemple:
$ ls -l /etc/rc.d/rc5.d
rwxrwxrwx 1 root root 13 Jun 16 23:23 K30usb -> /etc/rc.d/init.d/usb*
lrwxrwxrwx 1 root root 16 Jun 17 00:03 S30syslog -> /etc/rc.d/init.d/syslog*
lrwxrwxrwx 1 root root 18 Jun 17 00:05 S75keytable -> /etc/rc.d/init.d/ keytable*
La 1ère lettre détermine si le deamon est activé (S) ou non (K).
Les 2 numéros précisent le niveau d'ordre d'execution (dans l'exemple, syslog est démarré avant keytable).

Commandes utiles

Plutot que de modifer directement les liens, on va utiliser la commande suivante:
/etc/rc.d/init.d/nom_deamon {start|stop|restart|reload|status}
Exemple:
/etc/rc.d/init.d/linuxconf start
suite les options start/stop lancent/arretent le deamon spécifié pour tous les niveaux.
La commande chkconfig est un peu plus puissante:
Pour ajouter un deamon dans tous les niveaux de demarrage:
/sbin/chkconfig --add le_demon
Note: le deamon doit obligatoirement se trouver dans /etc/rc.d/init.d.
Pour lister tous les deamons avec leurs status:
$ /sbin/chkconfig --list
atd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
xfs 0:on 1:on 2:on 3:on 4:on 5:on 6:on
keytable 0:off 1:off 2:on 3:on 4:on 5:on 6:off
gpm 0:off 1:off 2:on 3:on 4:on 5:on 6:off
Autre option:
/sbin/chkconfig --list le_deamon
pour ne lister que celui souhaité.
Pour activer ou désactiver un deamon:
/sbin/chkconfig --level 123456 mon_deamon on/off
(avec 123456 le(s) runlevel(s) pour le(s)quel(s) le deamon doit être ou non activé, ex : --level 345).

Pour plus de détails, voir la man page.

C'est bien beau, mais si je dois me tapper tout ça à la mimine...
Stop, Linux a pensé à nous, et pour se simplifier la tache, on a plusieurs outils: Linuxconf via Panneau de configuration/gestion des services (qui stoppe ou arrete un deamon pour tous les runlevels), Runleveleditor (qui permet de choisir pour chaque runlevel les deamons à activer ou non), Ksys, etc...fait ton choix camarade ;-)

Faire du ménage

Dans mon cas et à titre d'exemple (internet, pas d'imprimante, travail sous X, son) je ne garde en activité que : syslog, xfs, keytable.

Pour information, voici une liste non exhaustive et sans garantie de quelques deamons et de leur fonctions.

  • apmd : Gestion de la fréquence processeur ; nécessaire uniquement sur les ordinateurs portables
  • xntpd : Network time protocol
  • portmap : nécessaire si vous utilisez un service rpc, comme NIS ou NFS
  • sound : configuration des sons (ma carte fonctionne très bien sans ??? ndlr:normal si le fichier /etc/modules.conf est bien conçu)
  • netfs : c'est le client nfs, utilisé pour mounter des filesystems depuis un serveur nfs
  • rstatd , rusersd, rwhod, rwalld: ne pas exécuter tous les services: fournissent trop d'infos aux utilisateurs à distance
  • bootparamd : Utilisé par les clients sans lecteur de disquette (vulnérable)
  • squid : serveur proxy
  • yppasswdd : nécessaire si vous êtes un serveur NIS (extrêmement vulnérable)
  • ypserv : nécessaire si vous êtes un serveur NIS (idem)
  • dhcpd : démarre le daemon du serveur dhcp
  • atd : utilisé pour le service at, similaire à cron, mais n'est pas nécessaire
  • pcmcia : parle de lui-même
  • snmpd : daemon SNMP, peut donner à des utilisateurs distants des infos détaillées sur votre système
  • named : serveur DNS
  • routed : RIP, n'exécutez cela que si vous en avez vraiment besoin
  • lpd : services d'impression
  • mars-nwe : fichier Netware et serveur d'impression
  • nfs : Utilisé pour le serveur NFS, lancez le que si vous en avez absolument besoin
  • amd : daemon AutoMount, sert à mounter les filesystems distants
  • gated : sert à lancer d'autres protocoles de routage comme OSPF
  • sendmail : Pour l'envoi d'emails depuis la machine indépendament de tout serveur SMTP externe.
  • httpd : le serveur web Apache
  • ypbind : nécessaire si vous êtes un client NIS
  • xfs : xfont server (indispensable si vous êtes sous X).
  • innd : serveur de news
  • arpwatch : off par défaut. Rapport d'activité de datagrammes IP via mail
  • kudzu : détection des periphériques. À réactiver à l'occasion
  • anacron : reprise de jobs de la crontab au démarrage
  • crond : si vous n'utilisez pas une crontab (ou ne savez pas ce que c'est), désactivez-le.
  • rawdevices : partitions spécifique sous ORACLE ou autre SGBD
  • random : améliore la génération aléatoire de nombres (peut être utile pour les joueurs)
  • rhnd : redhat network
  • linuxconf : j'utilise linuxconf sans ce deamon (peut être est-ce utile pour l'administration à distance ?)
  • nfslock : si vous n'êtes pas serveur NFS, désactivez-le
  • usb : parle de lui-même
  • gpm : fourni des fonctions pour le support de la souris en mode texte (copier/coller en mode console, et utile avec midnight commander)

Liens

Trop cool pour Internet Explorer