Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ rmdir(2) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

mkdir(1)

rm(1)

rmdir(1)

mkdir(2)

remove(3C)

unistd(4)

rmdir(2)                                                           rmdir(2)

NAME
     rmdir - Verzeichnis entfernen

SYNTAX
     #include <unistd.h>

     int rmdir(const char *path);

BESCHREIBUNG
     rmdir() entfernt das Verzeichnis, das durch den Pfadnamen angegeben
     ist, auf den path zeigt. Das Verzeichnis darf nur die Einträge "." und
     ".." enthalten.

     Wenn path das Root-Verzeichnis oder das Verzeichnis eines aktiven Pro-
     zesses bezeichnet, ist das Verhalten von rmdir() nicht spezifiziert.

     Wenn der Link-Zähler des Verzeichnisses 0 wird und kein Prozeß das
     Verzeichnis geöffnet hat, wird der vom Verzeichnis belegte Speicher
     freigegeben. Auf das Verzeichnis kann nicht mehr zugegriffen werden.
     Wenn einer oder mehrere Prozesse das Verzeichnis geöffnet haben, wäh-
     rend der letzte Link entfernt wird, werden die Einträge "." und ".."
     entfernt, bevor rmdir() zurückkehrt. Es können keine neuen Einträge in
     dem Verzeichnis erzeugt werden, aber das Verzeichnis wird so lange
     nicht entfernt, bis alle Verweise darauf geschlossen worden sind.

     Wenn path ein symbolischer Link ist, wird dieser nicht verfolgt.

     Nach erfolgreicher Beendigung kennzeichnet rmdir() die Felder stctime
     und stmtime des übergeordneten Verzeichnisses zur Aktualisierung.

FEHLER
     Die folgenden Beschreibungen der Fehlercodes sind funktionsspezifisch.
     Eine allgemeingültige Beschreibung finden Sie in introprm2(2) bzw. in
     errno(5).

     Das angegebene Verzeichnis wird entfernt, sofern nicht einer oder meh-
     rere der nachstehenden Punkte zutreffen:

     EACCES        Für eine Komponente des Pfadpräfixes wird die Suchbe-
                   rechtigung verweigert, oder für das Elternverzeichnis
                   des zu entfernenden Verzeichnisses wird die Schreibbe-
                   rechtigung verweigert.

     EACCES        Im übergeordneten Verzeichnis ist das Sticky-Bit
                   gesetzt, und das übergeordnete Verzeichnis gehört nicht
                   dem Benutzer; das Verzeichnis gehört nicht dem Benutzer
                   und kann vom Benutzer nicht beschrieben werden; der
                   Benutzer ist kein Systemverwalter.

     EBUSY         Das zu entfernende Verzeichnis ist das aktuelle Ver-
                   zeichnis des Systems oder eines anderen Prozesses.




Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

rmdir(2)                                                           rmdir(2)

     EEXIST oder ENOTEMPTY
                   Das Verzeichnis enthält außer "." und ".." weitere Ein-
                   träge.

     EFAULT        path weist über den zugewiesenen Adreßraum des Prozesses
                   hinaus.

     EINVAL        Das Verzeichnis, das entfernt werden soll, ist das aktu-
                   elle Verzeichnis.

     EINVAL        Das Verzeichnis, das entfernt werden soll, ist der "."-
                   Eintrag eines Verzeichnisses.

     EIO           Ein E/A-Fehler ist während des Zugriffs auf das Dateisy-
                   stem aufgetreten.

     ELOOP         Bei der Auflösung von path wurden zuviele symbolische
                   Links angetroffen.

     EMULTIHOP     Die Komponenten von path erfordern den Sprung auf meh-
                   rere ferne Rechner, und das Dateisystem läßt dies nicht
                   zu.

     ENAMETOOLONG  Das Argument path ist länger als PATHMAX oder eine
                   Pfadkomponente ist länger als NAMEMAX.

     ENOTDIR       Eine Komponente des Pfads ist kein Verzeichnis.

     ENOENT        Das angegebene Verzeichnis ist nicht vorhanden oder ist
                   der Null-Pfadname.

     EROFS         Der zu entfernende Verzeichniseintrag ist Teil eines
                   schreibgeschützten Dateisystems.

     EPERM oder EACCES
                   Das Flag SISVTX ist im Elternverzeichnis des zu entfer-
                   nenden Verzeichnisses gesetzt, und der Aufrufende ist
                   weder der Eigentümer des zu entfernenden Verzeichnisses
                   noch des Elternverzeichnisses und verfügt nicht über die
                   entsprechenden Berechtigungen

     ENOLINK       path weist auf einen fernen Rechner, und die Verbindung
                   zu diesem Rechner ist nicht mehr aktiv.

     Die Funktion rmdir() kann bei folgender Bedingung fehlschlagen:

     ENAMETOOLONG  Die Auflösung des Pfadnamens eines symbolischen Links
                   hat ein Zwischenergebnis erzeugt, dessen Länge PATHMAX
                   überschreitet.





Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

rmdir(2)                                                           rmdir(2)

ERGEBNIS
     Bei erfolgreicher Beendigung liefert rmdir() 0 zurück. Andernfalls
     wird -1 zurückgegeben und errno gesetzt, um den Fehler anzuzeigen.

SIEHE AUCH
     mkdir(1), rm(1), rmdir(1), mkdir(2), remove(3C), unistd(4).
















































Seite 3                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026