Provided by:
manpages-de-dev_0.5-4.1ubuntu1_all 
BEZEICHNUNG
unlink - löscht einen Namen und unter Umständen die Datei, auf die
dieser verweist
Ü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 Prozess 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 Protokoll 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),
rm(1).