table of contents
other sections
| CHMOD(2) | Linux-Programmierhandbuch | CHMOD(2) | 
BEZEICHNUNG¶
chmod, fchmod - Zugriffsrechte einer Datei ändernÜBERSICHT¶
#include <sys/stat.h>Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):
_BSD_SOURCE ||
  _XOPEN_SOURCE >= 500 ||
  _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED
 
|| /* Seit Glibc 2.12: */ _POSIX_C_SOURCE >= 200809L
BESCHREIBUNG¶
Diese Systemaufrufe ändern die Rechte einer Datei. Sie unterscheiden sich nur in der Art, wie eine Datei angegeben wird:- *
 - chmod() ändert die Berechtigungen einer angegebenen Datei, deren Pfadname in path übergeben wird. Falls sie ein symbolischer Link ist, wird dieser dereferenziert.
 
- *
 - fchmod() ändert die Rechte der über den offenen Dateideskriptor fd angegebenen Datei.
 
- S_ISUID (04000)
 - Set-User-ID (setzt die effektive Benutzer-ID des Prozesses bei execve(2))
 
- S_ISGID (02000)
 - Set-Group-ID (setzt die effektive Gruppen-ID für execve(2); sperrt obligatorisch, wie in fcntl(2) beschrieben; bestimmt die Gruppe der Datei aus dem übergeordneten Verzeichnis, wie in chown(2) und mkdir(2) beschrieben
 
- S_ISVTX (01000)
 - »Sticky Bit« (Schalter für eingeschränktes Löschen, wie in unlink(2) beschrieben)
 
- S_IRUSR (00400)
 - Leserechte für Eigentümer
 
- S_IWUSR (00200)
 - Schreibrechte für Eigentümer
 
- S_IXUSR (00100)
 - Ausführungs-/Schreibrechte für Eigentümer (»suchen« trifft für Verzeichnisse zu und bedeutet, dass auf Einträge innerhalb des Verzeichnisses zugegriffen werden kann)
 
- S_IRGRP (00040)
 - Leserechte für Gruppe
 
- S_IWGRP (00020)
 - Schreibrechte für Gruppe
 
- S_IXGRP (00010)
 - Ausführungs-/Schreibrechte für Gruppe
 
- S_IROTH (00004)
 - Leserechte für andere
 
- S_IWOTH (00002)
 - Schreibrechte für andere
 
- S_IXOTH (00001)
 - Ausführungs-/Schreibrechte für andere
 
RÜCKGABEWERT¶
Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird -1 zurückgegeben und errno entsprechend gesetzt.FEHLER¶
Abhängig vom Dateisystem können andere Fehler zurückgeliefert werden. Die allgemeineren Fehler für chmod() sind im Folgenden aufgeführt:- EACCES
 - Eine Komponente des Pfad-Präfix darf nicht durchsucht werden. (Siehe auch path_resolution(7).)
 
- EFAULT
 - path zeigt aus Ihrem adressierbaren Adressraum heraus.
 
- EIO
 - Es ist ein E/A-Fehler (engl. I/O) aufgetreten.
 
- ELOOP
 - Bei der Auflösung von path wurden zu viele symbolische Verknüpfungen gefunden.
 
- ENAMETOOLONG
 - path ist zu lang.
 
- ENOENT
 - Die Datei existiert nicht.
 
- ENOMEM
 - Zu wenig Kernelspeicher verfügbar.
 
- ENOTDIR
 - Eine Komponente des Pfad-Präfixes ist kein Verzeichnis.
 
- EPERM
 - Die effektive UID passt nicht auf den Eigentümer der Datei und der Prozess ist nicht privilegiert (Linux: Er verfügt nicht über die Capability CAP_FOWNER).
 
- EROFS
 - Die angegebene Datei befindet sich auf einem nur lesbaren (read-only) Dateisystem.
 
- EBADF
 - Der Dateideskriptor fd ist ungültig.
 
- EIO
 - Siehe oben.
 
- EPERM
 - Siehe oben.
 
- EROFS
 - Siehe oben.
 
KONFORM ZU¶
4.4BSD, SVr4, POSIX.1-2001.SIEHE AUCH¶
chown(2), execve(2), fchmodat(2), open(2), stat(2), path_resolution(7)KOLOPHON¶
Diese Seite ist Teil der Veröffentlichung 3.42 des Projekts Linux- man-pages. Eine Beschreibung des Projekts und Informationen, wie Fehler gemeldet werden können, finden sich unter http://www.kernel.org/doc/man-pages/.ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von Daniel Kobras <kobras@linux.de>, Helge Kreutzmann <debian@helgefjell.de> und Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> erstellt.| 26. September 2010 | Linux |