d3a890b053db5abdc480ec628e873b156d541c5c
[openafs.git] / doc / man-pages / pod1 / pts.pod
1 =head1 NAME
2
3 pts - Introduction to the pts command suite
4
5 =head1 DESCRIPTION
6
7 The commands in the B<pts> command suite are the administrative interface
8 to the Protection Server, which runs on each database server machine in a
9 cell and maintains the Protection Database. The database stores the
10 information that AFS uses to augment and refine the standard UNIX scheme
11 for controlling access to files and directories.
12
13 Instead of relying only on the mode bits that define access rights for
14 individual files, AFS associates an access control list (ACL) with each
15 directory. The ACL lists users and groups and specifies which of seven
16 possible access permissions they have for the directory and the files it
17 contains. (It is still possible to set a directory or file's mode bits,
18 but AFS interprets them in its own way; see the chapter on protection in
19 the I<OpenAFS Administration Guide> for details.)
20
21 AFS enables users to define groups in the Protection Database and place
22 them on ACLs to extend a set of rights to multiple users simultaneously.
23 Groups simplify administration by making it possible to add someone to
24 many ACLs by adding them to a group that already exists on those
25 ACLs. Machines can also be members of a group, so that users logged into
26 the machine automatically inherit the permissions granted to the group.
27
28 There are several categories of commands in the pts command suite:
29
30 =over 4
31
32 =item *
33
34 Commands to create and remove Protection Database entries:
35 L<B<pts creategroup>|pts_creategroup(1)>,
36 L<B<pts createuser>|pts_createuser(1)>,
37 and L<B<pts delete>|pts_delete(1)>.
38
39 =item *
40
41 Commands to administer and display group membership:
42 L<B<pts adduser>|pts_adduser(1)>,
43 L<B<pts listowned>|pts_listowned(1)>,
44 L<B<pts membership>|pts_membership(1)>,
45 and L<B<pts removeuser>|pts_removeuser(1)>.
46
47 =item *
48
49 Commands to administer and display properties of user and group entries
50 other than membership:
51 L<B<pts chown>|pts_chown(1)>,
52 L<B<pts examine>|pts_examine(1)>,
53 L<B<pts listentries>|pts_listentries(1)>,
54 L<B<pts rename>|pts_rename(1)>,
55 and L<B<pts setfields>|pts_setfields(1)>.
56
57 =item *
58
59 Commands to set and examine the counters used when assigning IDs to users
60 and groups:
61 L<B<pts listmax>|pts_listmax(1)>
62 and L<B<pts setmax>|pts_setmax(1)>.
63
64 =item *
65
66 Commands to run commands interactively:
67 L<B<pts interactive>|pts_interactive(1)>,
68 L<B<pts sleep>|pts_sleep(1)>,
69 and L<B<pts quit>|pts_quit(1)>.
70
71 =item *
72
73 A command to run commands from a file:
74 L<B<pts source>|pts_source(1)>.
75
76 =item *
77
78 Commands to obtain help:
79 L<B<pts apropos>|pts_apropos(1)>
80 and L<B<pts help>|pts_help(1)>.
81
82 =item *
83
84 A command to display the OpenAFS command suite version: B<pts version>.
85
86 =back
87
88 =head1 OPTIONS
89
90 The following arguments and flags are available on many commands in the
91 B<pts> suite. The reference page for each command also lists them, but
92 they are described here in greater detail.
93
94 =over 4
95
96 =item B<-cell> <I<cell name>>
97
98 Names the cell in which to run the command. It is acceptable to abbreviate
99 the cell name to the shortest form that distinguishes it from the other
100 entries in the F</usr/vice/etc/CellServDB> file on the local machine. If
101 the B<-cell> argument is omitted, the command interpreter determines the
102 name of the local cell by reading the following in order:
103
104 =over 4
105
106 =item *
107
108 The value of the AFSCELL environment variable.
109
110 =item *
111
112 The local F</usr/vice/etc/ThisCell> file.
113
114 Do not combine the B<-cell> and B<-localauth> options. A command on which
115 the B<-localauth> flag is included always runs in the local cell (as
116 defined in the server machine's local F</usr/afs/etc/ThisCell> file),
117 whereas a command on which the B<-cell> argument is included runs in the
118 specified foreign cell.
119
120 =back
121
122 =item B<-config> <I<config directory>>
123
124 The location of the directory to use to obtain configuration information,
125 including the CellServDB. This is primarily provided for testing purposes.
126
127 =item B<-force>
128
129 Enables the command to continue executing as far as possible when errors
130 or other problems occur, rather than halting execution immediately.
131 Without it, the command halts as soon as the first error is
132 encountered. In either case, the B<pts> command interpreter reports errors
133 at the command shell. This flag is especially useful if the issuer
134 provides many values for a command line argument; if one of them is
135 invalid, the command interpreter continues on to process the remaining
136 arguments.
137
138 =item B<-help>
139
140 Prints a command's online help message on the standard output stream. Do
141 not combine this flag with any of the command's other options; when it is
142 provided, the command interpreter ignores all other options, and only
143 prints the help message.
144
145 =item B<-noauth>
146
147 Establishes an unauthenticated connection to the Protection Server, in
148 which the server treats the issuer as the unprivileged user
149 C<anonymous>. It is useful only when authorization checking is disabled on
150 the server machine (during the installation of a file server machine or
151 when the L<B<bos setauth>|bos_setauth(8)> command has been used during
152 other unusual circumstances). In normal circumstances, the Protection
153 Server allows only privileged users to issue commands that change the
154 Protection Database, and refuses to perform such an action even if the
155 B<-noauth> flag is provided.
156
157 =item B<-encrypt>
158
159 Establishes an authenticated, encrypted connection to the Protection Server.
160 It is useful when it is desired to obscure network traffic related to the
161 transactions being done.
162
163 =item B<-localauth>
164
165 Constructs a server ticket using the server encryption key with the
166 highest key version number in the local F</usr/afs/etc/KeyFile> file. The
167 B<pts> command interpreter presents the ticket, which never expires, to
168 the BOS Server during mutual authentication.
169
170 Use this flag only when issuing a command on a server machine; client
171 machines do not usually have a F</usr/afs/etc/KeyFile> file.  The issuer
172 of a command that includes this flag must be logged on to the server
173 machine as the local superuser C<root>. The flag is useful for commands
174 invoked by an unattended application program, such as a process controlled
175 by the UNIX B<cron> utility. It is also useful if an administrator is
176 unable to authenticate to AFS but is logged in as the local superuser
177 C<root>.
178
179 Do not combine the B<-cell> and B<-localauth> options. A command on which
180 the B<-localauth> flag is included always runs in the local cell (as
181 defined in the server machine's local F</usr/afs/etc/ThisCell> file),
182 whereas a command on which the B<-cell> argument is included runs in the
183 specified foreign cell. Also, do not combine the B<-localauth> and
184 B<-noauth> flags.
185
186 =item B<-auth>
187
188 Use the calling user's tokens from the kernel to communicate with the ptserver
189 (that is, the same tokens displayed by L<tokens(1)>. This is the default if
190 neither B<-localauth> nor B<-noauth> is given.
191
192 Since this option is the default, it is usually not useful for running single
193 command line operations. However, it can be useful when running commands via
194 L<pts_interactive(1)>, since otherwise it would be impossible to switch from,
195 for example, B<-localauth> back to using regular tokens during a bulk
196 operation. See L<pts_interactive(1)> for more details.
197
198 =back
199
200 =head1 PRIVILEGE REQUIRED
201
202 Members of the system:administrators group can issue all B<pts> commands
203 on any entry in the Protection Database.
204
205 Users who do not belong to the system:administrators group can list
206 information about their own entry and any group entries they own. The
207 privacy flags set with the L<B<pts setfields>|pts_setfields(1)> command
208 control access to entries owned by other users.
209
210 =head1 SEE ALSO
211
212 L<pts_adduser(1)>,
213 L<pts_apropos(1)>,
214 L<pts_chown(1)>,
215 L<pts_creategroup(1)>,
216 L<pts_createuser(1)>,
217 L<pts_delete(1)>,
218 L<pts_examine(1)>,
219 L<pts_help(1)>,
220 L<pts_interactive(1)>,
221 L<pts_listentries(1)>,
222 L<pts_listmax(1)>,
223 L<pts_listowned(1)>,
224 L<pts_membership(1)>,
225 L<pts_quit(1)>,
226 L<pts_removeuser(1)>,
227 L<pts_rename(1)>,
228 L<pts_setfields(1)>,
229 L<pts_setmax(1)>,
230 L<pts_sleep(1)>,
231 L<pts_source(1)>
232
233 The I<OpenAFS Administration Guide> at
234 L<http://docs.openafs.org/AdminGuide/>.
235
236 =head1 COPYRIGHT
237
238 IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
239
240 This documentation is covered by the IBM Public License Version 1.0.  It was
241 converted from HTML to POD by software written by Chas Williams and Russ
242 Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.