.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BOSCONFIG 5" .TH BOSCONFIG 5 "2021-01-27" "OpenAFS" "AFS File Reference" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BosConfig \- Defines server processes for the BOS Server to monitor .SH "DESCRIPTION" .IX Header "DESCRIPTION" The \fIBosConfig\fR file lists the processes that the Basic OverSeer (\s-1BOS\s0) Server monitors on its server machine, and thus defines which \s-1AFS\s0 server processes run on the machine. It specifies how the \s-1BOS\s0 Server reacts when a process fails, and also defines the times at which the \s-1BOS\s0 Server automatically restarts processes as part of performance maintenance. The file must reside in the \fI/var/lib/openafs/local\fR directory on each \s-1AFS\s0 server machine. .PP A server process entry in the \fIBosConfig\fR file records the following information: .IP "\(bu" 4 The \fIentry type\fR, which is one of the following: .RS 4 .IP "cron" 4 .IX Item "cron" Designates a server process that runs periodically instead of continuously. The \s-1BOS\s0 Server starts a cron process only at specified times, not whenever it fails. All standard \s-1AFS\s0 process entries except \&\f(CW\*(C`fs\*(C'\fR are simple (there are no standard cron processes). .IP "fs" 4 .IX Item "fs" Designates a group of interdependent server processes. If one of the processes fails, the \s-1BOS\s0 Server must coordinate its restart with the restart of the other processes in the group, possibly by stopping them first. .Sp There is only one standard entry of this type, for which the conventional name is \f(CW\*(C`fs\*(C'\fR. It combines three server processes: the File Server (\fBfileserver\fR process), the Volume Server (\fBvolserver\fR process), and the Salvager (\fBsalvager\fR process). These processes all operate on the same data\*(--the \s-1AFS\s0 data stored on an \s-1AFS\s0 server machine's \fI/vicep\fR partitions and mounted in the \s-1AFS\s0 filespace\*(--but in different ways. Grouping the processes prevents them from attempting to access the same data simultaneously, which can cause corruption. .Sp During normal operation, the Salvager process is not active. If the File Server process fails, however, the \s-1BOS\s0 Server stops the Volume Server process and runs the Salvager process to correct any corruption that resulted from the failure. (The administrator can also issue the \fBbos salvage\fR command to invoke the Salvager process.) If the Volume Server fails, the \s-1BOS\s0 Server can restart it without stopping the File Server or running the Salvager. .IP "simple" 4 .IX Item "simple" Designates a server process that runs independently of any other on the server machine. If a simple process fails, the \s-1BOS\s0 Server does not have to coordinate its restart with any other process. .RE .RS 4 .RE .IP "\(bu" 4 The \fIentry name\fR. The conventional name for an entry in the \fIBosConfig\fR file and the associated process matches the binary filename. When issuing any \fBbos\fR command that takes the \fB\-instance\fR argument, identify each process by the name used in the \fIBosConfig\fR file. For a list of the names, see the \fBbos create\fR reference page. .IP "\(bu" 4 The process's \fIstatus flag\fR, which determines whether the \s-1BOS\s0 Server attempts to start the process in two cases: each time the \s-1BOS\s0 Server itself restarts, and when the process fails. The \fIBosConfig\fR file currently uses a binary notation to indicate whether the \s-1BOS\s0 Server attempts to restart the process as necessary or does not monitor it at all. For the sake of clarity, the \s-1AFS\s0 documentation refers to the flags as \&\f(CW\*(C`Run\*(C'\fR and \f(CW\*(C`NotRun\*(C'\fR instead. Only a system administrator, not the \s-1BOS\s0 Server, can change the flag. .IP "\(bu" 4 One or more \fIcommand parameters\fR which the \s-1BOS\s0 Server invokes to start the process or processes associated with the entry: .RS 4 .IP "\(bu" 4 A \f(CW\*(C`cron\*(C'\fR entry has two command parameters, the first the complete pathname to the program, and the second the time at which the \s-1BOS\s0 Server invokes the program. .IP "\(bu" 4 The \f(CW\*(C`fs\*(C'\fR entry has three command parameters, each the complete pathname to the \fBfileserver\fR, \fBvolserver\fR, and \fBsalvager\fR programs, in that order. .IP "\(bu" 4 A \f(CW\*(C`simple\*(C'\fR entry has only one command parameter, the complete pathname to the program. .RE .RS 4 .RE .PP In addition to server process entries, the \fIBosConfig\fR file specifies the times at which the \s-1BOS\s0 Server performs two types of automatic process restarts: .IP "\(bu" 4 The \fIgeneral restart\fR time at which the \s-1BOS\s0 Server restarts itself and then each process for which the entry in the \fIBosConfig\fR file has status flag \f(CW\*(C`Run\*(C'\fR. The default setting is Sunday at 4:00 a.m. .IP "\(bu" 4 The \fIbinary restart\fR time at which the \s-1BOS\s0 Server restarts any server process for which the time stamp on the binary file in the \fI/usr/lib/openafs\fR directory is later than the last restart time for the process. The default is 5:00 a.m. .PP Finally, there is an entry specifying whether the \s-1BOS\s0 Server will start in restricted mode. .PP Although the \fIBosConfig\fR file is in \s-1ASCII\s0 format, it is normally best not to use a text editor to alter it. The parser is very picky, and incorrectly formatted entries can prevent server startup in ways that are difficult to diagnose. Instead, use the appropriate commands from the \&\fBbos\fR command suite: .IP "\(bu" 4 The \fBbos create\fR command to create an entry in the file and start the associated process. .IP "\(bu" 4 The \fBbos delete\fR command to remove an entry from the file after the \fBbos stop\fR command is used to stop the associated process. .IP "\(bu" 4 The \fBbos getrestart\fR command to display the times at which the \s-1BOS\s0 Server performs automatic restarts. .IP "\(bu" 4 The \fBbos getrestricted\fR command to display whether the \s-1BOS\s0 Server is running in restricted mode. .IP "\(bu" 4 The \fBbos setrestart\fR command to set the times at which the \s-1BOS\s0 Server performs automatic process restarts. .IP "\(bu" 4 The \fBbos setrestricted\fR command to place the \s-1BOS\s0 Server in restricted mode. .IP "\(bu" 4 The \fBbos start\fR command to change an entry's status flag to \f(CW\*(C`Run\*(C'\fR and start the associated process. .IP "\(bu" 4 The \fBbos status\fR command to display all processes listed in the file. .IP "\(bu" 4 The \fBbos stop\fR command to change an entry's status flag to \f(CW\*(C`NotRun\*(C'\fR and stop the associated process. .PP There are also bos commands that start and stop processes without changing entries in the \fIBosConfig\fR file. The \s-1BOS\s0 Server reads the \fIBosConfig\fR file only when it starts, transferring the information into its memory. Thus a process's status as represented in the \s-1BOS\s0 Server's memory can diverge from its status in the \fIBosConfig\fR file. The following commands change a process's status in the \s-1BOS\s0 Server's memory only: .IP "\(bu" 4 The \fBbos restart\fR command restarts a specified set of processes, all processes, or all processes other than the \s-1BOS\s0 Server. .IP "\(bu" 4 The \fBbos shutdown\fR command stops a process. .IP "\(bu" 4 The \fBbos startup\fR command starts a process. .PP When the \s-1BOS\s0 Server shuts down, it rewrites \fIBosConfig\fR, discarding any changes made manually to that file. To change the configuration for the next \s-1BOS\s0 Server restart, instead write a new file to \fIBosConfig.new\fR. If \&\fIBosConfig.new\fR exists when the \s-1BOS\s0 Server starts, \fIBosConfig\fR will be replaced by \fIBosConfig.new\fR before the \s-1BOS\s0 Server reads its configuration. Note that the \s-1BOS\s0 Server will notice a new \fIBosConfig.new\fR file whenever the \&\fIgeneral restart\fR time is reached, if one is configured, since the \s-1BOS\s0 Server restarts itself at that time. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fBbos_create\fR\|(8), \&\fBbos_delete\fR\|(8), \&\fBbos_getrestart\fR\|(8), \&\fBbos_getrestricted\fR\|(8), \&\fBbos_restart\fR\|(8), \&\fBbos_setrestart\fR\|(8), \&\fBbos_setrestricted\fR\|(8), \&\fBbos_shutdown\fR\|(8), \&\fBbos_start\fR\|(8), \&\fBbos_startup\fR\|(8), \&\fBbos_status\fR\|(8), \&\fBbos_stop\fR\|(8), \&\fBbos_salvage\fR\|(8), \&\fBfileserver\fR\|(8), \&\fBsalvager\fR\|(8), \&\fBvolserver\fR\|(8) .SH "COPYRIGHT" .IX Header "COPYRIGHT" \&\s-1IBM\s0 Corporation 2000. All Rights Reserved. .PP This documentation is covered by the \s-1IBM\s0 Public License Version 1.0. It was converted from \s-1HTML\s0 to \s-1POD\s0 by software written by Chas Williams and Russ Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.