File: chown.2

package info (click to toggle)
manpages-de 0.7-1
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 3,188 kB
  • ctags: 9
  • sloc: makefile: 83; perl: 61
file content (212 lines) | stat: -rw-r--r-- 6,664 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
.\" Hey Emacs! This file is -*- nroff -*- source.
.\"
.\" Copyright (c) 1992 Drew Eckhardt (drew@cs.colorado.edu), March 28, 1992
.\" Copyright (c) 1998 Andries Brouwer (aeb@cwi.nl)
.\"
.\" 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 by Michael Haardt <u31b3hs@pool.informatik.rwth-aachen.de>
.\" Modified Wed Jul 21 21:53:01 1993 by Rik Faith <faith@cs.unc.edu>
.\" Modified Tue Jul  9 13:59:51 1996 by Andries Brouwer <aeb@cwi.nl>
.\" Modified Wed Nov  6 03:49:07 1996 by Eric S. Raymond <esr@thyrsus.com>
.\" Modified Sun May 18 10:34:09 1997 by Michael Haardt <michael@cantor.informatik.rwth-aachen.de>
.\" Translated into German Tue May 23 22:54:37 2000 by Florian Jenn (jennf@tu-cottbus.de)
.\" Minor modifications Tue Jan 16 00:14:32 2001 by Florian Jenn (jennf@tu-cottbus.de)
.\"
.TH CHOWN 2 "23. Mai 2000" "Linux 2.1.81" "Systemaufrufe"
.SH BEZEICHNUNG
chown, fchown, lchown \- Besitzverhältnisse einer Datei ändern
.SH "ÜBERSICHT"
.B #include <sys/types.h>
.br
.B #include <unistd.h>
.sp
.BI "int chown(const char *" path ", uid_t " owner ", gid_t " group );
.br
.BI "int fchown(int " fd ", uid_t " owner ", gid_t " group );
.br
.BI "int lchown(const char *" path ", uid_t " owner ", gid_t " group );
.SH BESCHREIBUNG
Die Besitzverhältnisse der Datei, die durch
.I path
bzw.
.I fd
gegeben ist, werden geändert: neuer Eigentümer ist
.IR owner ,
neue Gruppe ist
.IR group .
Nur der Super-User kann den Eigentümer einer Datei ändern.  Der Eigentümer
einer Datei kann die Gruppenzugehörigkeit der Datei in jede Gruppe ändern,
der er selber angehört.  Der Super-User kann die Gruppenzugehörigkeit
beliebig ändern.
.PP
Wird als
.I owner
oder
.I group
\|\-1 übergeben, wird die entsprechende
.SM ID
nicht geändert.
.PP
Werden Eigentümer oder Gruppe einer ausführbaren Datei von einem
Nicht-Super-User geändert, werden die Modus-Bits
.SM S_ISUID
und
.SM S_ISGID
gelöscht.
.SM POSIX
legt nicht fest, ob dies auch dann geschehen sollte, wenn der Super-User
.B chown
durchführt.  Das Verhalten von Linux ist in diesem Falle abhängig von der
Kernelversion.  Ist die Datei nicht ausführbar (d.\|h. das
.SM S_IXGRP
Bit ist gelöscht), bedeutet ein gesetztes
.SM S_ISGID
Bit verbindliche Sperren (mandatory locks) für die Datei.  Dieses Bit wird
dann von
.B chown
nicht geändert.
.SH "RÜCKGABEWERT"
Bei Erfolg gibt
.B chown
Null zurück.  Bei einem Fehler wird \-1 zurückgegeben und
.I errno
entsprechend gesetzt.
.SH FEHLER
Die häufigsten Fehler für
.B chown
sind unten aufgeführt.  Je nach Dateisystem können andere Fehler
zurückgegeben werden.
.TP 0.8i
.SB EPERM
Die effektive
.SM UID
(Benutzer ID) entspricht nicht dem Eigentümer der Datei und ist auch
nicht Null (d.\|h. Super-User).
.SM EPERM
kann auch anzeigen, dass Eigentümer
.RI ( owner )
oder Gruppe
.RI ( group )
falsch angegeben wurden.
.TP
.SB EROFS
Die angegebene Datei liegt auf einem schreibgeschützten (read-only)
Dateisystem.
.TP
.SB EFAULT
.I path
zeigt auf eine Adresse außerhalb des gültigen Adressraums.
.TP
.SB ENAMETOOLONG
.I path
ist zu lang.
.TP
.SB ENOENT
Die Datei ist nicht vorhanden.
.TP
.SB ENOMEM
Es war nicht ausreichend Kernel-Speicher verfügbar.
.TP
.SB ENOTDIR
Eine Komponente im Verzeichnisteil des Pfades (d.\|i. der vordere Teil bis
zum Dateinamen ausschließlich) ist kein Verzeichnis.
.TP
.SB EACCES
Die Berechtigung zum Durchsuchen eines Verzeichnisses im Pfad ist nicht
gegeben.
.TP
.SB ELOOP
Es wurden zu viele symbolische Links beim Auflösen von
.I path
gefunden.
.PP
Folgende Fehler können von
.B fchown
zurückgegeben werden:
.TP 0.8i
.SB EBADF
Der Dateideskriptor
.I fd
ist ungültig.
.TP
.SB ENOENT
Siehe oben.
.TP
.SB EPERM
Siehe oben.
.TP
.SB EROFS
Siehe oben.
.TP
.SB EIO
Ein (low-level) Ein-/Ausgabe-Fehler ist während der Änderung des Inodes
aufgetreten.
.SH ANMERKUNGEN
In Linux-Versionen vor 2.1.81 (außer 2.1.46) folgte
.B chown
nicht symbolischen Links.  Ab Linux 2.1.81 folgt
.B chown
symbolischen Links und es gibt einen neuen Systemaufruf
.BR lchown,
der symbolischen Links nicht folgt.  Ab Linux 2.1.86 hat dieser neue
Aufruf (der die gleiche Semantik wie das alte
.B chown
besitzt) die gleiche Systemaufruf-Nummer (syscall number) und
.B chown
erhielt die neu eingeführte Nummer.
.LP
Der Prototyp für
.B fchown
ist nur dann verfügbar, wenn
.SB _\^_USE_BSD
definiert ist.
.SH "KONFORM ZU"
.B chown
ist konform zu SVr4, \s-1SVID\s+1, \s-1POSIX\s+1 und \s-1X/OPEN\s+1.
Die 4.4\s-1BSD\s+1-Version kann nur vom Super-User benutzt werden
(d.\|h. dass normale Benutzer keine Dateien abgeben können).  SVr4
dokumentiert die Fehler \s-1EINVAL\s+1, \s-1EINTR\s+1, \s-1ENOLINK\s+1
und \s-1EMULTIHOP\s+1, aber nicht \s-1ENOMEM\s+1.  \s-1POSIX\s+1.1
dokumentiert nicht die Fehler \s-1ENOMEM\s+1 und \s-1ELOOP\s+1.
.PP
Der
.BR fchown -Aufruf
ist konform zu 4.4\s-1BSD\s+1 und SVr4.  SVr4 dokumentiert zusätzlich
die Fehler \s-1EINVAL\s+1, \s-1EIO\s+1, \s-1EINTR\s+1 und
\s-1ENOLINK\s+1.
.SH EINSCHRÄNKUNGEN
Die Semantik von
.BR chown ()
wird auf \s-1NFS\s+1-Dateisystemen mit aktiviertem \s-1UID\s+1-mapping
(Umsetzung der Benutzerkennungen zwischen verschiedenen Rechnern)
bewusst verletzt.  Außerdem wird bei allen Systemaufrufen, die auf den
Dateiinhalt zugreifen, die Semantik verletzt, da
.BR chown ()
einen sofortigen Entzug des Zugriffs bei bereits geöffneten Dateien
bewirken kann.  Zwischenspeicherung (caching) seitens des Clients kann
zu einer Verzögerung zwischen dem Zeitpunkt der Änderung der
Besitzverhältnisse, um einem Benutzer Zugriff zu ermöglichen, und dem
Zeitpunkt, zu dem er auf anderen Clients tatsächlich zugreifen kann,
führen.
.SH "SIEHE AUCH"
.BR chmod (2),
.BR flock (2).