Comment activer la comptabilité des processus sous Linux

Albert M. C. Tam, bertie@scn.org
Adaptation française par Miodrag Vallat.

8 Août 1997
Décrit comment activer la comptabilité des processus sur un système Linux, et l'emploi des diverses commandes de comptabilité des processus.

1. Introduction

Ce document décrit comment activer la comptabilité des processus sur un système Linux, et l'emploi des diverses commandes de comptabilité des processus. Il s'adresse aux utilisateurs des noyaux de version 1.3.73 ou ultérieure (testé récemment avec un système RedHat 4.1 de noyau 2.0.27). Les noyaux plus anciens que le 1.3.73 nécessitent une rustine afin de pouvoir disposer de la comptabilité des processus.

Ce document est placé en «copyleft» par Albert M. C. Tam, bertie@scn.org. Vous êtes autorisé à utiliser, copier et distribuer ce document à des fins non commerciales, tant que le nom de l'auteur et ce copyright est préservé dans chaque copie, et que le document n'est pas modifié. Ce document est distribué car potentiellement utile, mais sans aucune garantie, ni explicite, ni implicite. Bien qu'un grand soin ait été apporté pour s'assurer de la justesse de ce document, l'auteur et le traducteur ne pourront être tenus responsables de toute erreur ou dommage causés par l'utilisation des informations contenues dans ce document.

N'hésitez pas à envoyer vos remarques et suggestions à l'auteur, bertie@scn.org si vous découvrez des erreurs ou s'il manque des informations. J'en serai ravi.

2. Qu'est-ce que la comptabilité des processus ?

La comptabilité des processus est l'opération d'enregistrement et de récapitulation des commandes exécutées sous Linux. Les noyaux Linux récents sont capables de maintenir des informations sur les commandes exécutées, l'utilisateur les ayant exécutées, le temps CPU consacré, et bien plus encore.

La comptabilité des processus vous permet de conserver des informations détaillées sur les ressources système utilisées, leur répartition entre les utilisateurs, et de surveiller le système.

3. Où en est la comptabilité des processus sous Linux ?

Le support de comptabilité des processus a été intégré dans les noyaux récents à partir de la version 1.3.73. Si vous utilisez un noyau plus ancien, il vous faudra des rustines. Celles-ci sont disponibles en ftp://iguana.hut.fi/pub/linux/Kernel/process_accounting

4. Besoins de la comptabilité des processus sous Linux

4.1 Noyau

Un noyau Linux de version 1.3.73 ou ultérieure ; je recommande une version 2.x. Les sources du noyau sont disponibles en http://metalab.unc.edu/pub/Linux/kernel/v2.0

4.2 Logiciels de comptabilité

Selon votre distribution Linux, les logiciels de comptabilité seront ou ne seront pas installés sur votre système. S'ils ne le sont pas, essayez de les télécharger en http://metalab.unc.edu/pub/Linux/system/admin/quota-acct-modified.tgz

5. Mise en place de la comptabilité des processus sous Linux

5.1 Compiler et installer les logiciels de comptabilité

Les logiciels de comptabilité sont disponibles en http://metalab.unc.edu/pub/Linux/system/admin/quota-acct-modified.tgz

5.2 Modifier les scripts d'initialisation du système pour lancer la comptabilité des processus au démarrage

Voici un exemple :

        # Activer la comptabilité des processus.
        if [ -x /sbin/accton ]
        then
                /sbin/accton /var/log/pacct
                        echo "Comptabilité des processus activée."
        fi

5.3 Créer le fichier de statistiques «pacct»

Vos logiciels de comptabilité exécuteront leurs commandes sur le fichier /var/log/pacct par défaut.

Pour créer le fichier de statistiques :

        touch /var/log/pacct

Ce fichier de statistiques doit être la propriété de root, avec permission de lecture et d'écriture pour root, et permission de lecture pour le reste du monde :

        chown root /var/log/pacct
        chmod 0644 /var/log/pacct

5.4 Redémarrer

Redémarrer le système pour que les modifications prennent effet.

6. Commandes de comptabilité diverses

6.1 ac

ac affiche des statistiques sur le temps de connexion des utilisateurs en heures, en fonction des logins et des logout du fichier /var/log/wtmp. ac est également capable d'afficher les temps totaux par jour (option -d), et par utilisateur (option -p).

6.2 accton

accton est utilisé pour activer ou désactiver la comptabilité des processus. Cette commande est généralement exécutée au démarrage ou à l'arrêt du système via les scripts d'initialisation.

6.3 last

last parcourt le fichier /var/log/wtmp et affiche des informations sur le temps de connexion des utilisateurs.

6.4 sa

sa résume les statistiques de comptabilité de la commande précédente, triées par temps d'entrées/sorties, temps processeur, depuis le fichier /var/account/pacct.

6.5 lastcomm

lastcomm affiche la liste de toutes les commandes précédemment exécutées, depuis le fichier /var/account/pacct.