aa75e9b7c1dffdd9eb34dd7fa03991f0c53c99d3
[openafs.git] / doc / man-pages / pod8 / bosserver.pod
1 =head1 NAME
2
3 bosserver - Initializes the BOS Server
4
5 =head1 SYNOPSIS
6
7 =for html
8 <div class="synopsis">
9
10 B<bosserver> [B<-noauth>] [B<-log>] [B<-enable_peer_stats>]
11     S<<< [B<-auditlog> <I<log path>>] >>> [B<-audit-interface> (file | sysvmq)]
12     [B<-enable_process_stats>] [B<-allow-dotted-principals>] [B<-help>]
13
14 =for html
15 </div>
16
17 =head1 DESCRIPTION
18
19 The bosserver command initializes the Basic OverSeer (BOS) Server
20 (B<bosserver> process). In the conventional configuration, the binary file
21 is located in the F</usr/afs/bin> directory on a file server machine.
22
23 The BOS Server must run on every file server machine and helps to automate
24 file server administration by performing the following tasks:
25
26 =over 4
27
28 =item *
29
30 Monitors the other AFS server processes on the local machine, to make sure
31 they are running correctly.
32
33 =item *
34
35 Automatically restarts failed processes, without contacting a human
36 operator. When restarting multiple server processes simultaneously, the
37 BOS Server takes interdependencies into account and initiates restarts in
38 the correct order.
39
40 =item *
41
42 Processes commands from the bos suite that administrators issue to verify
43 the status of server processes, install and start new processes, stop
44 processes either temporarily or permanently, and restart halted processes.
45
46 =item *
47
48 Manages system configuration information: the files that list the cell's
49 server encryption keys, database server machines, and users privileged to
50 issue commands from the B<bos> and B<vos> suites.
51
52 =back
53
54 The BOS Server is configured via the F<BosConfig> configuration file.
55 Normally, this file is managed via the B<bos> command suite rather than
56 edited directly.  See the L<BosConfig(5)> man page for the syntax of this
57 file.
58
59 The BOS Server will rewrite B<BosConfig> when shutting down, so changes
60 made manually to it will be discarded.  Instead, to change the BOS Server
61 configuration only for the next restart of B<bosserver>, create a file
62 named F</usr/afs/local/BosConfig.new>.  If B<BosConfig.new> exists when
63 B<bosserver> starts, it is renamed to F</usr/afs/local/BosConfig>,
64 removing any existing file by that name, before B<bosserver> reads its
65 configuration.
66
67 The BOS Server logs a default set of important events in the file
68 F</usr/afs/logs/BosLog>. To record the name of any user who performs a
69 privileged B<bos> command (one that requires being listed in the
70 F</usr/afs/etc/UserList> file), add the B<-log> flag. To display the
71 contents of the B<BosLog> file, use the B<bos getlog> command.
72
73 The first time that the BOS Server initializes on a server machine, it
74 creates several files and subdirectories in the local F</usr/afs>
75 directory, and sets their mode bits to protect them from unauthorized
76 access. Each time it restarts, it checks that the mode bits still comply
77 with the settings listed in the following chart. A question mark indicates
78 that the BOS Server initially turns off the bit (sets it to the hyphen),
79 but does not check it at restart.
80
81    /usr/afs              drwxr?xr-x
82    /usr/afs/backup       drwx???---
83    /usr/afs/bin          drwxr?xr-x
84    /usr/afs/db           drwx???---
85    /usr/afs/etc          drwxr?xr-x
86    /usr/afs/etc/KeyFile  -rw????---
87    /usr/afs/etc/UserList -rw?????--
88    /usr/afs/local        drwx???---
89    /usr/afs/logs         drwxr?xr-x
90
91 If the mode bits do not comply, the BOS Server writes the following
92 warning to the F<BosLog> file:
93
94    Bosserver reports inappropriate access on server directories
95
96 However, the BOS Server does not reset the mode bits, so the administrator
97 can set them to alternate values if desired (with the understanding that
98 the warning message then appears at startup).
99
100 This command does not use the syntax conventions of the AFS command
101 suites. Provide the command name and all option names in full.
102
103 =head1 OPTIONS
104
105 =over 4
106
107 =item B<-noauth>
108
109 Assigns the unprivileged identity C<anonymous> to the issuer, which is
110 useful only when authorization checking is disabled on the server machine
111 (for instance, during the installation of a file server machine.)
112
113 =item B<-log>
114
115 Records in the F</usr/afs/logs/BosLog> file the names of all users who
116 successfully issue a privileged B<bos> command (one that requires being
117 listed in the F</usr/afs/etc/UserList> file).
118
119 =item B<-auditlog> <I<log path>>
120
121 Turns on audit logging, and sets the path for the audit log.  The audit
122 log records information about RPC calls, including the name of the RPC
123 call, the host that submitted the call, the authenticated entity (user)
124 that issued the call, the parameters for the call, and if the call
125 succeeded or failed.
126
127 =item B<-audit-interface> (file | sysvmq)
128
129 Specifies what audit interface to use. Defaults to C<file>. See
130 L<fileserver(8)> for an explanation of each interface.
131
132 =item B<-enable_peer_stats>
133
134 Activates the collection of Rx statistics and allocates memory for their
135 storage. For each connection with a specific UDP port on another machine,
136 a separate record is kept for each type of RPC (FetchFile, GetStatus, and
137 so on) sent or received. To display or otherwise access the records, use
138 the Rx Monitoring API.
139
140 =item B<-enable_process_stats>
141
142 Activates the collection of Rx statistics and allocates memory for their
143 storage. A separate record is kept for each type of RPC (FetchFile,
144 GetStatus, and so on) sent or received, aggregated over all connections to
145 other machines. To display or otherwise access the records, use the Rx
146 Monitoring API.
147
148 =item B<-allow-dotted-principals>
149
150 By default, the RXKAD security layer will disallow access by Kerberos
151 principals with a dot in the first component of their name. This is to avoid
152 the confusion where principals user/admin and user.admin are both mapped to the
153 user.admin PTS entry. Sites whose Kerberos realms don't have these collisions 
154 between principal names may disable this check by starting the server
155 with this option.
156
157 =item B<-help>
158
159 Prints the online help for this command. All other valid options are
160 ignored.
161
162 =back
163
164 =head1 EXAMPLES
165
166 The following command initializes the BOS Server and logs the names of
167 users who issue privileged B<bos> commands.
168
169    % bosserver -log &
170
171 =head1 PRIVILEGE REQUIRED
172
173 The issuer most be logged onto a file server machine as the local
174 superuser C<root>.
175
176 =head1 SEE ALSO
177
178 L<BosConfig(5)>,
179 L<BosLog(5)>,
180 L<bos(8)>,
181 L<bos_create(8)>,
182 L<bos_exec(8)>,
183 L<bos_getlog(8)>,
184 L<bos_getrestart(8)>,
185 L<bos_restart(8)>,
186 L<bos_shutdown(8)>,
187 L<bos_start(8)>,
188 L<bos_startup(8)>,
189 L<bos_status(8)>,
190 L<bos_stop(8)>
191
192 =head1 COPYRIGHT
193
194 IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
195
196 This documentation is covered by the IBM Public License Version 1.0.  It was
197 converted from HTML to POD by software written by Chas Williams and Russ
198 Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.