acct subroutine

Zweck

Aktiviert und inaktiviert die Prozessabrechnung.

Bibliothek

Standard-C-Bibliothek (libc.a)

Syntax

int acct ( Path)
char *Path;

Beschreibung

Die Subroutine acct aktiviert die Abrechnungsroutine, wenn der Parameter Pfad den Pfadnamen der Datei angibt, in die ein Abrechnungsdatensatz für jeden Prozess geschrieben wird, der beendet wird. Wenn der Parameter Pfad einen Wert von 0 oder null hat, inaktiviert die Subroutine acct die Abrechnungsroutine.

Wenn der Parameter Pfad auf einen symbolischen Link verweist, bewirkt die Subroutine acct , dass Datensätze in die Datei geschrieben werden, auf die der symbolische Link verweist.

Wenn Network File System (NFS) auf Ihrem System installiert ist, kann sich die Abrechnungsdatei auf einem anderen Knoten befinden.

Hinweis: Zur Sicherstellung einer korrekten Abrechnung muss jeder Knoten über eine eigene Abrechnungsdatei verfügen. Obwohl keine zwei Knoten Abrechnungsdateien gemeinsam nutzen sollten, können sich die Abrechnungsdateien eines Knotens auf jedem Knoten im Netz befinden.

Der aufrufende Prozess muss Rootberechtigung haben, um die Subroutine acct verwenden zu können.

Parameter

Element Beschreibung
Pfad Gibt einen Zeiger auf den Pfadnamen der Datei oder einen Nullzeiger an.

Rückgabewerte

Nach erfolgreicher Beendigung gibt die Subroutine acct den Wert 0 zurück. Andernfalls wird ein Wert von -1 zurückgegeben und die globale Variable errno wird gesetzt, um den Fehler anzuzeigen.

Fehlercodes

Die Subroutine acct ist nicht erfolgreich, wenn mindestens eine der folgenden Bedingungen zutrifft:

Element Beschreibung
EACCES Die Schreibberechtigung für die angegebene Abrechnungsdatei wird verweigert.
EACCES Die mit dem Parameter Pfad angegebene Datei ist keine normale Datei.
EBUSY Es wird versucht, die Abrechnung zu aktivieren, wenn sie bereits aktiviert ist.
ENOENT Die mit dem Parameter Pfad angegebene Datei ist nicht vorhanden.
EPERM Der aufrufende Prozess verfügt nicht über Rootberechtigung.
EROFS Die benannte Datei befindet sich auf einem schreibgeschützten Dateisystem.

Wenn NFS auf dem System installiert ist, ist die Subroutine acct nicht erfolgreich, wenn Folgendes zutrifft:

Element Beschreibung
ETIMEDOUT Das Zeitlimit für die Verbindung wurde überschritten.