tail head cat sleep
QR code linking to this page

Manpage  — UNLINK

BEZEICHNUNG

unlink - löscht einen Namen und unter Umständen die Datei, auf die dieser verweist

INHALT

ÜBERSICHT

#include <unistd.h>

int unlink(const char *Pfadname);

BESCHREIBUNG

unlink löscht einen Namen aus dem Dateisystem. Wenn dieser Name der letzte Verweis auf eine Datei war und kein Prozeß die Datei geöffnet hält, wird sie gelöscht und der von ihr belegte Speicherplatz wird für die weitere Benutzung verfügbar gemacht.

Falls dieser Name der letzte Link auf die Datei war und keine Prozesse die Datei geöffnet haben, dann ist die Datei gelöscht und der benötigte Speicherplatz wieder freigegeben.

Falls der Name der letzte Link auf die Datei war, aber immer noch Prozesse die Datei geöffnet haben, bleibt die Datei bestehen bis die letzte Dateikennzahl, die sich auf die Datei bezieht, geschlossen ist.

Falls der Name auf einen symbolischen Link verwies, so ist dieser Link entfernt.

Falls der Name auf einen Socket, Fifo oder Gerät verwies, so ist der Name für dieses entfernt, aber Prozesse, die dieses Objekt geöffnet haben, können es weiterhin benutzen.

RÜCKGABEWERT

Bei Erfolg wird Null zurückgegeben. Bei einem Fehler -1 und errno entsprechend gesetzt.

FEHLER

EACCES Schreibzugriff auf das Verzeichnis, das Pfadname enthält, ist für die aktuell gültige uid des Prozesses nicht erlaubt, oder eines der Verzeichnisse in Pfadname erlaubt keinen Such- (Ausführ-) zugriff.
EPERM oder EACCES
  Das Verzeichnis, welches Pfadname enthält, hat das sticky-bit (S_ISVTX) gesetzt und die aktuell gültige uid des Prozesses ist weder die uid der zu löschenden Datei noch die uid des Verzeichnisses, das die Datei enthält
EPERM(nur Linux)
  Die Datei Pfadname ist ein Verzeichnis.
EFAULT Pfadname liegt außerhalb Ihres erreichbaren Adressraumes.
ENAMETOOLONG
  Pfadname ist zu lang.
ENOENT Ein Teil aus den Verzeichnissen in Pfadname existiert nicht oder ist ein schlackernder symbolischer Link.
ENOTDIR
  Ein Teil in Pfadname , welcher als Verzeichnis benutzt wird, ist kein Verzeichnis.
EISDIR Pfadname verweist auf ein Verzeichnis.
ENOMEM Es ist nicht ausreichend freier Kernel-Speicher verfügbar.
EROFS Pfadname verweist auf ein Verzeichnis eines Nur-Lese-Dateisystems.
ELOOP Bei der Übersetzung von Pfadname treten zu viele symbolische Links auf
EIO Ein E/A Fehler ist aufgetreten.

KONFORM ZU

SVr4, SVID, POSIX, X/OPEN, 4.3BSD. Zusätzliche Fehlerzustände bei SVr4 Dokumenten EBUSY, EINTR, EMULTIHOP, ETXTBUSY, ENOLINK.

BUGS

Unglücke in dem NFS unterliegenden Protokol kann das unerwartete Verschwinden von Dateien, welche noch benötigt werden, verursachen.

SIEHE AUCH

link(2), rename(2), open(2), rmdir(2), mknod(2), mkfifo(3), remove(3) [Englisch], rm(1).

21 August 1997 UNLINK (2) Linux 2.0.30

tail head cat sleep
QR code linking to this page


Bitte richten Sie Ihre Kommentare zu diesem Handbuch Seite Service, Ben Bullock. Privacy policy.

If it wasn't for C, we'd be using BASI, PASAL and OBOL