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

BEZEICHNUNG

       chown, fchown, lchown - Besitzverhaltnisse einer Datei andern

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

              man -LC 2 chown

       eingeben.

"UBERSICHT

       #include <sys/types.h>
       #include <unistd.h>

       int chown(const char *path, uid_t owner, gid_t group);
       int fchown(int fd, uid_t owner, gid_t group);
       int lchown(const char *path, uid_t owner, gid_t group);

BESCHREIBUNG

       Die Besitzverhaltnisse der Datei, die durch path bzw.  fd gegeben  ist,
       werden  geandert:  neuer  Eigentumer  ist owner, neue Gruppe ist group.
       Nur der  Super-User  kann  den  Eigentumer  einer  Datei  andern.   Der
       Eigentumer  einer Datei kann die Gruppenzugehorigkeit der Datei in jede
       Gruppe andern,  der  er  selber  angehort.   Der  Super-User  kann  die
       Gruppenzugehorigkeit beliebig andern.

       Wird als owner oder group -1 ubergeben, wird die entsprechende ID nicht
       geandert.

       Werden Eigentumer oder Gruppe einer ausfuhrbaren Datei von einem Nicht-
       Super-User   geandert,   werden  die  Modus-Bits  S_ISUID  und  S_ISGID
       geloscht.  POSIX legt nicht fest, ob dies auch dann  geschehen  sollte,
       wenn  der  Super-User chown durchfuhrt.  Das Verhalten von Linux ist in
       diesem Falle abhangig von  der  Kernelversion.   Ist  die  Datei  nicht
       ausfuhrbar  (d.h. das S_IXGRP Bit ist geloscht), bedeutet ein gesetztes
       S_ISGID Bit verbindliche  Sperren  (mandatory  locks)  fur  die  Datei.
       Dieses Bit wird dann von chown nicht geandert.

R"UCKGABEWERT

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

FEHLER

       Die haufigsten  Fehler  fur  chown  sind  unten  aufgefuhrt.   Je  nach
       Dateisystem konnen andere Fehler zuruckgegeben werden.

       EPERM   Die effektive UID (Benutzer ID) entspricht nicht dem Eigentumer
               der Datei und ist auch nicht  Null  (d.h.  Super-User).   EPERM
               kann auch anzeigen, dass Eigentumer (owner) oder Gruppe (group)
               falsch angegeben wurden.

       EROFS   Die angegebene Datei liegt auf einem schreibgeschutzten  (read-
               only) Dateisystem.

       EFAULT  path zeigt auf eine Adresse auBerhalb des gultigen Adressraums.

       ENAMETOOLONG
               path ist zu lang.

       ENOENT  Die Datei ist nicht vorhanden.

       ENOMEM  Es war nicht ausreichend Kernel-Speicher verfugbar.

       ENOTDIR Eine Komponente im Verzeichnisteil des Pfades (d.i. der vordere
               Teil bis zum Dateinamen ausschlieBlich) ist kein Verzeichnis.

       EACCES  Die Berechtigung zum Durchsuchen eines Verzeichnisses  im  Pfad
               ist nicht gegeben.

       ELOOP   Es  wurden  zu  viele  symbolische Links beim Auflosen von path
               gefunden.

       Folgende Fehler konnen von fchown zuruckgegeben werden:

       EBADF   Der Dateideskriptor fd ist ungultig.

       ENOENT  Siehe oben.

       EPERM   Siehe oben.

       EROFS   Siehe oben.

       EIO     Ein (low-level) Ein-/Ausgabe-Fehler ist  wahrend  der  Anderung
               des Inodes aufgetreten.

ANMERKUNGEN

       In  Linux-Versionen  vor  2.1.81  (auBer  2.1.46)  folgte  chown  nicht
       symbolischen Links.  Ab Linux 2.1.81 folgt chown symbolischen Links und
       es  gibt  einen neuen Systemaufruf lchown, der symbolischen Links nicht
       folgt.  Ab Linux  2.1.86  hat  dieser  neue  Aufruf  (der  die  gleiche
       Semantik  wie  das  alte chown besitzt) die gleiche Systemaufruf-Nummer
       (syscall number) und chown erhielt die neu eingefuhrte Nummer.

       Der  Prototyp  fur  fchown  ist  nur  dann  verfugbar,  wenn  __USE_BSD
       definiert ist.

KONFORM ZU

       chown  ist konform zu SVr4, SVID, POSIX und X/OPEN.  Die 4.4BSD-Version
       kann nur vom Super-User benutzt  werden  (d.h.  dass  normale  Benutzer
       keine  Dateien  abgeben  konnen).  SVr4 dokumentiert die Fehler EINVAL,
       EINTR, ENOLINK und EMULTIHOP, aber nicht ENOMEM.  POSIX.1  dokumentiert
       nicht die Fehler ENOMEM und ELOOP.

       Der  fchown-Aufruf  ist  konform zu 4.4BSD und SVr4.  SVr4 dokumentiert
       zusatzlich die Fehler EINVAL, EIO, EINTR und ENOLINK.

EINSCHR"ANKUNGEN

       Die Semantik von chown() wird  auf  NFS-Dateisystemen  mit  aktiviertem
       UID-mapping  (Umsetzung  der  Benutzerkennungen  zwischen verschiedenen
       Rechnern) bewusst verletzt.  AuBerdem wird  bei  allen  Systemaufrufen,
       die  auf  den  Dateiinhalt zugreifen, die Semantik verletzt, da chown()
       einen sofortigen Entzug des Zugriffs  bei  bereits  geoffneten  Dateien
       bewirken  kann.  Zwischenspeicherung (caching) seitens des Clients kann
       zu  einer  Verzogerung  zwischen  dem  Zeitpunkt   der   Anderung   der
       Besitzverhaltnisse,  um  einem Benutzer Zugriff zu ermoglichen, und dem
       Zeitpunkt, zu dem er auf anderen Clients  tatsachlich  zugreifen  kann,
       fuhren.

SIEHE AUCH

       chmod(2), flock(2).