09-02-2001
Wijzigingen | ||
---|---|---|
Herziening 1.1 | 09-02-2001 | Herzien door: KET |
Herziening 1.0 | 08-08-1997 | Herzien door: AMCT |
Dit document is copylefted door Albert M.C. Tam (bertie@scn.org). Het is hierbij toegestaan dit document voor niet commerciële doeleinden te gebruiken, kopiëren, op voorwaarde dat de naam van de auteur/editor en deze vermelding in alle kopieën verschijnt en/of in alle ondersteunende documenten en op voorwaarde dat dit document niet wordt aangepast. Dit document wordt gedistribueerd in de hoop dat het van nut zal zijn, maar ZONDER ENIGE GARANTIE noch uitdrukkelijk noch impliciet. Ondanks dat alle moeite is genomen om de accuraatheid van de informatie in dit document te verzekeren, aanvaardt de auteur/editor/beheerder GEEN AANSPRAKELIJKHEID voor fouten, of voor beschadigingen resulterend uit het gebruik van de informatie in dit document.
In dit document wordt beschreven hoe systeemproces accounting onder een Linux host te activeren en wordt het gebruik van diverse procesaccounting opdrachten behandeld. Het is bedoeld voor gebruikers met kernelversies groter dan of gelijk aan 1.3.73 (getest onder RedHat™ 4.1 kernel 2.0.27). Voor kernels ouder dan 1.3.73 is wellicht een patch nodig om de proces accounting feature te kunnen gebruiken.
Stuur gerust feedback of commentaar naar bertie@scn.org als je een fout aantreft of er informatie ontbreekt. Ik waardeer dat.
Proces accounting is een methode om onder Linux uitgevoerde opdrachten op te nemen en op te sommen. De moderne Linux kernel kan procesaccounting records voor de uitgevoerde opdrachten bijhouden, de gebruiker die de opdracht uitvoerde, de CPU tijd en nog veel meer dan dat.
Procesaccounting biedt je de mogelijkheid gedetailleerde accounting informatie over de gebruikte systeembronnen bij te houden, de toewijzing tussen gebruikers en systeemmonitoring.
Ondersteuning voor procesaccounting is in de nieuwere kernels (versie >= 1.3.73) geïntegreerd. Als je een oudere kernel draait, heb je wellicht wat patch files nodig. De patches zijn beschikbaar vanaf ftp://iguana.hut.fi/pub/linux/Kernel/process_accounting
Een Linux kernelversie gelijk aan of groter dan versie 1.3.73 is nodig, en ik raad je versie 2.x aan. De kernel source is beschikbaar vanaf http://sunsite.unc.edu/pub/Linux/kernel/v2.0
Afhankelijk van de in gebruik zijnde Linux distributie, is het procesaccouting softwarepackage wel of niet op het systeem geïnstalleerd. Probeer het package te downloaden vanaf http://sunsite.unc.edu/pub/Linux/system/admin/quota-acct-modified.tgz als je het niet hebt.
Compileer en installeer de procesaccounting software.
Het procesaccounting softwarepackage is beschikbaar vanaf http://sunsite.unc.edu/pub/Linux/system/admin/quota-acct-modified.tgz
Pas het initscript op je systeem aan om de procesaccounting tijdens de systeemstart te activeren:
Hier is een voorbeeld
# Activeer procesaccounting. if [ -x /sbin/accton ] then /sbin/accton /var/log/pacct echo "Procesaccounting geactiveerd." fi |
Maakt een accounting record bestand "pacct." aan
Standaard zal de procesaccounting software alle uitgevoerde opdrachten opslaan in het bestand /var/log/pacct.
Voor het aanmaken van het accounting record bestand, geef je de opdracht:
touch /var/log/pacct |
De eigenaar van dit record bestand is root, en het heeft voor root read-write permissies ingesteld en voor alle andere alleen read permissie:
chown root /var/log/pacct chmod 0644 /var/log/pacct |
Reboot.
Start je systeem nu opnieuw op om de wijzigingen te activeren.
ac drukt statistieken af over verbindingstijden van gebruikers in uren gebaseerd op de logins en logouts in het huidige /var/log/wtmp bestand. ac kan ook totalen in tijd afdrukken voor elke dag (optie -d) en voor elke gebruiker (optie -p).
accton wordt gebruikt om procesaccounting aan- of uit te zetten. Dit bestand wordt normaal gesproken tijdens de systeemstart of -shutdown uitgevoerd via systeem initscripts.
last doorloopt het /var/log/wtmp bestand en drukt informatie af over verbindingstijden van gebruikers.
sa geeft een opsomming van accounting informatie van eerder uitgevoerde opdrachten, software I/O bewerkingstijden, en CPU tijden, zoals opgenomen in het accounting record bestand /var/account/pacct.
lastcomm drukt alle informatie af over alle eerder uitgevoerde opdrachten, opgenomen in /var/account/pacct.