Provided by: manpages-de-dev_0.10-1_all bug

BEZEICHNUNG

       unlink  -  loscht  einen  Namen  und unter Umstanden die Datei, auf die
       dieser verweist

       Diese Handbuchseite ist eventuell veraltet. Im Zweifelsfall ziehen  Sie
       die englischsprachige Handbuchseite zu Rate, indem Sie

              man -LC 2 unlink

       eingeben.

"UBERSICHT

       #include <unistd.h>

       int unlink(const char *Pfadname);

BESCHREIBUNG

       unlink  loscht  einen  Namen aus dem Dateisystem.  Wenn dieser Name der
       letzte Verweis auf eine Datei war und kein Prozess die  Datei  geoffnet
       halt,  wird sie geloscht und der von ihr belegte Speicherplatz wird fur
       die weitere Benutzung verfugbar gemacht.

       Falls dieser Name der letzte Link auf die Datei war und keine  Prozesse
       die Datei geoffnet haben, dann ist die Datei geloscht und der benotigte
       Speicherplatz wieder freigegeben.

       Falls der Name der letzte Link auf  die  Datei  war,  aber  immer  noch
       Prozesse  die  Datei  geoffnet 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 Gerat verwies, so ist der
       Name fur dieses entfernt, aber Prozesse,  die  dieses  Objekt  geoffnet
       haben, konnen es weiterhin benutzen.

R"UCKGABEWERT

       Bei  Erfolg  wird  Null  zuruckgegeben.   Bei einem Fehler -1 und errno
       entsprechend gesetzt.

FEHLER

       EACCES Schreibzugriff auf das Verzeichnis, das  Pfadname  enthalt,  ist
              fur  die  aktuell  gultige uid des Prozesses nicht erlaubt, oder
              eines  der  Verzeichnisse  in  Pfadname  erlaubt  keinen   Such-
              (Ausfuhr-) zugriff.

       EPERM oder EACCES
              Das  Verzeichnis,  welches  Pfadname enthalt, hat das sticky-bit
              (S_ISVTX) gesetzt und die aktuell gultige uid des Prozesses  ist
              weder  die  uid  der  zu  loschenden  Datei  noch  die  uid  des
              Verzeichnisses, das die Datei enthalt

       EPERM(nur Linux)
              Die Datei Pfadname ist ein Verzeichnis.

       EFAULT Pfadname liegt auBerhalb 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 verfugbar.

       EROFS  Pfadname  verweist   auf   ein   Verzeichnis   eines   Nur-Lese-
              Dateisystems.

       ELOOP  Bei  der  Ubersetzung  von  Pfadname treten zu viele symbolische
              Links auf

       EIO    Ein E/A Fehler ist aufgetreten.

KONFORM ZU

       SVr4, SVID, POSIX, X/OPEN, 4.3BSD.  Zusatzliche Fehlerzustande bei SVr4
       Dokumenten EBUSY, EINTR, EMULTIHOP, ETXTBUSY, ENOLINK.

BUGS

       Unglucke  in  dem  NFS  unterliegenden  Protokoll  kann das unerwartete
       Verschwinden von Dateien, welche noch benotigt werden, verursachen.

SIEHE AUCH

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