f3417bac1894ce29c44f214eb89e3e6f444e1860
[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 =back
83
84 =head1 OPTIONS
85
86 The following arguments and flags are available on many commands in the
87 B<pts> suite. The reference page for each command also lists them, but
88 they are described here in greater detail.
89
90 =over 4
91
92 =item B<-cell> <I<cell name>>
93
94 Names the cell in which to run the command. It is acceptable to abbreviate
95 the cell name to the shortest form that distinguishes it from the other
96 entries in the F</usr/vice/etc/CellServDB> file on the local machine. If
97 the B<-cell> argument is omitted, the command interpreter determines the
98 name of the local cell by reading the following in order:
99
100 =over 4
101
102 =item *
103
104 The value of the AFSCELL environment variable.
105
106 =item *
107
108 The local F</usr/vice/etc/ThisCell> file.
109
110 Do not combine the B<-cell> and B<-localauth> options. A command on which
111 the B<-localauth> flag is included always runs in the local cell (as
112 defined in the server machine's local F</usr/afs/etc/ThisCell> file),
113 whereas a command on which the B<-cell> argument is included runs in the
114 specified foreign cell.
115
116 =back
117
118 =item B<-config> <I<config directory>>
119
120 The location of the directory to use to obtain configuration information,
121 including the CellServDB. This is primarily provided for testing purposes.
122
123 =item B<-force>
124
125 Enables the command to continue executing as far as possible when errors
126 or other problems occur, rather than halting execution immediately.
127 Without it, the command halts as soon as the first error is
128 encountered. In either case, the B<pts> command interpreter reports errors
129 at the command shell. This flag is especially useful if the issuer
130 provides many values for a command line argument; if one of them is
131 invalid, the command interpreter continues on to process the remaining
132 arguments.
133
134 =item B<-help>
135
136 Prints a command's online help message on the standard output stream. Do
137 not combine this flag with any of the command's other options; when it is
138 provided, the command interpreter ignores all other options, and only
139 prints the help message.
140
141 =item B<-noauth>
142
143 Establishes an unauthenticated connection to the Protection Server, in
144 which the server treats the issuer as the unprivileged user
145 C<anonymous>. It is useful only when authorization checking is disabled on
146 the server machine (during the installation of a file server machine or
147 when the L<B<bos setauth>|bos_setauth(8)> command has been used during
148 other unusual circumstances). In normal circumstances, the Protection
149 Server allows only privileged users to issue commands that change the
150 Protection Database, and refuses to perform such an action even if the
151 B<-noauth> flag is provided.
152
153 =item B<-encrypt>
154
155 Establishes an authenticated, encrypted connection to the Protection Server.
156 It is useful when it is desired to obscure network traffic related to the
157 transactions being done.
158
159 =item B<-localauth>
160
161 Constructs a server ticket using the server encryption key with the
162 highest key version number in the local F</usr/afs/etc/KeyFile> file. The
163 B<pts> command interpreter presents the ticket, which never expires, to
164 the BOS Server during mutual authentication.
165
166 Use this flag only when issuing a command on a server machine; client
167 machines do not usually have a F</usr/afs/etc/KeyFile> file.  The issuer
168 of a command that includes this flag must be logged on to the server
169 machine as the local superuser C<root>. The flag is useful for commands
170 invoked by an unattended application program, such as a process controlled
171 by the UNIX B<cron> utility. It is also useful if an administrator is
172 unable to authenticate to AFS but is logged in as the local superuser
173 C<root>.
174
175 Do not combine the B<-cell> and B<-localauth> options. A command on which
176 the B<-localauth> flag is included always runs in the local cell (as
177 defined in the server machine's local F</usr/afs/etc/ThisCell> file),
178 whereas a command on which the B<-cell> argument is included runs in the
179 specified foreign cell. Also, do not combine the B<-localauth> and
180 B<-noauth> flags.
181
182 =item B<-auth>
183
184 Use the calling user's tokens from the kernel to communicate with the ptserver
185 (that is, the same tokens displayed by L<tokens(1)>. This is the default if
186 neither B<-localauth> nor B<-noauth> is given.
187
188 Since this option is the default, it is usually not useful for running single
189 command line operations. However, it can be useful when running commands via
190 L<pts_interactive(1)>, since otherwise it would be impossible to switch from,
191 for example, B<-localauth> back to using regular tokens during a bulk
192 operation. See L<pts_interactive(1)> for more details.
193
194 =back
195
196 =head1 PRIVILEGE REQUIRED
197
198 Members of the system:administrators group can issue all B<pts> commands
199 on any entry in the Protection Database.
200
201 Users who do not belong to the system:administrators group can list
202 information about their own entry and any group entries they own. The
203 privacy flags set with the L<B<pts setfields>|pts_setfields(1)> command
204 control access to entries owned by other users.
205
206 =head1 SEE ALSO
207
208 L<pts_adduser(1)>,
209 L<pts_apropos(1)>,
210 L<pts_chown(1)>,
211 L<pts_creategroup(1)>,
212 L<pts_createuser(1)>,
213 L<pts_delete(1)>,
214 L<pts_examine(1)>,
215 L<pts_help(1)>,
216 L<pts_interactive(1)>,
217 L<pts_listentries(1)>,
218 L<pts_listmax(1)>,
219 L<pts_listowned(1)>,
220 L<pts_membership(1)>,
221 L<pts_quit(1)>,
222 L<pts_removeuser(1)>,
223 L<pts_rename(1)>,
224 L<pts_setfields(1)>,
225 L<pts_setmax(1)>,
226 L<pts_sleep(1)>,
227 L<pts_source(1)>
228
229 The I<OpenAFS Administration Guide> at
230 L<http://docs.openafs.org/AdminGuide/>.
231
232 =head1 COPYRIGHT
233
234 IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
235
236 This documentation is covered by the IBM Public License Version 1.0.  It was
237 converted from HTML to POD by software written by Chas Williams and Russ
238 Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.