.\" -*- coding: UTF-8 -*- .\" Hey Emacs! This file is -*- nroff -*- source. .\" .\" This manpage is Copyright (C) 1992 Drew Eckhardt; .\" 1993 Michael Haardt; .\" 1993,1995 Ian Jackson. .\" .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one. .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" .\" Modified Sat Jul 24 00:35:52 1993 by Rik Faith .\" Modified Thu Jun 4 12:21:13 1998 by Andries Brouwer .\" Modified Thu Mar 3 09:49:35 2005 by Michael Haardt .\" 2007-03-25, mtk, added various text to DESCRIPTION. .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH RENAME 2 "30. März 2009" Linux Linux\-Programmierhandbuch .SH BEZEICHNUNG rename \- den Namen oder die Lage einer Datei ändern .SH ÜBERSICHT \fB#include \fP .sp \fBint rename(const char *\fP\fIoldpath\fP\fB, const char *\fP\fInewpath\fP\fB);\fP .SH BESCHREIBUNG \fBrename\fP() benennt eine Datei um und verschiebt sie in ein anderes Verzeichnis, wenn nötig. Alle anderen Hard Links (erstellt mittels \fBlink\fP(2)) sind nicht betroffen, ebenso offene Dateideskriptoren für \fIoldpath\fP. Falls \fInewpath\fP schon existiert, wird er in einem atomaren Schritt überschrieben (für Ausnahmen siehe der Abschnitt FEHLER), so dass ein anderer Prozess jederzeit auf \fInewpath\fP zugreifen kann. Falls \fIoldpath\fP und \fInewpath\fP bestehende Hard Links zu derselben Datei sind, tut \fBrename\fP() nichts und meldet eine erfolgreiche Ausführung. Wenn \fInewpath\fP schon existiert, aber das Umbenennen aus irgendeinem Grund fehlschlägt, garantiert \fBrename\fP(), dass \fInewpath\fP an Ort und Stelle erhalten bleibt. \fIoldpath\fP kann ein Verzeichnis angeben. In diesem Fall darf \fInewpath\fP nicht existieren oder muss ein leeres Verzeichnis angeben. Allerdings gibt es beim Überschreiben wahrscheinlich ein Zeitfenster, zu dem sowohl \fIoldpath\fP als auch \fInewpath\fP auf die Datei zeigen, die umbenannt werden soll. Falls \fIoldpath\fP auf einen symbolischen Link zeigt, wird der Link umbenannt; falls \fInewpath\fP auf einen symbolischen Link zeigt, wird der Link überschrieben. .SH RÜCKGABEWERT Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird \-1 zurückgegeben und \fIerrno\fP entsprechend gesetzt. .SH FEHLER .TP \fBEACCES\fP Für das Verzeichnis, das \fIoldpath\fP oder \fInewpath\fP enthält, wurden Schreibrechte verweigert oder für eines der Verzeichnisse im Pfad\-Präfix von \fIoldpath\fP oder \fInewpath\fP wurde nicht gestattet, dort zu suchen oder \fIoldpath\fP ist ein Verzeichnis und verwehrt die Schreiberlaubnis (benötigt, um den Eintrag \fI..\fP zu aktualisieren). (Siehe auch \fBpath_resolution\fP(7).) .TP \fBEBUSY\fP Das Umbenennen scheitert, weil \fIoldpath\fP oder \fInewpath\fP ein Verzeichnis ist, das von einem anderen Prozess (vielleicht als aktuelles Arbeitsverzeichnis oder als Root\-Verzeichnis oder weil es zum Lesen geöffnet ist) oder vom System genutzt wird (zum Beispiel als Einhängepunkt) und das System dies als Fehler betrachtet. (Beachten Sie, dass es keine Verpflichtung gibt, in solchen Fällen \fBEBUSY\fP zurückzugeben \(em es ist nichts falsch daran, die Umbenennung trotzdem durchzuführen\(em aber es ist erlaubt, \fBEBUSY\fP zurückzugeben, wenn das System solche Situationen nicht anderweitig verarbeiten kann.q) .TP \fBEFAULT\fP \fIoldpath\fP oder \fInewpath\fP zeigt aus dem Benutzer\-Adressraum heraus. .TP \fBEINVAL\fP Der neue Pfadname enthielt ein Pfad\-Präfix des alten, oder allgemeiner, es wurde versucht, ein Verzeichnis als Unterverzeichnis von sich selbst zu erzeugen. .TP \fBEISDIR\fP \fInewpath\fP ist ein existierendes Verzeichnis, aber \fIoldpath\fP ist kein Verzeichnis. .TP \fBELOOP\fP Bei der Auflösung von \fIoldpath\fP oder \fInewpath\fP wurden zu viele symbolische Verknüpfungen gefunden. .TP \fBEMLINK\fP \fIoldpath\fP hat schon die maximale Anzahl Links, oder es war ein Verzeichnis und das Verzeichnis, welches \fInewpath\fP enthält, hat schon die maximale Anzahl Links. .TP \fBENAMETOOLONG\fP \fIoldpath\fP oder \fInewpath\fP war zu lang. .TP \fBENOENT\fP Der von \fIoldpath\fP angegebene Link existiert nicht oder eine Verzeichniskomponente von \fInewpath\fP existiert nicht oder \fIoldpath\fP oder \fInewpath\fP ist eine leere Zeichenkette. .TP \fBENOMEM\fP Zu wenig Kernelspeicher verfügbar. .TP \fBENOSPC\fP Das Gerät, welches die Datei enthält, hat keinen Platz für einen neuen Verzeichniseintrag. .TP \fBENOTDIR\fP Eine als Verzeichnis benutzte Komponente von \fIoldpath\fP oder \fInewpath\fP ist in der Tat kein Verzeichnis. Oder \fIoldpath\fP ist ein Verzeichnis und \fInewpath\fP existiert, ist aber kein Verzeichnis. .TP \fBENOTEMPTY\fP oder \fBEEXIST\fP \fInewpath\fP ist ein nicht leeres Verzeichnis, d.h. es enthält außer ».« und »..« weitere Einträge. .TP \fBEPERM\fP oder \fBEACCES\fP Das Verzeichnis, das \fIoldpath\fP enthält, hat das Sticky\-Bit (\fBS_ISVTX\fP) gesetzt und die effektive Benutzer\-ID des Prozesses ist weder die Benutzer\-ID der zu löschenden Datei noch die des beinhaltenden Verzeichnisses und der Prozess ist nicht privilegiert (Linux: verfügt nicht über die \fBCAP_FOWNER\fP\-Capability); oder \fInewpath\fP ist eine vorhandene Datei und ihr übergeordnetes Verzeichnis hat das Sticky\-Bit gesetzt und die effektive Benutzer\-ID des Prozesses ist weder die Benutzer\-ID der zu ersetzenden Datei noch des beherbergenden Verzeichnisses und der Prozess ist nicht privilegiert (Linux: verfügt nicht über die \fBCAP_FOWNER\fP\-Capability) oder das \fIpathnname\fP beherbergende Dateisystem unterstützt nicht die Umbenennung des angeforderten Typs. .TP \fBEROFS\fP Die angegebene Datei befindet sich auf einem nur lesbaren (read\-only) Dateisystem. .TP \fBEXDEV\fP \fIoldpath\fP und \fInewpath\fP befinden sich nicht auf demselben eingehängten Dateisystem. (Linux erlaubt es Dateisystemen, an mehreren Stellen eingehängt zu sein, aber \fBrename\fP() funktioniert nicht über verschiedene Einhängepunkte hinweg, selbst falls dasselbe Dateisystem an beiden Stellen eingehängt ist.) .SH "KONFORM ZU" 4.3BSD, C89, C99, POSIX.1\-2001. .SH FEHLER Auf NFS\-Dateisystemen kann bei einer fehlgeschlagenen Operation nicht davon ausgegangen werden, dass die Datei nicht umbenannt wurde. Falls der Server die Datei umbenennt und dann abstürzt, gibt der erneut übertragene RPC, der nach dem Wiederanlaufen des Servers verarbeitet wird, einen Fehler zurück. Von der Anwendung wird erwartet, dies zu berücksichtigen. Siehe \fIlink\fP(2) für ein ähnliches Problem. .SH "SIEHE AUCH" \fBmv\fP(1), \fBchmod\fP(2), \fBlink\fP(2), \fBrenameat\fP(2), \fBsymlink\fP(2), \fBunlink\fP(2), \fBpath_resolution\fP(7), \fBsymlink\fP(7) .SH KOLOPHON Diese Seite ist Teil der Veröffentlichung 3.42 des Projekts Linux\-\fIman\-pages\fP. Eine Beschreibung des Projekts und Informationen, wie Fehler gemeldet werden können, finden sich unter http://www.kernel.org/doc/man\-pages/. .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Elmar Jansen , Helge Kreutzmann und Martin Eberhard Schauer 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 .