Provided by: manpages-de-dev_1.4-1_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. Falls dieser Name der letzte Link 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 erneute Verwendung verfügbar gemacht.
Falls dieser Name der letzte Link auf die Datei war, aber diverse Prozesse die Datei noch geöffnet haben,
bleibt die Datei bestehen, bis der letzte auf sie weisende Dateideskriptor gelöscht wird.
Falls der Name auf einen symbolischen Link verwies, so wird dieser Link entfernt.
Falls der Name auf einen Socket, Fifo oder Gerät verwies, so wird der Name dafür entfernt, aber Prozesse,
die d Objekt geöffnet haben, können es weiterhin benutzen.
RÜCKGABEWERT
Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird -1 zurückgegeben und errno entsprechend
gesetzt.
FEHLER
EACCES Schreibzugriff auf das Verzeichnis, das Pfadname enthält, ist für die aktuell effektive UID des
Prozesses nicht erlaubt oder eines der Verzeichnisse in Pfadname gewährt keinen Suchzugriff (siehe
auch path_resolution(7)).
EBUSY Für die Datei Pfadname kann der Link nicht gelöst werden, weil er vom System oder einem anderen
Prozess genutzt wird; beispielsweise, wenn er ein Einhängepunkt ist oder die NFS-Client-Software
ihn erstellte, um einen aktiven aber ansonsten namenlosen Inode zu repräsentieren (»NFS silly
renamed«).
EFAULT pathname zeigt aus dem für Sie zugänglichen Adressraum heraus.
EIO Es ist ein E/A-Fehler (engl. I/O) aufgetreten.
EISDIR Pfadname verweist auf ein Verzeichnis. (Dies ist ein nicht-POSIX-Wert, der von Linux seit 2.1.132
zurückgegeben wird.)
ELOOP Bei der Auflösung von Pfadname wurden zu viele symbolische Verknüpfungen gefunden.
ENAMETOOLONG
pathname war zu lang.
ENOENT Eine Verzeichniskomponente von Pfadname existiert nicht oder ist ein toter symbolischer Link oder
Pfadname ist leer..
ENOMEM Es war nicht genügend Kernel-Speicher verfügbar.
ENOTDIR
Eine als Verzeichnis benutzte Komponente von pathname ist kein Verzeichnis.
EPERM Das System verweigert die Aufhebung von Links zu Verzeichnissen oder fordert Privilegien, die der
aufrufende Prozess nicht hat. (Dies ist die von POSIX vorgeschriebene Fehlerrückgabe. Wie oben
erwähnt gibt Linux in diesem Fall EISDIR zurück.
EPERM (nur Linux)
Das Dateisystem verwehrt das Lösen von Dateilinks.
EPERM oder EACCES
Das Verzeichnis, welches Pfadname enthält, hat das Sticky Bit (S_ISVTX) gesetzt und die effektive
UID des Prozesses ist weder die UID der zu löschenden Datei noch die UID des Verzeichnisses, das
die Datei enthält und der Prozess ist nicht privilegiert (Linux: im fehlt die
CAP_FOWNER-Capability).
EROFS pathname bezieht sich auf eine Datei auf einem schreibgeschützten Dateisystem.
KONFORM ZU
SVr4, 4.3BSD, POSIX.1-2001.
FEHLER
Unzulänglichkeiten in dem NFS unterliegenden Protokoll können das unerwartete Verschwinden von Dateien,
welche noch benötigt werden, verursachen.
SIEHE AUCH
rm(1), chmod(2), link(2), mknod(2), open(2), rename(2), rmdir(2), unlinkat(2), mkfifo(3), remove(3),
path_resolution(7), symlink(7)
KOLOPHON
This page is part of release 3.54 of the Linux man-pages project. A description of the project, and
information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Joern Vehoff <joern@vehoff.net>, Martin Schulze
<joey@infodrom.org>, Helge Kreutzmann <debian@helgefjell.de>, Martin Eberhard Schauer
<Martin.E.Schauer@gmx.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an
<debian-l10n-german@lists.debian.org>.
Linux 15. September 2011 UNLINK(2)