3b92d1028efdbf86a4241678c2872e5024234b6e
[openafs.git] / doc / xml / QuickStartUnix / auqbg006.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <chapter id="HDRWQ99">
3   <title>Installing Additional Server Machines</title>
4
5   <indexterm>
6     <primary>instructions</primary>
7
8     <secondary>file server machine after first</secondary>
9   </indexterm>
10
11   <indexterm>
12     <primary>installing</primary>
13
14     <secondary>file server machine after first</secondary>
15   </indexterm>
16
17   <indexterm>
18     <primary>server machine after first</primary>
19
20     <see>file server machine, additional</see>
21   </indexterm>
22
23   <para>Instructions for the following procedures appear in the indicated section of this chapter. <itemizedlist>
24       <listitem>
25         <para><link linkend="HDRWQ100">Installing an Additional File Server Machine</link></para>
26       </listitem>
27
28       <listitem>
29         <para><link linkend="HDRWQ114">Installing Database Server Functionality</link></para>
30       </listitem>
31
32       <listitem>
33         <para><link linkend="HDRWQ125">Removing Database Server Functionality</link></para>
34       </listitem>
35     </itemizedlist></para>
36
37   <para>The instructions make the following assumptions. <itemizedlist>
38       <listitem>
39         <para>You have already installed your cell's first file server machine by following the instructions in <link
40         linkend="HDRWQ17">Installing the First AFS Machine</link></para>
41       </listitem>
42
43       <listitem>
44         <para>You are logged in as the local superuser <emphasis role="bold">root</emphasis></para>
45       </listitem>
46
47       <listitem>
48         <para>You are working at the console</para>
49       </listitem>
50
51       <listitem>
52         <para>A standard version of one of the operating systems supported by the current version of AFS is running on the
53         machine</para>
54       </listitem>
55
56       <listitem>
57         <para>You can access the data on the AFS CD-ROMs, either through a local CD-ROM drive or via an NFS mount of a CD-ROM drive
58         attached to a machine that is accessible by network</para>
59       </listitem>
60     </itemizedlist></para>
61
62   <indexterm>
63     <primary>requirements</primary>
64
65     <secondary>file server machine (additional)</secondary>
66   </indexterm>
67
68   <sect1 id="HDRWQ100">
69     <title>Installing an Additional File Server Machine</title>
70
71     <para>The procedure for installing a new file server machine is similar to installing the first file server machine in your
72     cell. There are a few parts of the installation that differ depending on whether the machine is the same AFS system type as an
73     existing file server machine or is the first file server machine of its system type in your cell. The differences mostly concern
74     the source for the needed binaries and files, and what portions of the Update Server you install: <itemizedlist>
75         <listitem>
76           <para>On a new system type, you must load files and binaries from the AFS CD-ROM. You install the server portion of the
77           Update Server to make this machine the binary distribution machine for its system type.</para>
78         </listitem>
79
80         <listitem>
81           <para>On an existing system type, you can copy files and binaries from a previously installed file server machine, rather
82           than from the CD-ROM. You install the client portion of the Update Server to accept updates of binaries, because a
83           previously installed machine of this type was installed as the binary distribution machine.</para>
84         </listitem>
85       </itemizedlist></para>
86
87     <para>These instructions are brief; for more detailed information, refer to the corresponding steps in <link
88     linkend="HDRWQ17">Installing the First AFS Machine</link>. <indexterm>
89         <primary>overview</primary>
90
91         <secondary>installing server machine after first</secondary>
92       </indexterm></para>
93
94     <para>To install a new file server machine, perform the following procedures: <orderedlist>
95         <listitem>
96           <para>Copy needed binaries and files onto this machine's local disk</para>
97         </listitem>
98
99         <listitem>
100           <para>Incorporate AFS modifications into the kernel</para>
101         </listitem>
102
103         <listitem>
104           <para>Configure partitions for storing volumes</para>
105         </listitem>
106
107         <listitem>
108           <para>Replace the standard <emphasis role="bold">fsck</emphasis> utility with the AFS-modified version on some system
109           types</para>
110         </listitem>
111
112         <listitem>
113           <para>Start the Basic OverSeer (BOS) Server</para>
114         </listitem>
115
116         <listitem>
117           <para>Start the appropriate portion of the Update Server</para>
118         </listitem>
119
120         <listitem>
121           <para>Start the <emphasis role="bold">fs</emphasis> process, which incorporates three component processes: the File
122           Server, Volume Server, and Salvager</para>
123         </listitem>
124
125         <listitem>
126           <para>Start the controller process (called <emphasis role="bold">runntp</emphasis>) for the Network Time Protocol Daemon,
127           which synchronizes clocks</para>
128         </listitem>
129       </orderedlist></para>
130
131     <para>After completing the instructions in this section, you can install database server functionality on the machine according
132     to the instructions in <link linkend="HDRWQ114">Installing Database Server Functionality</link>. <indexterm>
133         <primary>CD-ROM</primary>
134
135         <secondary>creating /cdrom directory</secondary>
136
137         <tertiary>server machine after first</tertiary>
138       </indexterm> <indexterm>
139         <primary>cdrom directory</primary>
140
141         <secondary>server machine after first</secondary>
142       </indexterm> <indexterm>
143         <primary>file server machine, additional</primary>
144
145         <secondary>/cdrom directory</secondary>
146       </indexterm> <indexterm>
147         <primary>creating</primary>
148
149         <secondary>/cdrom directory</secondary>
150
151         <tertiary>server machine after first</tertiary>
152       </indexterm> <indexterm>
153         <primary>usr/afs directory</primary>
154
155         <secondary>server machine after first</secondary>
156       </indexterm> <indexterm>
157         <primary>file server machine, additional</primary>
158
159         <secondary>/usr/afs directory</secondary>
160       </indexterm> <indexterm>
161         <primary>creating</primary>
162
163         <secondary>/usr/afs directory</secondary>
164
165         <tertiary>server machine after first</tertiary>
166       </indexterm> <indexterm>
167         <primary>usr/afs/bin directory</primary>
168
169         <secondary>server machine after first</secondary>
170       </indexterm> <indexterm>
171         <primary>file server machine, additional</primary>
172
173         <secondary>/usr/afs/bin directory</secondary>
174       </indexterm> <indexterm>
175         <primary>creating</primary>
176
177         <secondary>/usr/afs/bin directory</secondary>
178
179         <tertiary>server machine after first</tertiary>
180       </indexterm> <indexterm>
181         <primary>usr/vice/etc directory</primary>
182
183         <secondary>server machine after first</secondary>
184       </indexterm> <indexterm>
185         <primary>file server machine, additional</primary>
186
187         <secondary>/usr/vice/etc directory</secondary>
188       </indexterm> <indexterm>
189         <primary>creating</primary>
190
191         <secondary>/usr/vice/etc directory</secondary>
192
193         <tertiary>server machine after first</tertiary>
194       </indexterm></para>
195
196     <sect2 id="Header_99">
197       <title>Creating AFS Directories and Performing Platform-Specific Procedures</title>
198
199       <para>Create the <emphasis role="bold">/usr/afs</emphasis> and <emphasis role="bold">/usr/vice/etc</emphasis> directories on
200       the local disk. Subsequent instructions copy files from the AFS distribution CD-ROM into them, at the appropriate point for
201       each system type.</para>
202
203       <programlisting>
204    # <emphasis role="bold">mkdir /usr/afs</emphasis>
205    # <emphasis role="bold">mkdir /usr/afs/bin</emphasis>
206    # <emphasis role="bold">mkdir /usr/vice</emphasis>
207    # <emphasis role="bold">mkdir /usr/vice/etc</emphasis>
208    # <emphasis role="bold">mkdir /cdrom</emphasis>     
209 </programlisting>
210
211       <para>As on the first file server machine, the initial procedures in installing an additional file server machine vary a good
212       deal from platform to platform. For convenience, the following sections group together all of the procedures for a system
213       type. Most of the remaining procedures are the same on every system type, but differences are noted as appropriate. The
214       initial procedures are the following. <itemizedlist>
215           <listitem>
216             <para>Incorporate AFS modifications into the kernel, either by using a dynamic kernel loader program or by building a
217             new static kernel</para>
218           </listitem>
219
220           <listitem>
221             <para>Configure server partitions to house AFS volumes</para>
222           </listitem>
223
224           <listitem>
225             <para>Replace the operating system vendor's <emphasis role="bold">fsck</emphasis> program with a version that recognizes
226             AFS data <indexterm>
227                 <primary>file server machine, additional</primary>
228
229                 <secondary>AFS login</secondary>
230
231                 <see>first AFS machine</see>
232               </indexterm></para>
233           </listitem>
234
235           <listitem>
236             <para>If the machine is to remain an AFS client machine, modify the machine's authentication system so that users obtain
237             an AFS token as they log into the local file system. (For this procedure only, the instructions direct you to the
238             platform-specific section in <link linkend="HDRWQ17">Installing the First AFS Machine</link>.)</para>
239           </listitem>
240         </itemizedlist></para>
241
242       <para>To continue, proceed to the section for this system type: <itemizedlist>
243           <listitem>
244             <para><link linkend="HDRWQ101">Getting Started on AIX Systems</link></para>
245           </listitem>
246
247           <listitem>
248             <para><link linkend="HDRWQ103">Getting Started on HP-UX Systems</link></para>
249           </listitem>
250
251           <listitem>
252             <para><link linkend="HDRWQ104">Getting Started on IRIX Systems</link></para>
253           </listitem>
254
255           <listitem>
256             <para><link linkend="HDRWQ106">Getting Started on Linux Systems</link></para>
257           </listitem>
258
259           <listitem>
260             <para><link linkend="HDRWQ107">Getting Started on Solaris Systems</link></para>
261           </listitem>
262         </itemizedlist></para>
263
264       <sect3 id="HDRWQ101">
265         <title>Getting Started on AIX Systems</title>
266
267         <para>Begin by running the AFS initialization script to call the AIX kernel extension facility, which dynamically loads AFS
268         modifications into the kernel. Then configure partitions and replace the AIX <emphasis role="bold">fsck</emphasis> program
269         with a version that correctly handles AFS volumes. <orderedlist>
270             <indexterm>
271               <primary>incorporating AFS kernel extensions</primary>
272
273               <secondary>server machine after first</secondary>
274
275               <tertiary>AIX</tertiary>
276             </indexterm>
277
278             <indexterm>
279               <primary>AFS kernel extensions</primary>
280
281               <secondary>on server machine after first</secondary>
282
283               <tertiary>AIX</tertiary>
284             </indexterm>
285
286             <indexterm>
287               <primary>file server machine, additional</primary>
288
289               <secondary>AFS kernel extensions</secondary>
290
291               <tertiary>on AIX</tertiary>
292             </indexterm>
293
294             <indexterm>
295               <primary>AIX</primary>
296
297               <secondary>AFS kernel extensions</secondary>
298
299               <tertiary>on add'l server machine</tertiary>
300             </indexterm>
301
302             <listitem>
303               <para>Mount the AFS CD-ROM for AIX on the local <emphasis role="bold">/cdrom</emphasis> directory. For instructions on
304               mounting CD-ROMs (either locally or remotely via NFS), see your AIX documentation. Then change directory as indicated.
305               <programlisting>
306    # <emphasis role="bold">cd  /cdrom/rs_aix42/root.client/usr/vice/etc</emphasis>
307 </programlisting></para>
308             </listitem>
309
310             <listitem>
311               <para>Copy the AFS kernel library files to the local <emphasis role="bold">/usr/vice/etc/dkload</emphasis> directory,
312               and the AFS initialization script to the <emphasis role="bold">/etc</emphasis> directory. <programlisting>
313    # <emphasis role="bold">cp -rp  dkload  /usr/vice/etc</emphasis>
314    # <emphasis role="bold">cp -p  rc.afs  /etc/rc.afs</emphasis>
315 </programlisting></para>
316             </listitem>
317
318             <listitem>
319               <para>Edit the <emphasis role="bold">/etc/rc.afs</emphasis> script, setting the <computeroutput>NFS</computeroutput>
320               variable as indicated.</para>
321
322               <para>If the machine is not to function as an NFS/AFS Translator, set the <computeroutput>NFS</computeroutput>
323               variable as follows.</para>
324
325               <programlisting>
326    NFS=$NFS_NONE
327 </programlisting>
328
329               <para>If the machine is to function as an NFS/AFS Translator and is running AIX 4.2.1 or higher, set the
330               <computeroutput>NFS</computeroutput> variable as follows. Note that NFS must already be loaded into the kernel, which
331               happens automatically on systems running AIX 4.1.1 and later, as long as the file <emphasis
332               role="bold">/etc/exports</emphasis> exists.</para>
333
334               <programlisting>
335    NFS=$NFS_IAUTH
336 </programlisting>
337             </listitem>
338
339             <listitem>
340               <para>Invoke the <emphasis role="bold">/etc/rc.afs</emphasis> script to load AFS modifications into the kernel. You
341               can ignore any error messages about the inability to start the BOS Server or the Cache Manager or AFS client.
342               <programlisting>
343    # <emphasis role="bold">/etc/rc.afs</emphasis>
344 </programlisting> <indexterm>
345                   <primary>configuring</primary>
346
347                   <secondary>AFS server partition on server machine after first</secondary>
348
349                   <tertiary>AIX</tertiary>
350                 </indexterm> <indexterm>
351                   <primary>AFS server partition</primary>
352
353                   <secondary>configuring on server machine after first</secondary>
354
355                   <tertiary>AIX</tertiary>
356                 </indexterm> <indexterm>
357                   <primary>file server machine, additional</primary>
358
359                   <secondary>AFS server partition</secondary>
360
361                   <tertiary>on AIX</tertiary>
362                 </indexterm> <indexterm>
363                   <primary>AIX</primary>
364
365                   <secondary>AFS server partition</secondary>
366
367                   <tertiary>on add'l server machine</tertiary>
368                 </indexterm></para>
369             </listitem>
370
371             <listitem>
372               <para>Create a directory called <emphasis role="bold">/vicep</emphasis><replaceable>xx</replaceable> for each AFS
373               server partition you are configuring (there must be at least one). Repeat the command for each partition.
374               <programlisting>
375    # <emphasis role="bold">mkdir /vicep</emphasis><replaceable>xx</replaceable>
376 </programlisting></para>
377             </listitem>
378
379             <listitem>
380               <para>Use the <emphasis role="bold">SMIT</emphasis> program to create a journaling file system on each partition to be
381               configured as an AFS server partition.</para>
382             </listitem>
383
384             <listitem>
385               <para>Mount each partition at one of the <emphasis role="bold">/vicep</emphasis><replaceable>xx</replaceable>
386               directories. Choose one of the following three methods: <itemizedlist>
387                   <listitem>
388                     <para>Use the <emphasis role="bold">SMIT</emphasis> program</para>
389                   </listitem>
390
391                   <listitem>
392                     <para>Use the <emphasis role="bold">mount -a</emphasis> command to mount all partitions at once</para>
393                   </listitem>
394
395                   <listitem>
396                     <para>Use the <emphasis role="bold">mount</emphasis> command on each partition in turn</para>
397                   </listitem>
398                 </itemizedlist></para>
399
400               <para>Also configure the partitions so that they are mounted automatically at each reboot. For more information, refer
401               to the AIX documentation. <indexterm>
402                   <primary>replacing fsck program</primary>
403
404                   <secondary>server machine after first</secondary>
405
406                   <tertiary>AIX</tertiary>
407                 </indexterm> <indexterm>
408                   <primary>fsck program</primary>
409
410                   <secondary>on server machine after first</secondary>
411
412                   <tertiary>AIX</tertiary>
413                 </indexterm> <indexterm>
414                   <primary>file server machine, additional</primary>
415
416                   <secondary>fsck program</secondary>
417
418                   <tertiary>on AIX</tertiary>
419                 </indexterm> <indexterm>
420                   <primary>AIX</primary>
421
422                   <secondary>fsck program</secondary>
423
424                   <tertiary>on add'l server machine</tertiary>
425                 </indexterm></para>
426             </listitem>
427
428             <listitem>
429               <para>Move the AIX <emphasis role="bold">fsck</emphasis> program helper to a safe location and install the version
430               from the AFS distribution in its place. The AFS CD-ROM must still be mounted at the <emphasis
431               role="bold">/cdrom</emphasis> directory. <programlisting>
432    # <emphasis role="bold">cd /sbin/helpers</emphasis>
433    # <emphasis role="bold">mv v3fshelper v3fshelper.noafs</emphasis>
434    # <emphasis role="bold">cp -p /cdrom/rs_aix42/root.server/etc/v3fshelper v3fshelper</emphasis>
435 </programlisting></para>
436             </listitem>
437
438             <listitem>
439               <para>If the machine is to remain an AFS client, incorporate AFS into its authentication system, following the
440               instructions in <link linkend="HDRWQ25">Enabling AFS Login on AIX Systems</link>.</para>
441             </listitem>
442
443             <listitem>
444               <para>Proceed to <link linkend="HDRWQ108">Starting Server Programs</link>.</para>
445             </listitem>
446           </orderedlist></para>
447       </sect3>
448
449       <sect3 id="HDRWQ103">
450         <title>Getting Started on HP-UX Systems</title>
451
452         <para>Begin by building AFS modifications into the kernel, then configure server partitions and replace the HP-UX <emphasis
453         role="bold">fsck</emphasis> program with a version that correctly handles AFS volumes.</para>
454
455         <para>If the machine's hardware and software configuration exactly matches another HP-UX machine on which AFS is already
456         built into the kernel, you can copy the kernel from that machine to this one. In general, however, it is better to build AFS
457         modifications into the kernel on each machine according to the following instructions. <orderedlist>
458             <indexterm>
459               <primary>incorporating AFS kernel extensions</primary>
460
461               <secondary>server machine after first</secondary>
462
463               <tertiary>HP-UX</tertiary>
464             </indexterm>
465
466             <indexterm>
467               <primary>AFS kernel extensions</primary>
468
469               <secondary>on server machine after first</secondary>
470
471               <tertiary>HP-UX</tertiary>
472             </indexterm>
473
474             <indexterm>
475               <primary>file server machine, additional</primary>
476
477               <secondary>AFS kernel extensions</secondary>
478
479               <tertiary>on HP-UX</tertiary>
480             </indexterm>
481
482             <indexterm>
483               <primary>HP-UX</primary>
484
485               <secondary>AFS-modified kernel</secondary>
486
487               <tertiary>on add'l server machine</tertiary>
488             </indexterm>
489
490             <listitem>
491               <para>Move the existing kernel-related files to a safe location. <programlisting>
492    # <emphasis role="bold">cp /stand/vmunix /stand/vmunix.noafs</emphasis>
493    # <emphasis role="bold">cp /stand/system /stand/system.noafs</emphasis>
494 </programlisting></para>
495             </listitem>
496
497             <listitem>
498               <para>Mount the AFS CD-ROM for HP-UX on the local <emphasis role="bold">/cdrom</emphasis> directory. For instructions
499               on mounting CD-ROMs (either locally or remotely via NFS), see your HP-UX documentation. Then change directory as
500               indicated. <programlisting>
501    # <emphasis role="bold">cd /cdrom/hp_ux110/root.client</emphasis>
502 </programlisting></para>
503             </listitem>
504
505             <listitem>
506               <para>Copy the AFS initialization file to the local directory for initialization files (by convention, <emphasis
507               role="bold">/sbin/init.d</emphasis> on HP-UX machines). Note the removal of the <emphasis role="bold">.rc</emphasis>
508               extension as you copy the file. <programlisting>
509    # <emphasis role="bold">cp usr/vice/etc/afs.rc  /sbin/init.d/afs</emphasis>
510 </programlisting></para>
511             </listitem>
512
513             <listitem>
514               <para>Copy the file <emphasis role="bold">afs.driver</emphasis> to the local <emphasis
515               role="bold">/usr/conf/master.d</emphasis> directory, changing its name to <emphasis role="bold">afs</emphasis> as you
516               do. <programlisting>
517    # <emphasis role="bold">cp  usr/vice/etc/afs.driver  /usr/conf/master.d/afs</emphasis>
518 </programlisting></para>
519             </listitem>
520
521             <listitem>
522               <para>Copy the AFS kernel module to the local <emphasis role="bold">/usr/conf/lib</emphasis> directory.</para>
523
524               <para>If the machine's kernel supports NFS server functionality:</para>
525
526               <programlisting>
527    # <emphasis role="bold">cp bin/libafs.a /usr/conf/lib</emphasis>   
528 </programlisting>
529
530               <para>If the machine's kernel does not support NFS server functionality, change the file's name as you copy it:</para>
531
532               <programlisting>
533    # <emphasis role="bold">cp bin/libafs.nonfs.a /usr/conf/lib/libafs.a</emphasis>
534 </programlisting>
535             </listitem>
536
537             <listitem>
538               <para>Incorporate the AFS driver into the kernel, either using the <emphasis role="bold">SAM</emphasis> program or a
539               series of individual commands. <itemizedlist>
540                   <listitem>
541                     <para>To use the <emphasis role="bold">SAM</emphasis> program: <orderedlist>
542                         <listitem>
543                           <para>Invoke the <emphasis role="bold">SAM</emphasis> program, specifying the hostname of the local
544                           machine as <replaceable>local_hostname</replaceable>. The <emphasis role="bold">SAM</emphasis> graphical
545                           user interface pops up. <programlisting>
546    # <emphasis role="bold">sam -display</emphasis> <replaceable>local_hostname</replaceable><emphasis role="bold">:0</emphasis> 
547 </programlisting></para>
548                         </listitem>
549
550                         <listitem>
551                           <para>Choose the <emphasis role="bold">Kernel Configuration</emphasis> icon, then the <emphasis
552                           role="bold">Drivers</emphasis> icon. From the list of drivers, select <emphasis
553                           role="bold">afs</emphasis>.</para>
554                         </listitem>
555
556                         <listitem>
557                           <para>Open the pull-down <emphasis role="bold">Actions</emphasis> menu and choose the <emphasis
558                           role="bold">Add Driver to Kernel</emphasis> option.</para>
559                         </listitem>
560
561                         <listitem>
562                           <para>Open the <emphasis role="bold">Actions</emphasis> menu again and choose the <emphasis
563                           role="bold">Create a New Kernel</emphasis> option.</para>
564                         </listitem>
565
566                         <listitem>
567                           <para>Confirm your choices by choosing <emphasis role="bold">Yes</emphasis> and <emphasis
568                           role="bold">OK</emphasis> when prompted by subsequent pop-up windows. The <emphasis
569                           role="bold">SAM</emphasis> program builds the kernel and reboots the system.</para>
570                         </listitem>
571
572                         <listitem>
573                           <para>Login again as the superuser <emphasis role="bold">root</emphasis>. <programlisting>
574    login: <emphasis role="bold">root</emphasis>
575    Password: <replaceable>root_password</replaceable>
576 </programlisting></para>
577                         </listitem>
578                       </orderedlist></para>
579                   </listitem>
580
581                   <listitem>
582                     <para>To use individual commands: <orderedlist>
583                         <listitem>
584                           <para>Edit the file <emphasis role="bold">/stand/system</emphasis>, adding an entry for <emphasis
585                           role="bold">afs</emphasis> to the <computeroutput>Subsystems</computeroutput> section.</para>
586                         </listitem>
587
588                         <listitem>
589                           <para>Change to the <emphasis role="bold">/stand/build</emphasis> directory and issue the <emphasis
590                           role="bold">mk_kernel</emphasis> command to build the kernel. <programlisting>
591    # <emphasis role="bold">cd /stand/build</emphasis>
592    # <emphasis role="bold">mk_kernel</emphasis>
593 </programlisting></para>
594                         </listitem>
595
596                         <listitem>
597                           <para>Move the new kernel to the standard location (<emphasis role="bold">/stand/vmunix</emphasis>),
598                           reboot the machine to start using it, and login again as the superuser <emphasis
599                           role="bold">root</emphasis>. <programlisting>
600    # <emphasis role="bold">mv /stand/build/vmunix_test /stand/vmunix</emphasis>
601    # <emphasis role="bold">cd /</emphasis>
602    # <emphasis role="bold">shutdown -r now</emphasis>             
603    login: <emphasis role="bold">root</emphasis>
604    Password: <replaceable>root_password</replaceable>
605 </programlisting></para>
606                         </listitem>
607                       </orderedlist></para>
608                   </listitem>
609                 </itemizedlist></para>
610
611               <indexterm>
612                 <primary>configuring</primary>
613
614                 <secondary>AFS server partition on server machine after first</secondary>
615
616                 <tertiary>HP-UX</tertiary>
617               </indexterm>
618
619               <indexterm>
620                 <primary>AFS server partition</primary>
621
622                 <secondary>configuring on server machine after first</secondary>
623
624                 <tertiary>HP-UX</tertiary>
625               </indexterm>
626
627               <indexterm>
628                 <primary>file server machine, additional</primary>
629
630                 <secondary>AFS server partition</secondary>
631
632                 <tertiary>on HP-UX</tertiary>
633               </indexterm>
634
635               <indexterm>
636                 <primary>HP-UX</primary>
637
638                 <secondary>AFS server partition</secondary>
639
640                 <tertiary>on add'l server machine</tertiary>
641               </indexterm>
642             </listitem>
643
644             <listitem>
645               <para>Create a directory called <emphasis role="bold">/vicep</emphasis><replaceable>xx</replaceable> for each AFS
646               server partition you are configuring (there must be at least one). Repeat the command for each partition.
647               <programlisting>
648    # <emphasis role="bold">mkdir /vicep</emphasis><replaceable>xx</replaceable>
649 </programlisting></para>
650             </listitem>
651
652             <listitem>
653               <para>Use the <emphasis role="bold">SAM</emphasis> program to create a file system on each partition. For
654               instructions, consult the HP-UX documentation.</para>
655             </listitem>
656
657             <listitem>
658               <para>On some HP-UX systems that use logical volumes, the <emphasis role="bold">SAM</emphasis> program automatically
659               mounts the partitions. If it has not, mount each partition by issuing either the <emphasis role="bold">mount
660               -a</emphasis> command to mount all partitions at once or the <emphasis role="bold">mount</emphasis> command to mount
661               each partition in turn. <indexterm>
662                   <primary>replacing fsck program</primary>
663
664                   <secondary>server machine after first</secondary>
665
666                   <tertiary>HP-UX</tertiary>
667                 </indexterm> <indexterm>
668                   <primary>fsck program</primary>
669
670                   <secondary>on server machine after first</secondary>
671
672                   <tertiary>HP-UX</tertiary>
673                 </indexterm> <indexterm>
674                   <primary>file server machine, additional</primary>
675
676                   <secondary>fsck program</secondary>
677
678                   <tertiary>on HP-UX</tertiary>
679                 </indexterm> <indexterm>
680                   <primary>HP-UX</primary>
681
682                   <secondary>fsck program</secondary>
683
684                   <tertiary>on add'l server machine</tertiary>
685                 </indexterm></para>
686             </listitem>
687
688             <listitem>
689               <para>Create the command configuration file <emphasis role="bold">/sbin/lib/mfsconfig.d/afs</emphasis>. Use a text
690               editor to place the indicated two lines in it: <programlisting>
691    format_revision 1
692    fsck            0        m,P,p,d,f,b:c:y,n,Y,N,q,
693 </programlisting></para>
694             </listitem>
695
696             <listitem>
697               <para>Create and change directory to an AFS-specific command directory called <emphasis
698               role="bold">/sbin/fs/afs</emphasis>. <programlisting>
699    # <emphasis role="bold">mkdir /sbin/fs/afs</emphasis>
700    # <emphasis role="bold">cd  /sbin/fs/afs</emphasis>
701 </programlisting></para>
702             </listitem>
703
704             <listitem>
705               <para>Copy the AFS-modified version of the <emphasis role="bold">fsck</emphasis> program (the <emphasis
706               role="bold">vfsck</emphasis> binary) and related files from the distribution directory to the new AFS-specific command
707               directory. <programlisting>
708    # <emphasis role="bold">cp -p /cdrom/hp_ux110/root.server/etc/*  .</emphasis>
709 </programlisting></para>
710             </listitem>
711
712             <listitem>
713               <para>Change the <emphasis role="bold">vfsck</emphasis> binary's name to <emphasis role="bold">fsck</emphasis> and set
714               the mode bits appropriately on all of the files in the <emphasis role="bold">/sbin/fs/afs</emphasis> directory.
715               <programlisting>
716    # <emphasis role="bold">mv  vfsck  fsck</emphasis>
717    # <emphasis role="bold">chmod  755  *</emphasis>
718 </programlisting></para>
719             </listitem>
720
721             <listitem>
722               <para>Edit the <emphasis role="bold">/etc/fstab</emphasis> file, changing the file system type for each AFS server
723               partition from <computeroutput>hfs</computeroutput> to <computeroutput>afs</computeroutput>. This ensures that the
724               AFS-modified <emphasis role="bold">fsck</emphasis> program runs on the appropriate partitions.</para>
725
726               <para>The sixth line in the following example of an edited file shows an AFS server partition, <emphasis
727               role="bold">/vicepa</emphasis>.</para>
728
729               <programlisting>
730    /dev/vg00/lvol1 / hfs defaults 0 1
731    /dev/vg00/lvol4 /opt hfs defaults 0 2
732    /dev/vg00/lvol5 /tmp hfs defaults 0 2
733    /dev/vg00/lvol6 /usr hfs defaults 0 2
734    /dev/vg00/lvol8 /var hfs defaults 0 2
735    /dev/vg00/lvol9 /vicepa afs defaults 0 2
736    /dev/vg00/lvol7 /usr/vice/cache hfs defaults 0 2
737 </programlisting>
738             </listitem>
739
740             <listitem>
741               <para>If the machine is to remain an AFS client, incorporate AFS into its authentication system, following the
742               instructions in <link linkend="HDRWQ35">Enabling AFS Login on HP-UX Systems</link>.</para>
743             </listitem>
744
745             <listitem>
746               <para>Proceed to <link linkend="HDRWQ108">Starting Server Programs</link>.</para>
747             </listitem>
748           </orderedlist></para>
749       </sect3>
750
751       <sect3 id="HDRWQ104">
752         <title>Getting Started on IRIX Systems</title>
753
754         <para>Begin by incorporating AFS modifications into the kernel. Either use the <emphasis role="bold">ml</emphasis> dynamic
755         loader program, or build a static kernel. Then configure partitions to house AFS volumes. AFS supports use of both EFS and
756         XFS partitions for housing AFS volumes. SGI encourages use of XFS partitions. <indexterm>
757             <primary>file server machine, additional</primary>
758
759             <secondary>fsck program</secondary>
760
761             <tertiary>on IRIX</tertiary>
762           </indexterm> <indexterm>
763             <primary>fsck program</primary>
764
765             <secondary>on server machine after first</secondary>
766
767             <tertiary>IRIX</tertiary>
768           </indexterm></para>
769
770         <para>You do not need to replace IRIX <emphasis role="bold">fsck</emphasis> program, because the version that SGI
771         distributes handles AFS volumes properly. <orderedlist>
772             <indexterm>
773               <primary>incorporating AFS kernel extensions</primary>
774
775               <secondary>server machine after first</secondary>
776
777               <tertiary>IRIX</tertiary>
778             </indexterm>
779
780             <indexterm>
781               <primary>AFS kernel extensions</primary>
782
783               <secondary>on server machine after first</secondary>
784
785               <tertiary>IRIX</tertiary>
786             </indexterm>
787
788             <indexterm>
789               <primary>file server machine, additional</primary>
790
791               <secondary>AFS kernel extensions</secondary>
792
793               <tertiary>on IRIX</tertiary>
794             </indexterm>
795
796             <listitem>
797               <para>Prepare for incorporating AFS into the kernel by performing the following procedures. <orderedlist>
798                   <listitem>
799                     <para>Mount the AFS CD-ROM for IRIX on the <emphasis role="bold">/cdrom</emphasis> directory. For instructions
800                     on mounting CD-ROMs (either locally or remotely via NFS), see your IRIX documentation. Then change directory as
801                     indicated. <programlisting>
802    # <emphasis role="bold">cd  /cdrom/sgi_65/root.client</emphasis>
803 </programlisting></para>
804                   </listitem>
805
806                   <listitem>
807                     <para>Copy the AFS initialization script to the local directory for initialization files (by convention,
808                     <emphasis role="bold">/etc/init.d</emphasis> on IRIX machines). Note the removal of the <emphasis
809                     role="bold">.rc</emphasis> extension as you copy the script. <programlisting>
810    # <emphasis role="bold">cp -p   usr/vice/etc/afs.rc  /etc/init.d/afs</emphasis>
811 </programlisting></para>
812                   </listitem>
813
814                   <listitem>
815                     <para>Issue the <emphasis role="bold">uname -m</emphasis> command to determine the machine's CPU board type. The
816                     <emphasis role="bold">IP</emphasis><replaceable>xx</replaceable> value in the output must match one of the
817                     supported CPU board types listed in the <emphasis>OpenAFS Release Notes</emphasis> for the current version of
818                     AFS. <programlisting>
819    # <emphasis role="bold">uname -m</emphasis>
820 </programlisting></para>
821                   </listitem>
822                 </orderedlist></para>
823             </listitem>
824
825             <listitem>
826               <para>Incorporate AFS into the kernel, either using the <emphasis role="bold">ml</emphasis> program or by building AFS
827               modifications into a static kernel. <itemizedlist>
828                   <indexterm>
829                     <primary>IRIX</primary>
830
831                     <secondary>AFS kernel extensions</secondary>
832
833                     <tertiary>on server machine after first</tertiary>
834                   </indexterm>
835
836                   <listitem>
837                     <para>To use the <emphasis role="bold">ml</emphasis> program: <indexterm>
838                         <primary>afsml variable (IRIX)</primary>
839
840                         <secondary>server machine after first</secondary>
841                       </indexterm> <indexterm>
842                         <primary>variables</primary>
843
844                         <secondary>afsml (IRIX)</secondary>
845
846                         <tertiary>server machine after first</tertiary>
847                       </indexterm> <indexterm>
848                         <primary>IRIX</primary>
849
850                         <secondary>afsml variable</secondary>
851
852                         <tertiary>server machine after first</tertiary>
853                       </indexterm> <indexterm>
854                         <primary>afsxnfs variable (IRIX)</primary>
855
856                         <secondary>server machine after first</secondary>
857                       </indexterm> <indexterm>
858                         <primary>variables</primary>
859
860                         <secondary>afsxnfs (IRIX)</secondary>
861
862                         <tertiary>server machine after first</tertiary>
863                       </indexterm> <indexterm>
864                         <primary>IRIX</primary>
865
866                         <secondary>afsxnfs variable</secondary>
867
868                         <tertiary>server machine after first</tertiary>
869                       </indexterm> <orderedlist>
870                         <listitem>
871                           <para>Create the local <emphasis role="bold">/usr/vice/etc/sgiload</emphasis> directory to house the AFS
872                           kernel library file. <programlisting>
873    # <emphasis role="bold">mkdir /usr/vice/etc/sgiload</emphasis>
874 </programlisting></para>
875                         </listitem>
876
877                         <listitem>
878                           <para>Copy the appropriate AFS kernel library file to the <emphasis
879                           role="bold">/usr/vice/etc/sgiload</emphasis> directory. The <emphasis
880                           role="bold">IP</emphasis><replaceable>xx</replaceable> portion of the library file name must match the
881                           value previously returned by the <emphasis role="bold">uname -m</emphasis> command. Also choose the file
882                           appropriate to whether the machine's kernel supports NFS server functionality (NFS must be supported for
883                           the machine to act as an NFS/AFS Translator). Single- and multiprocessor machines use the same library
884                           file.</para>
885
886                           <para>(You can choose to copy all of the kernel library files into the <emphasis
887                           role="bold">/usr/vice/etc/sgiload</emphasis> directory, but they require a significant amount of
888                           space.)</para>
889
890                           <para>If the machine's kernel supports NFS server functionality:</para>
891
892                           <programlisting>
893    # <emphasis role="bold">cp -p  usr/vice/etc/sgiload/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.o  /usr/vice/etc/sgiload</emphasis>   
894 </programlisting>
895
896                           <para>If the machine's kernel does not support NFS server functionality:</para>
897
898                           <programlisting>
899    # <emphasis role="bold">cp -p  usr/vice/etc/sgiload/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.nonfs.o</emphasis>   \
900                    <emphasis role="bold">/usr/vice/etc/sgiload</emphasis>
901 </programlisting>
902                         </listitem>
903
904                         <listitem>
905                           <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to activate the <emphasis
906                           role="bold">afsml</emphasis> configuration variable. <programlisting>
907    # <emphasis role="bold">/etc/chkconfig -f afsml on</emphasis>   
908 </programlisting></para>
909
910                           <para>If the machine is to function as an NFS/AFS Translator and the kernel supports NFS server
911                           functionality, activate the <emphasis role="bold">afsxnfs</emphasis> variable.</para>
912
913                           <programlisting>
914    # <emphasis role="bold">/etc/chkconfig -f afsxnfs on</emphasis>
915 </programlisting>
916                         </listitem>
917
918                         <listitem>
919                           <para>Run the <emphasis role="bold">/etc/init.d/afs</emphasis> script to load AFS extensions into the
920                           kernel. The script invokes the <emphasis role="bold">ml</emphasis> command, automatically determining
921                           which kernel library file to use based on this machine's CPU type and the activation state of the
922                           <emphasis role="bold">afsxnfs</emphasis> variable.</para>
923
924                           <para>You can ignore any error messages about the inability to start the BOS Server or the Cache Manager
925                           or AFS client.</para>
926
927                           <programlisting>
928    # <emphasis role="bold">/etc/init.d/afs start</emphasis>
929 </programlisting>
930                         </listitem>
931
932                         <listitem>
933                           <para>Proceed to Step <link linkend="LIWQ105">3</link>.</para>
934                         </listitem>
935                       </orderedlist></para>
936
937                     <indexterm>
938                       <primary>IRIX</primary>
939
940                       <secondary>AFS-modified kernel</secondary>
941
942                       <tertiary>on add'l server machine</tertiary>
943                     </indexterm>
944                   </listitem>
945
946                   <listitem>
947                     <para>If you prefer to build a kernel, and the machine's hardware and software configuration exactly matches
948                     another IRIX machine on which AFS is already built into the kernel, you can copy the kernel from that machine to
949                     this one. In general, however, it is better to build AFS modifications into the kernel on each machine according
950                     to the following instructions. <orderedlist>
951                         <listitem>
952                           <para>Copy the kernel initialization file <emphasis role="bold">afs.sm</emphasis> to the local <emphasis
953                           role="bold">/var/sysgen/system</emphasis> directory, and the kernel master file <emphasis
954                           role="bold">afs</emphasis> to the local <emphasis role="bold">/var/sysgen/master.d</emphasis> directory.
955                           <programlisting>
956    # <emphasis role="bold">cp -p  bin/afs.sm  /var/sysgen/system</emphasis>
957    # <emphasis role="bold">cp -p  bin/afs  /var/sysgen/master.d</emphasis>
958 </programlisting></para>
959                         </listitem>
960
961                         <listitem>
962                           <para>Copy the appropriate AFS kernel library file to the local file <emphasis
963                           role="bold">/var/sysgen/boot/afs.a</emphasis>; the <emphasis
964                           role="bold">IP</emphasis><replaceable>xx</replaceable> portion of the library file name must match the
965                           value previously returned by the <emphasis role="bold">uname -m</emphasis> command. Also choose the file
966                           appropriate to whether the machine's kernel supports NFS server functionality (NFS must be supported for
967                           the machine to act as an NFS/AFS Translator). Single- and multiprocessor machines use the same library
968                           file.</para>
969
970                           <para>If the machine's kernel supports NFS server functionality:</para>
971
972                           <programlisting>
973    # <emphasis role="bold">cp -p   bin/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.a   /var/sysgen/boot/afs.a</emphasis>   
974 </programlisting>
975
976                           <para>If the machine's kernel does not support NFS server functionality:</para>
977
978                           <programlisting>
979    # <emphasis role="bold">cp -p  bin/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.nonfs.a  /var/sysgen/boot/afs.a</emphasis>
980 </programlisting>
981                         </listitem>
982
983                         <listitem>
984                           <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to deactivate the <emphasis
985                           role="bold">afsml</emphasis> configuration variable. <programlisting>
986    # <emphasis role="bold">/etc/chkconfig -f afsml off</emphasis>   
987 </programlisting></para>
988
989                           <para>If the machine is to function as an NFS/AFS Translator and the kernel supports NFS server
990                           functionality, activate the <emphasis role="bold">afsxnfs</emphasis> variable.</para>
991
992                           <programlisting>
993    # <emphasis role="bold">/etc/chkconfig -f afsxnfs on</emphasis>
994 </programlisting>
995                         </listitem>
996
997                         <listitem>
998                           <para>Copy the existing kernel file, <emphasis role="bold">/unix</emphasis>, to a safe location. Compile
999                           the new kernel, which is created in the file <emphasis role="bold">/unix.install</emphasis>. It overwrites
1000                           the existing <emphasis role="bold">/unix</emphasis> file when the machine reboots in the next step.
1001                           <programlisting>
1002    # <emphasis role="bold">cp /unix /unix_noafs</emphasis>
1003    # <emphasis role="bold">autoconfig</emphasis>
1004 </programlisting></para>
1005                         </listitem>
1006
1007                         <listitem>
1008                           <para>Reboot the machine to start using the new kernel, and login again as the superuser <emphasis
1009                           role="bold">root</emphasis>. <programlisting>
1010    # <emphasis role="bold">cd /</emphasis>
1011    # <emphasis role="bold">shutdown -i6 -g0 -y</emphasis>
1012    login: <emphasis role="bold">root</emphasis>
1013    Password: <replaceable>root_password</replaceable>
1014 </programlisting></para>
1015                         </listitem>
1016                       </orderedlist></para>
1017                   </listitem>
1018                 </itemizedlist></para>
1019
1020               <indexterm>
1021                 <primary>configuring</primary>
1022
1023                 <secondary>AFS server partition on server machine after first</secondary>
1024
1025                 <tertiary>IRIX</tertiary>
1026               </indexterm>
1027
1028               <indexterm>
1029                 <primary>AFS server partition</primary>
1030
1031                 <secondary>configuring on server machine after first</secondary>
1032
1033                 <tertiary>IRIX</tertiary>
1034               </indexterm>
1035
1036               <indexterm>
1037                 <primary>file server machine, additional</primary>
1038
1039                 <secondary>AFS server partition</secondary>
1040
1041                 <tertiary>on IRIX</tertiary>
1042               </indexterm>
1043
1044               <indexterm>
1045                 <primary>IRIX</primary>
1046
1047                 <secondary>AFS server partition</secondary>
1048
1049                 <tertiary>on add'l server machine</tertiary>
1050               </indexterm>
1051             </listitem>
1052
1053             <listitem>
1054               <para><anchor id="LIWQ105" />Create a directory called <emphasis
1055               role="bold">/vicep</emphasis><replaceable>xx</replaceable> for each AFS server partition you are configuring (there
1056               must be at least one). Repeat the command for each partition. <programlisting>
1057    # <emphasis role="bold">mkdir /vicep</emphasis><replaceable>xx</replaceable>
1058 </programlisting></para>
1059             </listitem>
1060
1061             <listitem>
1062               <para>Add a line with the following format to the file systems registry file, <emphasis
1063               role="bold">/etc/fstab</emphasis>, for each partition (or logical volume created with the XLV volume manager) to be
1064               mounted on one of the directories created in the previous step.</para>
1065
1066               <para>For an XFS partition or logical volume:</para>
1067
1068               <programlisting>
1069    /dev/dsk/<replaceable>disk</replaceable>  /vicep<replaceable>xx</replaceable>  xfs  rw,raw=/dev/rdsk/<replaceable>disk</replaceable>  0  0   
1070 </programlisting>
1071
1072               <para>For an EFS partition:</para>
1073
1074               <programlisting>
1075    /dev/dsk/<replaceable>disk</replaceable>  /vicep<replaceable>xx</replaceable>  efs  rw,raw=/dev/rdsk/<replaceable>disk</replaceable>  0  0   
1076 </programlisting>
1077
1078               <para>The following are examples of an entry for each file system type:</para>
1079
1080               <programlisting>
1081    /dev/dsk/dks0d2s6 /vicepa  xfs rw,raw=/dev/rdsk/dks0d2s6  0 0
1082    /dev/dsk/dks0d3s1 /vicepb  efs rw,raw=/dev/rdsk/dks0d3s1  0 0
1083 </programlisting>
1084             </listitem>
1085
1086             <listitem>
1087               <para>Create a file system on each partition that is to be mounted on a <emphasis
1088               role="bold">/vicep</emphasis><replaceable>xx</replaceable> directory. The following commands are probably appropriate,
1089               but consult the IRIX documentation for more information. In both cases, <replaceable>raw_device</replaceable> is a raw
1090               device name like <emphasis role="bold">/dev/rdsk/dks0d0s0</emphasis> for a single disk partition or <emphasis
1091               role="bold">/dev/rxlv/xlv0</emphasis> for a logical volume.</para>
1092
1093               <para>For XFS file systems, include the indicated options to configure the partition or logical volume with inodes
1094               large enough to accommodate AFS-specific information:</para>
1095
1096               <programlisting>
1097    # <emphasis role="bold">mkfs -t xfs -i size=512 -l size=4000b</emphasis> <replaceable>raw_device</replaceable>   
1098 </programlisting>
1099
1100               <para>For EFS file systems:</para>
1101
1102               <programlisting>
1103    # <emphasis role="bold">mkfs -t efs</emphasis> <replaceable>raw_device</replaceable>
1104 </programlisting>
1105             </listitem>
1106
1107             <listitem>
1108               <para>Mount each partition by issuing either the <emphasis role="bold">mount -a</emphasis> command to mount all
1109               partitions at once or the <emphasis role="bold">mount</emphasis> command to mount each partition in turn.</para>
1110             </listitem>
1111
1112             <listitem>
1113               <para><emphasis role="bold">(Optional)</emphasis> If you have configured partitions or logical volumes to use XFS,
1114               issue the following command to verify that the inodes are configured properly (are large enough to accommodate
1115               AFS-specific information). If the configuration is correct, the command returns no output. Otherwise, it specifies the
1116               command to run in order to configure each partition or logical volume properly. <programlisting>
1117    # <emphasis role="bold">/usr/afs/bin/xfs_size_check</emphasis>
1118 </programlisting></para>
1119             </listitem>
1120
1121             <listitem>
1122               <para>If the machine is to remain an AFS client, incorporate AFS into its authentication system, following the
1123               instructions in <link linkend="HDRWQ40">Enabling AFS Login on IRIX Systems</link>.</para>
1124             </listitem>
1125
1126             <listitem>
1127               <para>Proceed to <link linkend="HDRWQ108">Starting Server Programs</link>.</para>
1128             </listitem>
1129           </orderedlist></para>
1130       </sect3>
1131
1132       <sect3 id="HDRWQ106">
1133         <title>Getting Started on Linux Systems</title>
1134
1135         <indexterm>
1136           <primary>file server machine, additional</primary>
1137
1138           <secondary>fsck program</secondary>
1139
1140           <tertiary>on Linux</tertiary>
1141         </indexterm>
1142
1143         <indexterm>
1144           <primary>fsck program</primary>
1145
1146           <secondary>on server machine after first</secondary>
1147
1148           <tertiary>Linux</tertiary>
1149         </indexterm>
1150
1151         <para>Begin by running the AFS initialization script to call the <emphasis role="bold">insmod</emphasis> program, which
1152         dynamically loads AFS modifications into the kernel. Then create partitions for storing AFS volumes. You do not need to
1153         replace the Linux <emphasis role="bold">fsck</emphasis> program. <orderedlist>
1154             <indexterm>
1155               <primary>incorporating AFS kernel extensions</primary>
1156
1157               <secondary>server machine after first</secondary>
1158
1159               <tertiary>Linux</tertiary>
1160             </indexterm>
1161
1162             <indexterm>
1163               <primary>AFS kernel extensions</primary>
1164
1165               <secondary>on server machine after first</secondary>
1166
1167               <tertiary>Linux</tertiary>
1168             </indexterm>
1169
1170             <indexterm>
1171               <primary>file server machine, additional</primary>
1172
1173               <secondary>AFS kernel extensions</secondary>
1174
1175               <tertiary>on Linux</tertiary>
1176             </indexterm>
1177
1178             <indexterm>
1179               <primary>Linux</primary>
1180
1181               <secondary>AFS kernel extensions</secondary>
1182
1183               <tertiary>on add'l server machine</tertiary>
1184             </indexterm>
1185
1186             <listitem>
1187               <para>Mount the AFS CD-ROM for Linux on the local <emphasis role="bold">/cdrom</emphasis> directory. For instructions
1188               on mounting CD-ROMs (either locally or remotely via NFS), see your Linux documentation. Then change directory as
1189               indicated. <programlisting>
1190    # <emphasis role="bold">cd  /cdrom/i386_linux22/root.client/usr/vice/etc</emphasis>
1191 </programlisting></para>
1192             </listitem>
1193
1194             <listitem>
1195               <para>Copy the AFS kernel library files to the local <emphasis role="bold">/usr/vice/etc/modload</emphasis> directory.
1196               The filenames for the libraries have the format <emphasis
1197               role="bold">libafs-</emphasis><replaceable>version</replaceable><emphasis role="bold">.o</emphasis>, where
1198               <replaceable>version</replaceable> indicates the kernel build level. The string <emphasis role="bold">.mp</emphasis>
1199               in the <replaceable>version</replaceable> indicates that the file is appropriate for machines running a multiprocessor
1200               kernel. <programlisting>
1201    # <emphasis role="bold">cp -rp  modload  /usr/vice/etc</emphasis>
1202 </programlisting></para>
1203             </listitem>
1204
1205             <listitem>
1206               <para>Copy the AFS initialization script to the local directory for initialization files (by convention, <emphasis
1207               role="bold">/etc/rc.d/init.d</emphasis> on Linux machines). Note the removal of the <emphasis
1208               role="bold">.rc</emphasis> extension as you copy the script. <programlisting>
1209    # <emphasis role="bold">cp -p   afs.rc  /etc/rc.d/init.d/afs</emphasis> 
1210 </programlisting></para>
1211             </listitem>
1212
1213             <listitem>
1214               <para>Run the AFS initialization script to load AFS extensions into the kernel. You can ignore any error messages
1215               about the inability to start the BOS Server or the Cache Manager or AFS client. <programlisting>
1216    # <emphasis role="bold">/etc/rc.d/init.d/afs  start</emphasis>
1217 </programlisting> <indexterm>
1218                   <primary>configuring</primary>
1219
1220                   <secondary>AFS server partition on server machine after first</secondary>
1221
1222                   <tertiary>Linux</tertiary>
1223                 </indexterm> <indexterm>
1224                   <primary>AFS server partition</primary>
1225
1226                   <secondary>configuring on server machine after first</secondary>
1227
1228                   <tertiary>Linux</tertiary>
1229                 </indexterm> <indexterm>
1230                   <primary>file server machine, additional</primary>
1231
1232                   <secondary>AFS server partition</secondary>
1233
1234                   <tertiary>on Linux</tertiary>
1235                 </indexterm> <indexterm>
1236                   <primary>Linux</primary>
1237
1238                   <secondary>AFS server partition</secondary>
1239
1240                   <tertiary>on add'l server machine</tertiary>
1241                 </indexterm></para>
1242             </listitem>
1243
1244             <listitem>
1245               <para>Create a directory called <emphasis role="bold">/vicep</emphasis><replaceable>xx</replaceable> for each AFS
1246               server partition you are configuring (there must be at least one). Repeat the command for each partition.
1247               <programlisting>
1248    # <emphasis role="bold">mkdir /vicep</emphasis><replaceable>xx</replaceable>
1249 </programlisting></para>
1250             </listitem>
1251
1252             <listitem>
1253               <para>Add a line with the following format to the file systems registry file, <emphasis
1254               role="bold">/etc/fstab</emphasis>, for each directory just created. The entry maps the directory name to the disk
1255               partition to be mounted on it. <programlisting>
1256    /dev/<replaceable>disk</replaceable>  /vicep<replaceable>xx</replaceable>  ext2  defaults  0  2   
1257 </programlisting></para>
1258
1259               <para>The following is an example for the first partition being configured.</para>
1260
1261               <programlisting>
1262    /dev/sda8 /vicepa ext2 defaults 0 2
1263 </programlisting>
1264             </listitem>
1265
1266             <listitem>
1267               <para>Create a file system on each partition that is to be mounted at a <emphasis
1268               role="bold">/vicep</emphasis><replaceable>xx</replaceable> directory. The following command is probably appropriate,
1269               but consult the Linux documentation for more information. <programlisting>
1270    # <emphasis role="bold">mkfs -v /dev/</emphasis><replaceable>disk</replaceable>
1271 </programlisting></para>
1272             </listitem>
1273
1274             <listitem>
1275               <para>Mount each partition by issuing either the <emphasis role="bold">mount -a</emphasis> command to mount all
1276               partitions at once or the <emphasis role="bold">mount</emphasis> command to mount each partition in turn.</para>
1277             </listitem>
1278
1279             <listitem>
1280               <para>If the machine is to remain an AFS client, incorporate AFS into its authentication system, following the
1281               instructions in <link linkend="HDRWQ44">Enabling AFS Login on Linux Systems</link>.</para>
1282             </listitem>
1283
1284             <listitem>
1285               <para>Proceed to <link linkend="HDRWQ108">Starting Server Programs</link>.</para>
1286             </listitem>
1287           </orderedlist></para>
1288       </sect3>
1289
1290       <sect3 id="HDRWQ107">
1291         <title>Getting Started on Solaris Systems</title>
1292
1293         <para>Begin by running the AFS initialization script to call the <emphasis role="bold">modload</emphasis> program, which
1294         dynamically loads AFS modifications into the kernel. Then configure partitions and replace the Solaris <emphasis
1295         role="bold">fsck</emphasis> program with a version that correctly handles AFS volumes. <orderedlist>
1296             <indexterm>
1297               <primary>incorporating AFS kernel extensions</primary>
1298
1299               <secondary>server machine after first</secondary>
1300
1301               <tertiary>Solaris</tertiary>
1302             </indexterm>
1303
1304             <indexterm>
1305               <primary>AFS kernel extensions</primary>
1306
1307               <secondary>on server machine after first</secondary>
1308
1309               <tertiary>Solaris</tertiary>
1310             </indexterm>
1311
1312             <indexterm>
1313               <primary>file server machine, additional</primary>
1314
1315               <secondary>AFS kernel extensions</secondary>
1316
1317               <tertiary>Solaris</tertiary>
1318             </indexterm>
1319
1320             <indexterm>
1321               <primary>Solaris</primary>
1322
1323               <secondary>AFS kernel extensions</secondary>
1324
1325               <tertiary>on add'l server machine</tertiary>
1326             </indexterm>
1327
1328             <listitem>
1329               <para>Mount the AFS CD-ROM for Solaris on the <emphasis role="bold">/cdrom</emphasis> directory. For instructions on
1330               mounting CD-ROMs (either locally or remotely via NFS), see your Solaris documentation. Then change directory as
1331               indicated. <programlisting>
1332    # <emphasis role="bold">cd  /cdrom/sun4x_56/root.client/usr/vice/etc</emphasis>
1333 </programlisting></para>
1334             </listitem>
1335
1336             <listitem>
1337               <para>Copy the AFS initialization script to the local directory for initialization files (by convention, <emphasis
1338               role="bold">/etc/init.d</emphasis> on Solaris machines). Note the removal of the <emphasis role="bold">.rc</emphasis>
1339               extension as you copy the script. <programlisting>
1340    # <emphasis role="bold">cp -p  afs.rc  /etc/init.d/afs</emphasis>
1341 </programlisting></para>
1342             </listitem>
1343
1344             <listitem>
1345               <para>Copy the appropriate AFS kernel library file to the local file <emphasis
1346               role="bold">/kernel/fs/afs</emphasis>.</para>
1347
1348               <para>If the machine is running Solaris 2.6 or the 32-bit version of Solaris 7, its kernel supports NFS server
1349               functionality, and the <emphasis role="bold">nfsd</emphasis> process is running:</para>
1350
1351               <programlisting>
1352    # <emphasis role="bold">cp -p modload/libafs.o /kernel/fs/afs</emphasis>   
1353 </programlisting>
1354
1355               <para>If the machine is running Solaris 2.6 or the 32-bit version of Solaris 7, and its kernel does not support NFS
1356               server functionality or the <emphasis role="bold">nfsd</emphasis> process is not running:</para>
1357
1358               <programlisting>
1359    # <emphasis role="bold">cp -p modload/libafs.nonfs.o /kernel/fs/afs</emphasis>   
1360 </programlisting>
1361
1362               <para>If the machine is running the 64-bit version of Solaris 7, its kernel supports NFS server functionality, and the
1363               <emphasis role="bold">nfsd</emphasis> process is running:</para>
1364
1365               <programlisting>
1366    # <emphasis role="bold">cp -p modload/libafs64.o /kernel/fs/sparcv9/afs</emphasis>   
1367 </programlisting>
1368
1369               <para>If the machine is running the 64-bit version of Solaris 7, and its kernel does not support NFS server
1370               functionality or the <emphasis role="bold">nfsd</emphasis> process is not running:</para>
1371
1372               <programlisting>
1373    # <emphasis role="bold">cp -p modload/libafs64.nonfs.o /kernel/fs/sparcv9/afs</emphasis>
1374 </programlisting>
1375             </listitem>
1376
1377             <listitem>
1378               <para>Run the AFS initialization script to load AFS modifications into the kernel. You can ignore any error messages
1379               about the inability to start the BOS Server or the Cache Manager or AFS client. <programlisting>
1380    # <emphasis role="bold">/etc/init.d/afs start</emphasis>   
1381 </programlisting></para>
1382
1383               <para>When an entry called <computeroutput>afs</computeroutput> does not already exist in the local <emphasis
1384               role="bold">/etc/name_to_sysnum</emphasis> file, the script automatically creates it and reboots the machine to start
1385               using the new version of the file. If this happens, log in again as the superuser <emphasis
1386               role="bold">root</emphasis> after the reboot and run the initialization script again. This time the required entry
1387               exists in the <emphasis role="bold">/etc/name_to_sysnum</emphasis> file, and the <emphasis
1388               role="bold">modload</emphasis> program runs.</para>
1389
1390               <programlisting>
1391    login: <emphasis role="bold">root</emphasis>
1392    Password: <replaceable>root_password</replaceable>
1393    # <emphasis role="bold">/etc/init.d/afs start</emphasis>
1394 </programlisting>
1395
1396               <indexterm>
1397                 <primary>replacing fsck program</primary>
1398
1399                 <secondary>server machine after first</secondary>
1400
1401                 <tertiary>Solaris</tertiary>
1402               </indexterm>
1403
1404               <indexterm>
1405                 <primary>fsck program</primary>
1406
1407                 <secondary>on server machine after first</secondary>
1408
1409                 <tertiary>Solaris</tertiary>
1410               </indexterm>
1411
1412               <indexterm>
1413                 <primary>file server machine, additional</primary>
1414
1415                 <secondary>fsck program</secondary>
1416
1417                 <tertiary>on Solaris</tertiary>
1418               </indexterm>
1419
1420               <indexterm>
1421                 <primary>Solaris</primary>
1422
1423                 <secondary>fsck program</secondary>
1424
1425                 <tertiary>on add'l server machine</tertiary>
1426               </indexterm>
1427             </listitem>
1428
1429             <listitem>
1430               <para>Create the <emphasis role="bold">/usr/lib/fs/afs</emphasis> directory to house the AFS-modified <emphasis
1431               role="bold">fsck</emphasis> program and related files. <programlisting>
1432    # <emphasis role="bold">mkdir /usr/lib/fs/afs</emphasis>
1433    # <emphasis role="bold">cd /usr/lib/fs/afs</emphasis>  
1434 </programlisting></para>
1435             </listitem>
1436
1437             <listitem>
1438               <para>Copy the <emphasis role="bold">vfsck</emphasis> binary to the newly created directory, changing the name as you
1439               do so. <programlisting>
1440    # <emphasis role="bold">cp  /cdrom/sun4x_56/root.server/etc/vfsck  fsck</emphasis>
1441 </programlisting></para>
1442             </listitem>
1443
1444             <listitem>
1445               <para>Working in the <emphasis role="bold">/usr/lib/fs/afs</emphasis> directory, create the following links to Solaris
1446               libraries: <programlisting>
1447    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/clri</emphasis>  
1448    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/df</emphasis>
1449    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/edquota</emphasis>
1450    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/ff</emphasis>
1451    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/fsdb</emphasis>  
1452    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/fsirand</emphasis>
1453    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/fstyp</emphasis>
1454    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/labelit</emphasis>
1455    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/lockfs</emphasis>
1456    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/mkfs</emphasis>  
1457    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/mount</emphasis>
1458    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/ncheck</emphasis>
1459    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/newfs</emphasis>
1460    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/quot</emphasis>
1461    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/quota</emphasis>
1462    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/quotaoff</emphasis>
1463    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/quotaon</emphasis>
1464    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/repquota</emphasis>
1465    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/tunefs</emphasis>
1466    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/ufsdump</emphasis>
1467    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/ufsrestore</emphasis>
1468    # <emphasis role="bold">ln -s /usr/lib/fs/ufs/volcopy</emphasis>
1469 </programlisting></para>
1470             </listitem>
1471
1472             <listitem>
1473               <para>Append the following line to the end of the file <emphasis role="bold">/etc/dfs/fstypes</emphasis>.
1474               <programlisting>
1475    afs AFS Utilities
1476 </programlisting></para>
1477             </listitem>
1478
1479             <listitem>
1480               <para>Edit the <emphasis role="bold">/sbin/mountall</emphasis> file, making two changes. <itemizedlist>
1481                   <listitem>
1482                     <para>Add an entry for AFS to the <computeroutput>case</computeroutput> statement for option 2, so that it reads
1483                     as follows: <programlisting>
1484    case "$2" in
1485    ufs)    foptions="-o p"
1486            ;;
1487    afs)    foptions="-o p"
1488            ;;
1489    s5)     foptions="-y -t /var/tmp/tmp$$ -D"
1490            ;;
1491    *)      foptions="-y"
1492            ;;
1493 </programlisting></para>
1494                   </listitem>
1495
1496                   <listitem>
1497                     <para>Edit the file so that all AFS and UFS partitions are checked in parallel. Replace the following section of
1498                     code: <programlisting>
1499    # For  fsck purposes, we make a distinction between ufs and
1500    # other file systems
1501    #
1502    if [ "$fstype" = "ufs" ]; then
1503         ufs_fscklist="$ufs_fscklist $fsckdev"
1504         saveentry $fstype "$OPTIONS" $special $mountp
1505         continue
1506    fi  
1507 </programlisting></para>
1508
1509                     <para>with the following section of code:</para>
1510
1511                     <programlisting>
1512    # For fsck purposes, we make a distinction between ufs/afs
1513    # and other file systems.
1514    #
1515    if [ "$fstype" = "ufs" -o "$fstype" = "afs" ]; then
1516         ufs_fscklist="$ufs_fscklist $fsckdev"
1517         saveentry $fstype "$OPTIONS" $special $mountp
1518         continue
1519    fi
1520 </programlisting>
1521                   </listitem>
1522                 </itemizedlist></para>
1523
1524               <indexterm>
1525                 <primary>configuring</primary>
1526
1527                 <secondary>AFS server partition on server machine after first</secondary>
1528
1529                 <tertiary>Solaris</tertiary>
1530               </indexterm>
1531
1532               <indexterm>
1533                 <primary>AFS server partition</primary>
1534
1535                 <secondary>configuring on server machine after first</secondary>
1536
1537                 <tertiary>Solaris</tertiary>
1538               </indexterm>
1539
1540               <indexterm>
1541                 <primary>file server machine, additional</primary>
1542
1543                 <secondary>AFS server partition</secondary>
1544
1545                 <tertiary>on Solaris</tertiary>
1546               </indexterm>
1547
1548               <indexterm>
1549                 <primary>Solaris</primary>
1550
1551                 <secondary>AFS server partition</secondary>
1552
1553                 <tertiary>on add'l server machine</tertiary>
1554               </indexterm>
1555             </listitem>
1556
1557             <listitem>
1558               <para>Create a directory called <emphasis role="bold">/vicep</emphasis><replaceable>xx</replaceable> for each AFS
1559               server partition you are configuring (there must be at least one). Repeat the command for each partition.
1560               <programlisting>
1561    # <emphasis role="bold">mkdir /vicep</emphasis><replaceable>xx</replaceable>
1562 </programlisting></para>
1563             </listitem>
1564
1565             <listitem>
1566               <para>Add a line with the following format to the file systems registry file, <emphasis
1567               role="bold">/etc/vfstab</emphasis>, for each partition to be mounted on a directory created in the previous step. Note
1568               the value <computeroutput>afs</computeroutput> in the fourth field, which tells Solaris to use the AFS-modified
1569               <emphasis role="bold">fsck</emphasis> program on this partition. <programlisting>
1570    /dev/dsk/<replaceable>disk</replaceable>   /dev/rdsk/<replaceable>disk</replaceable>   /vicep<replaceable>xx</replaceable>   afs   <replaceable>boot_order</replaceable>  yes  
1571 </programlisting></para>
1572
1573               <para>The following is an example for the first partition being configured.</para>
1574
1575               <programlisting>
1576    /dev/dsk/c0t6d0s1 /dev/rdsk/c0t6d0s1 /vicepa afs 3 yes
1577 </programlisting>
1578             </listitem>
1579
1580             <listitem>
1581               <para>Create a file system on each partition that is to be mounted at a <emphasis
1582               role="bold">/vicep</emphasis><replaceable>xx</replaceable> directory. The following command is probably appropriate,
1583               but consult the Solaris documentation for more information. <programlisting>
1584    # <emphasis role="bold">newfs -v /dev/rdsk/</emphasis><replaceable>disk</replaceable>
1585 </programlisting></para>
1586             </listitem>
1587
1588             <listitem>
1589               <para>Issue the <emphasis role="bold">mountall</emphasis> command to mount all partitions at once.</para>
1590             </listitem>
1591
1592             <listitem>
1593               <para>If the machine is to remain an AFS client, incorporate AFS into its authentication system, following the
1594               instructions in <link linkend="HDRWQ49">Enabling AFS Login and Editing the File Systems Clean-up Script on Solaris
1595               Systems</link>.</para>
1596             </listitem>
1597
1598             <listitem>
1599               <para>Proceed to <link linkend="HDRWQ108">Starting Server Programs</link>.</para>
1600             </listitem>
1601           </orderedlist></para>
1602
1603         <indexterm>
1604           <primary>file server machine, additional</primary>
1605
1606           <secondary>server functionality</secondary>
1607         </indexterm>
1608
1609         <indexterm>
1610           <primary>installing</primary>
1611
1612           <secondary>server functionality</secondary>
1613
1614           <tertiary>server machine after first</tertiary>
1615         </indexterm>
1616       </sect3>
1617     </sect2>
1618
1619     <sect2 id="HDRWQ108">
1620       <title>Starting Server Programs</title>
1621
1622       <para>In this section you initialize the BOS Server, the Update Server, the controller process for NTPD, and the <emphasis
1623       role="bold">fs</emphasis> process. You begin by copying the necessary server files to the local disk. <orderedlist>
1624           <indexterm>
1625             <primary>copying</primary>
1626
1627             <secondary>server files to local disk</secondary>
1628
1629             <tertiary>server machine after first</tertiary>
1630           </indexterm>
1631
1632           <indexterm>
1633             <primary>CD-ROM</primary>
1634
1635             <secondary>copying server files from</secondary>
1636
1637             <tertiary>server machine after first</tertiary>
1638           </indexterm>
1639
1640           <indexterm>
1641             <primary>file server machine, additional</primary>
1642
1643             <secondary>copying</secondary>
1644
1645             <tertiary>server files to local disk</tertiary>
1646           </indexterm>
1647
1648           <listitem>
1649             <para>Copy file server binaries to the local <emphasis role="bold">/usr/afs/bin</emphasis> directory. <itemizedlist>
1650                 <listitem>
1651                   <para>On a machine of an existing system type, you can either load files from the AFS CD-ROM or use a remote file
1652                   transfer protocol to copy files from an existing server machine of the same system type. To load from the CD-ROM,
1653                   see the instructions just following for a machine of a new system type. If using a remote file transfer protocol,
1654                   copy the complete contents of the existing server machine's <emphasis role="bold">/usr/afs/bin</emphasis>
1655                   directory.</para>
1656                 </listitem>
1657
1658                 <listitem>
1659                   <para>On a machine of a new system type, you must use the following instructions to copy files from the AFS
1660                   CD-ROM. <orderedlist>
1661                       <listitem>
1662                         <para>On the local <emphasis role="bold">/cdrom</emphasis> directory, mount the AFS CD-ROM for this
1663                         machine's system type, if it is not already. For instructions on mounting CD-ROMs (either locally or
1664                         remotely via NFS), consult the operating system documentation.</para>
1665                       </listitem>
1666
1667                       <listitem>
1668                         <para>Copy files from the CD-ROM to the local <emphasis role="bold">/usr/afs</emphasis> directory.
1669                         <programlisting>
1670    # <emphasis role="bold">cd /cdrom/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/root.server/usr/afs</emphasis>
1671    # <emphasis role="bold">cp -rp  *  /usr/afs</emphasis>
1672 </programlisting></para>
1673                       </listitem>
1674                     </orderedlist></para>
1675                 </listitem>
1676               </itemizedlist></para>
1677
1678             <indexterm>
1679               <primary>usr/afs/etc directory</primary>
1680
1681               <secondary>server machine after first</secondary>
1682             </indexterm>
1683
1684             <indexterm>
1685               <primary>file server machine, additional</primary>
1686
1687               <secondary>/usr/afs/etc directory</secondary>
1688             </indexterm>
1689
1690             <indexterm>
1691               <primary>creating</primary>
1692
1693               <secondary>/usr/afs/etc directory</secondary>
1694
1695               <tertiary>server machine after first</tertiary>
1696             </indexterm>
1697
1698             <indexterm>
1699               <primary>creating</primary>
1700
1701               <secondary>CellServDB file (server)</secondary>
1702
1703               <tertiary>server machine after first</tertiary>
1704             </indexterm>
1705
1706             <indexterm>
1707               <primary>UserList file</primary>
1708
1709               <secondary>server machine after first</secondary>
1710             </indexterm>
1711
1712             <indexterm>
1713               <primary>KeyFile file</primary>
1714
1715               <secondary>server machine after first</secondary>
1716             </indexterm>
1717
1718             <indexterm>
1719               <primary>CellServDB file (server)</primary>
1720
1721               <secondary>creating</secondary>
1722
1723               <tertiary>on server machine after first</tertiary>
1724             </indexterm>
1725
1726             <indexterm>
1727               <primary>database server machine</primary>
1728
1729               <secondary>entry in server CellServDB file</secondary>
1730
1731               <tertiary>on server machine after first</tertiary>
1732             </indexterm>
1733
1734             <indexterm>
1735               <primary>ThisCell file (server)</primary>
1736
1737               <secondary>server machine after first</secondary>
1738             </indexterm>
1739
1740             <indexterm>
1741               <primary>file server machine, additional</primary>
1742
1743               <secondary>cell membership, defining</secondary>
1744
1745               <tertiary>for server processes</tertiary>
1746             </indexterm>
1747
1748             <indexterm>
1749               <primary>setting</primary>
1750
1751               <secondary>cell name in server ThisCell file</secondary>
1752
1753               <tertiary>server machine after first</tertiary>
1754             </indexterm>
1755
1756             <indexterm>
1757               <primary>file server machine, additional</primary>
1758
1759               <secondary>ThisCell file (server)</secondary>
1760             </indexterm>
1761           </listitem>
1762
1763           <listitem>
1764             <para>Copy the contents of the <emphasis role="bold">/usr/afs/etc</emphasis> directory from an existing file server
1765             machine, using a remote file transfer protocol such as <emphasis role="bold">ftp</emphasis> or NFS. If you use a system
1766             control machine, it is best to copy the contents of its <emphasis role="bold">/usr/afs/etc</emphasis> directory. If you
1767             choose not to run a system control machine, copy the directory's contents from any existing file server machine.
1768             <indexterm>
1769                 <primary>BOS Server</primary>
1770
1771                 <secondary>starting</secondary>
1772
1773                 <tertiary>server machine after first</tertiary>
1774               </indexterm> <indexterm>
1775                 <primary>starting</primary>
1776
1777                 <secondary>BOS Server</secondary>
1778
1779                 <tertiary>server machine after first</tertiary>
1780               </indexterm> <indexterm>
1781                 <primary>file server machine, additional</primary>
1782
1783                 <secondary>BOS Server</secondary>
1784               </indexterm> <indexterm>
1785                 <primary>authorization checking (disabling)</primary>
1786
1787                 <secondary>server machine after first</secondary>
1788               </indexterm> <indexterm>
1789                 <primary>disabling authorization checking</primary>
1790
1791                 <secondary>server machine after first</secondary>
1792               </indexterm> <indexterm>
1793                 <primary>file server machine, additional</primary>
1794
1795                 <secondary>authorization checking (disabling)</secondary>
1796               </indexterm></para>
1797           </listitem>
1798
1799           <listitem>
1800             <para>Change to the <emphasis role="bold">/usr/afs/bin</emphasis> directory and start the BOS Server (<emphasis
1801             role="bold">bosserver</emphasis> process). Include the <emphasis role="bold">-noauth</emphasis> flag to prevent the AFS
1802             processes from performing authorization checking. This is a grave compromise of security; finish the remaining
1803             instructions in this section in an uninterrupted pass. <programlisting>
1804    # <emphasis role="bold">cd /usr/afs/bin</emphasis>
1805    # <emphasis role="bold">./bosserver -noauth &amp;</emphasis>
1806 </programlisting> <indexterm>
1807                 <primary>BosConfig file</primary>
1808
1809                 <secondary>adding entries</secondary>
1810
1811                 <tertiary>server machine after first</tertiary>
1812               </indexterm> <indexterm>
1813                 <primary>adding</primary>
1814
1815                 <secondary>entries to BosConfig file</secondary>
1816
1817                 <tertiary>server machine after first</tertiary>
1818               </indexterm> <indexterm>
1819                 <primary>Update Server</primary>
1820
1821                 <secondary>starting client portion</secondary>
1822               </indexterm> <indexterm>
1823                 <primary>upclient process</primary>
1824               </indexterm> <indexterm>
1825                 <primary>starting</primary>
1826
1827                 <secondary>Update Server client portion</secondary>
1828               </indexterm> <indexterm>
1829                 <primary>file server machine, additional</primary>
1830
1831                 <secondary>Update Server client portion</secondary>
1832               </indexterm></para>
1833           </listitem>
1834
1835           <listitem>
1836             <para><anchor id="LIWQ109" />If you run a system control machine, create the <emphasis
1837             role="bold">upclientetc</emphasis> process as an instance of the client portion of the Update Server. It accepts updates
1838             of the common configuration files stored in the system control machine's <emphasis role="bold">/usr/afs/etc</emphasis>
1839             directory from the <emphasis role="bold">upserver</emphasis> process (server portion of the Update Server) running on
1840             that machine. The cell's first file server machine was installed as the system control machine in <link
1841             linkend="HDRWQ61">Starting the Server Portion of the Update Server</link>. (If you do not run a system control machine,
1842             you must update the contents of the <emphasis role="bold">/usr/afs/etc</emphasis> directory on each file server machine,
1843             using the appropriate <emphasis role="bold">bos</emphasis> commands.)</para>
1844
1845             <para>By default, the Update Server performs updates every 300 seconds (five minutes). Use the <emphasis
1846             role="bold">-t</emphasis> argument to specify a different number of seconds. For the
1847             <replaceable>machine&nbsp;name</replaceable> argument, substitute the name of the machine you are installing. The
1848             command appears on multiple lines here only for legibility reasons.</para>
1849
1850             <programlisting>
1851    # <emphasis role="bold">./bos create</emphasis>  &lt;<replaceable>machine name</replaceable>&gt; <emphasis role="bold">upclientetc simple</emphasis>  \ 
1852          <emphasis role="bold">"/usr/afs/bin/upclient</emphasis>  &lt;<replaceable>system control machine</replaceable>&gt;  \  
1853          [<emphasis role="bold">-t</emphasis>  &lt;<replaceable>time</replaceable>&gt;]  <emphasis role="bold">/usr/afs/etc" -cell</emphasis>  &lt;<replaceable>cell name</replaceable>&gt;  <emphasis
1854                 role="bold">-noauth</emphasis>
1855 </programlisting>
1856
1857             <indexterm>
1858               <primary>Update Server</primary>
1859
1860               <secondary>starting server portion</secondary>
1861
1862               <tertiary>server machine after first</tertiary>
1863             </indexterm>
1864
1865             <indexterm>
1866               <primary>starting</primary>
1867
1868               <secondary>Update Server server portion</secondary>
1869
1870               <tertiary>server machine after first</tertiary>
1871             </indexterm>
1872
1873             <indexterm>
1874               <primary>file server machine, additional</primary>
1875
1876               <secondary>Update Server server portion</secondary>
1877             </indexterm>
1878           </listitem>
1879
1880           <listitem>
1881             <para><anchor id="LIWQ110" />Create an instance of the Update Server to handle distribution of the file server binaries
1882             stored in the <emphasis role="bold">/usr/afs/bin</emphasis> directory. <itemizedlist>
1883                 <listitem>
1884                   <para>If this is the first file server machine of its AFS system type, create the <emphasis
1885                   role="bold">upserver</emphasis> process as an instance of the server portion of the Update Server. It distributes
1886                   its copy of the file server process binaries to the other file server machines of this system type that you
1887                   install in future. Creating this process makes this machine the binary distribution machine for its type.
1888                   <programlisting>
1889    # <emphasis role="bold">./bos create</emphasis>  &lt;<replaceable>machine name</replaceable>&gt; <emphasis role="bold">upserver  simple</emphasis>  \ 
1890          <emphasis role="bold">"/usr/afs/bin/upserver -clear /usr/afs/bin"</emphasis>   \
1891          <emphasis role="bold">-cell</emphasis> &lt;<replaceable>cell name</replaceable>&gt;  <emphasis role="bold">-noauth</emphasis>
1892 </programlisting></para>
1893                 </listitem>
1894
1895                 <listitem>
1896                   <para>If this machine is an existing system type, create the <emphasis role="bold">upclientbin</emphasis> process
1897                   as an instance of the client portion of the Update Server. It accepts updates of the AFS binaries from the
1898                   <emphasis role="bold">upserver</emphasis> process running on the binary distribution machine for its system type.
1899                   For distribution to work properly, the <emphasis role="bold">upserver</emphasis> process must already by running
1900                   on that machine.</para>
1901
1902                   <para>Use the <emphasis role="bold">-clear</emphasis> argument to specify that the <emphasis
1903                   role="bold">upclientbin</emphasis> process requests unencrypted transfer of the binaries in the <emphasis
1904                   role="bold">/usr/afs/bin</emphasis> directory. Binaries are not sensitive and encrypting them is
1905                   time-consuming.</para>
1906
1907                   <para>By default, the Update Server performs updates every 300 seconds (five minutes). Use the <emphasis
1908                   role="bold">-t</emphasis> argument to specify an different number of seconds.</para>
1909
1910                   <programlisting>
1911    # <emphasis role="bold">./bos create</emphasis>  &lt;<replaceable>machine name</replaceable>&gt; <emphasis role="bold">upclientbin simple</emphasis>  \ 
1912         <emphasis role="bold">"/usr/afs/bin/upclient</emphasis> &lt;<replaceable>binary distribution machine</replaceable>&gt;   \
1913         [<emphasis role="bold">-t</emphasis> &lt;<replaceable>time</replaceable>&gt;] <emphasis role="bold">-clear /usr/afs/bin" -cell</emphasis> &lt;<replaceable>cell name</replaceable>&gt;  <emphasis
1914                       role="bold">-noauth</emphasis>
1915 </programlisting>
1916                 </listitem>
1917               </itemizedlist></para>
1918
1919             <indexterm>
1920               <primary>runntp process</primary>
1921
1922               <secondary>server machine after first</secondary>
1923             </indexterm>
1924
1925             <indexterm>
1926               <primary>starting</primary>
1927
1928               <secondary>runntp process</secondary>
1929
1930               <tertiary>server machine after first</tertiary>
1931             </indexterm>
1932
1933             <indexterm>
1934               <primary>file server machine, additional</primary>
1935
1936               <secondary>runntp process</secondary>
1937             </indexterm>
1938
1939             <indexterm>
1940               <primary>NTPD</primary>
1941
1942               <secondary>server machine after first</secondary>
1943             </indexterm>
1944           </listitem>
1945
1946           <listitem>
1947             <para>Start the <emphasis role="bold">runntp</emphasis> process, which configures the Network Time Protocol Daemon
1948             (NTPD) to choose a database server machine chosen randomly from the local <emphasis
1949             role="bold">/usr/afs/etc/CellServDB</emphasis> file as its time source. In the standard configuration, the first
1950             database server machine installed in your cell refers to a time source outside the cell, and serves as the basis for
1951             clock synchronization on all server machines. <programlisting>
1952    # <emphasis role="bold">./bos create</emphasis>  &lt;<replaceable>machine name</replaceable>&gt; <emphasis role="bold">runntp simple</emphasis>  \ 
1953          <emphasis role="bold">/usr/afs/bin/runntp -cell</emphasis> &lt;<replaceable>cell name</replaceable>&gt;  <emphasis
1954                   role="bold">-noauth</emphasis>
1955 </programlisting></para>
1956
1957             <note>
1958               <para>Do not run the <emphasis role="bold">runntp</emphasis> process if NTPD or another time synchronization protocol
1959               is already running on the machine. Some versions of some operating systems run a time synchronization program by
1960               default, as detailed in the <emphasis>OpenAFS Release Notes</emphasis>.</para>
1961
1962               <para>Attempting to run multiple instances of the NTPD causes an error. Running NTPD together with another time
1963               synchronization protocol is unnecessary and can cause instability in the clock setting.</para>
1964             </note>
1965
1966             <indexterm>
1967               <primary>File Server</primary>
1968
1969               <secondary>server machine after first</secondary>
1970             </indexterm>
1971
1972             <indexterm>
1973               <primary>starting</primary>
1974
1975               <secondary>File Server</secondary>
1976
1977               <tertiary>server machine after first</tertiary>
1978             </indexterm>
1979
1980             <indexterm>
1981               <primary>file server machine, additional</primary>
1982
1983               <secondary>File Server</secondary>
1984             </indexterm>
1985
1986             <indexterm>
1987               <primary>Volume Server</primary>
1988
1989               <secondary>server machine after first</secondary>
1990             </indexterm>
1991
1992             <indexterm>
1993               <primary>starting</primary>
1994
1995               <secondary>Volume Server</secondary>
1996
1997               <tertiary>server machine after first</tertiary>
1998             </indexterm>
1999
2000             <indexterm>
2001               <primary>file server machine, additional</primary>
2002
2003               <secondary>Volume Server</secondary>
2004             </indexterm>
2005
2006             <indexterm>
2007               <primary>Salvager (salvager process)</primary>
2008
2009               <secondary>server machine after first</secondary>
2010             </indexterm>
2011
2012             <indexterm>
2013               <primary>fs process</primary>
2014
2015               <secondary>server machine after first</secondary>
2016             </indexterm>
2017
2018             <indexterm>
2019               <primary>starting</primary>
2020
2021               <secondary>fs process</secondary>
2022
2023               <tertiary>server machine after first</tertiary>
2024             </indexterm>
2025
2026             <indexterm>
2027               <primary>file server machine, additional</primary>
2028
2029               <secondary>fs process</secondary>
2030             </indexterm>
2031           </listitem>
2032
2033           <listitem>
2034             <para>Start the <emphasis role="bold">fs</emphasis> process, which binds together the File Server, Volume Server, and
2035             Salvager. <programlisting>
2036    # <emphasis role="bold">./bos create</emphasis>  &lt;<replaceable>machine name</replaceable>&gt; <emphasis role="bold">fs fs</emphasis>   \ 
2037          <emphasis role="bold">/usr/afs/bin/fileserver /usr/afs/bin/volserver</emphasis>  \ 
2038          <emphasis role="bold">/usr/afs/bin/salvager -cell</emphasis> &lt;<replaceable>cell name</replaceable>&gt;  <emphasis
2039                   role="bold">-noauth</emphasis>
2040 </programlisting></para>
2041           </listitem>
2042         </orderedlist></para>
2043
2044       <indexterm>
2045         <primary>installing</primary>
2046
2047         <secondary>client functionality</secondary>
2048
2049         <tertiary>server machine after first</tertiary>
2050       </indexterm>
2051
2052       <indexterm>
2053         <primary>file server machine, additional</primary>
2054
2055         <secondary>client functionality</secondary>
2056       </indexterm>
2057     </sect2>
2058
2059     <sect2 id="HDRWQ111">
2060       <title>Installing Client Functionality</title>
2061
2062       <para>If you want this machine to be a client as well as a server, follow the instructions in this section. Otherwise, skip to
2063       <link linkend="HDRWQ112">Completing the Installation</link>.</para>
2064
2065       <para>Begin by loading the necessary client files to the local disk. Then create the necessary configuration files and start
2066       the Cache Manager. For more detailed explanation of the procedures involved, see the corresponding instructions in <link
2067       linkend="HDRWQ17">Installing the First AFS Machine</link> (in the sections following <link linkend="HDRWQ63">Overview:
2068       Installing Client Functionality</link>).</para>
2069
2070       <para>If another AFS machine of this machine's system type exists, the AFS binaries are probably already accessible in your
2071       AFS filespace (the conventional location is <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2072       role="bold">/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/usr/afsws</emphasis>). If not, or if this is
2073       the first AFS machine of its type, copy the AFS binaries for this system type into an AFS volume by following the instructions
2074       in <link linkend="HDRWQ83">Storing AFS Binaries in AFS</link>. Because this machine is not yet an AFS client, you must perform
2075       the procedure on an existing AFS machine. However, remember to perform the final step (linking the local directory <emphasis
2076       role="bold">/usr/afsws</emphasis> to the appropriate location in the AFS file tree) on this machine itself. If you also want
2077       to create AFS volumes to house UNIX system binaries for the new system type, see <link linkend="HDRWQ88">Storing System
2078       Binaries in AFS</link>. <indexterm>
2079           <primary>CD-ROM</primary>
2080
2081           <secondary>copying client files from</secondary>
2082
2083           <tertiary>server machine after first</tertiary>
2084         </indexterm> <indexterm>
2085           <primary>file server machine, additional</primary>
2086
2087           <secondary>copying</secondary>
2088
2089           <tertiary>client files to local disk</tertiary>
2090         </indexterm> <indexterm>
2091           <primary>copying</primary>
2092
2093           <secondary>client files to local disk</secondary>
2094
2095           <tertiary>server machine after first</tertiary>
2096         </indexterm> <orderedlist>
2097           <listitem>
2098             <para>Copy client binaries and files to the local disk. <itemizedlist>
2099                 <listitem>
2100                   <para>On a machine of an existing system type, you can either load files from the AFS CD-ROM or use a remote file
2101                   transfer protocol to copy files from an existing server machine of the same system type. To load from the CD-ROM,
2102                   see the instructions just following for a machine of a new system type. If using a remote file transfer protocol,
2103                   copy the complete contents of the existing client machine's <emphasis role="bold">/usr/vice/etc</emphasis>
2104                   directory.</para>
2105                 </listitem>
2106
2107                 <listitem>
2108                   <para>On a machine of a new system type, you must use the following instructions to copy files from the AFS
2109                   CD-ROM. <orderedlist>
2110                       <listitem>
2111                         <para>On the local <emphasis role="bold">/cdrom</emphasis> directory, mount the AFS CD-ROM for this
2112                         machine's system type, if it is not already. For instructions on mounting CD-ROMs (either locally or
2113                         remotely via NFS), consult the operating system documentation.</para>
2114                       </listitem>
2115
2116                       <listitem>
2117                         <para>Copy files to the local <emphasis role="bold">/usr/vice/etc</emphasis> directory.</para>
2118
2119                         <para>This step places a copy of the AFS initialization script (and related files, if applicable) into the
2120                         <emphasis role="bold">/usr/vice/etc</emphasis> directory. In the preceding instructions for incorporating
2121                         AFS into the kernel, you copied the script directly to the operating system's conventional location for
2122                         initialization files. When you incorporate AFS into the machine's startup sequence in a later step, you can
2123                         choose to link the two files.</para>
2124
2125                         <para>On some system types that use a dynamic kernel loader program, you previously copied AFS library files
2126                         into a subdirectory of the <emphasis role="bold">/usr/vice/etc</emphasis> directory. On other system types,
2127                         you copied the appropriate AFS library file directly to the directory where the operating system accesses
2128                         it. The following commands do not copy or recopy the AFS library files into the <emphasis
2129                         role="bold">/usr/vice/etc</emphasis> directory, because on some system types the library files consume a
2130                         large amount of space. If you want to copy them, add the <emphasis role="bold">-r</emphasis> flag to the
2131                         first <emphasis role="bold">cp</emphasis> command and skip the second <emphasis role="bold">cp</emphasis>
2132                         command.</para>
2133
2134                         <programlisting>
2135    # <emphasis role="bold">cd /cdrom/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/root.client/usr/vice/etc</emphasis>
2136    # <emphasis role="bold">cp -p  *  /usr/vice/etc</emphasis>
2137    # <emphasis role="bold">cp -rp  C  /usr/vice/etc</emphasis>
2138 </programlisting>
2139                       </listitem>
2140                     </orderedlist></para>
2141                 </listitem>
2142               </itemizedlist></para>
2143
2144             <indexterm>
2145               <primary>cell name</primary>
2146
2147               <secondary>setting in client ThisCell file</secondary>
2148
2149               <tertiary>server machine after first</tertiary>
2150             </indexterm>
2151
2152             <indexterm>
2153               <primary>cell name</primary>
2154
2155               <secondary>setting in server ThisCell file</secondary>
2156
2157               <tertiary>server machine after first</tertiary>
2158             </indexterm>
2159
2160             <indexterm>
2161               <primary>setting</primary>
2162
2163               <secondary>cell name in client ThisCell file</secondary>
2164
2165               <tertiary>server machine after first</tertiary>
2166             </indexterm>
2167
2168             <indexterm>
2169               <primary>file server machine, additional</primary>
2170
2171               <secondary>ThisCell file (client)</secondary>
2172             </indexterm>
2173
2174             <indexterm>
2175               <primary>file server machine, additional</primary>
2176
2177               <secondary>cell membership, defining</secondary>
2178
2179               <tertiary>for client processes</tertiary>
2180             </indexterm>
2181
2182             <indexterm>
2183               <primary>ThisCell file (client)</primary>
2184
2185               <secondary>server machine after first</secondary>
2186             </indexterm>
2187           </listitem>
2188
2189           <listitem>
2190             <para>Change to the <emphasis role="bold">/usr/vice/etc</emphasis> directory and create the <emphasis
2191             role="bold">ThisCell</emphasis> file as a copy of the <emphasis role="bold">/usr/afs/etc/ThisCell</emphasis> file. You
2192             must first remove the symbolic link to the <emphasis role="bold">/usr/afs/etc/ThisCell</emphasis> file that the BOS
2193             Server created automatically in <link linkend="HDRWQ108">Starting Server Programs</link>. <programlisting>
2194    # <emphasis role="bold">cd  /usr/vice/etc</emphasis>
2195    # <emphasis role="bold">rm  ThisCell</emphasis>
2196    # <emphasis role="bold">cp  /usr/afs/etc/ThisCell  ThisCell</emphasis>
2197 </programlisting></para>
2198           </listitem>
2199
2200           <listitem>
2201             <para>Remove the symbolic link to the <emphasis role="bold">/usr/afs/etc/CellServDB</emphasis> file. <programlisting>
2202    # <emphasis role="bold">rm  CellServDB</emphasis>
2203 </programlisting> <indexterm>
2204                 <primary>database server machine</primary>
2205
2206                 <secondary>entry in client CellServDB file</secondary>
2207
2208                 <tertiary>on server machine after first</tertiary>
2209               </indexterm> <indexterm>
2210                 <primary>CellServDB file (client)</primary>
2211
2212                 <secondary>creating</secondary>
2213
2214                 <tertiary>on server machine after first</tertiary>
2215               </indexterm> <indexterm>
2216                 <primary>creating</primary>
2217
2218                 <secondary>CellServDB file (client)</secondary>
2219
2220                 <tertiary>server machine after first</tertiary>
2221               </indexterm></para>
2222           </listitem>
2223
2224           <listitem>
2225             <para>Create the <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file. Use a network file transfer program
2226             such as <emphasis role="bold">ftp</emphasis> or NFS to copy it from one of the following sources, which are listed in
2227             decreasing order of preference: <itemizedlist>
2228                 <listitem>
2229                   <para>Your cell's central <emphasis role="bold">CellServDB</emphasis> source file (the conventional location is
2230                   <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2231                   role="bold">/common/etc/CellServDB</emphasis>)</para>
2232                 </listitem>
2233
2234                 <listitem>
2235                   <para>The global <emphasis role="bold">CellServDB</emphasis> file maintained by the AFS Product Support
2236                   group</para>
2237                 </listitem>
2238
2239                 <listitem>
2240                   <para>An existing client machine in your cell</para>
2241                 </listitem>
2242
2243                 <listitem>
2244                   <para>The <emphasis role="bold">CellServDB.sample</emphasis> file included in the
2245                   <replaceable>sysname</replaceable><emphasis role="bold">/root.client/usr/vice/etc</emphasis> directory of each AFS
2246                   CD-ROM; add an entry for the local cell by following the instructions in <link linkend="HDRWQ66">Creating the
2247                   Client CellServDB File</link></para>
2248                 </listitem>
2249               </itemizedlist></para>
2250
2251             <indexterm>
2252               <primary>cache</primary>
2253
2254               <secondary>configuring</secondary>
2255
2256               <tertiary>server machine after first</tertiary>
2257             </indexterm>
2258
2259             <indexterm>
2260               <primary>configuring</primary>
2261
2262               <secondary>cache</secondary>
2263
2264               <tertiary>server machine after first</tertiary>
2265             </indexterm>
2266
2267             <indexterm>
2268               <primary>setting</primary>
2269
2270               <secondary>cache size and location</secondary>
2271
2272               <tertiary>server machine after first</tertiary>
2273             </indexterm>
2274
2275             <indexterm>
2276               <primary>file server machine, additional</primary>
2277
2278               <secondary>cache size and location</secondary>
2279             </indexterm>
2280           </listitem>
2281
2282           <listitem>
2283             <para>Create the <emphasis role="bold">cacheinfo</emphasis> file for either a disk cache or a memory cache. For a
2284             discussion of the appropriate values to record in the file, see <link linkend="HDRWQ67">Configuring the
2285             Cache</link>.</para>
2286
2287             <para>To configure a disk cache, issue the following commands. If you are devoting a partition exclusively to caching,
2288             as recommended, you must also configure it, make a file system on it, and mount it at the directory created in this
2289             step.</para>
2290
2291             <programlisting>
2292    # <emphasis role="bold">mkdir /usr/vice/cache</emphasis>
2293    # <emphasis role="bold">echo "/afs:/usr/vice/cache:</emphasis><replaceable>#blocks</replaceable><emphasis role="bold">" &gt; cacheinfo</emphasis>   
2294 </programlisting>
2295
2296             <para>To configure a memory cache:</para>
2297
2298             <programlisting>
2299    # <emphasis role="bold">echo "/afs:/usr/vice/cache:</emphasis><replaceable>#blocks</replaceable><emphasis role="bold">" &gt; cacheinfo</emphasis>
2300 </programlisting>
2301
2302             <indexterm>
2303               <primary>Cache Manager</primary>
2304
2305               <secondary>server machine after first</secondary>
2306             </indexterm>
2307
2308             <indexterm>
2309               <primary>configuring</primary>
2310
2311               <secondary>Cache Manager</secondary>
2312
2313               <tertiary>server machine after first</tertiary>
2314             </indexterm>
2315
2316             <indexterm>
2317               <primary>file server machine, additional</primary>
2318
2319               <secondary>Cache Manager</secondary>
2320             </indexterm>
2321
2322             <indexterm>
2323               <primary>afs (/afs) directory</primary>
2324
2325               <secondary>creating</secondary>
2326
2327               <tertiary>server machine after first</tertiary>
2328             </indexterm>
2329
2330             <indexterm>
2331               <primary>AFS initialization script</primary>
2332
2333               <secondary>setting afsd parameters</secondary>
2334
2335               <tertiary>server machine after first</tertiary>
2336             </indexterm>
2337
2338             <indexterm>
2339               <primary>file server machine, additional</primary>
2340
2341               <secondary>afsd command parameters</secondary>
2342             </indexterm>
2343           </listitem>
2344
2345           <listitem>
2346             <para>Create the local directory on which to mount the AFS filespace, by convention <emphasis
2347             role="bold">/afs</emphasis>. If the directory already exists, verify that it is empty. <programlisting>
2348    # <emphasis role="bold">mkdir /afs</emphasis>
2349 </programlisting></para>
2350           </listitem>
2351
2352           <listitem>
2353             <para>On AIX systems, add the following line to the <emphasis role="bold">/etc/vfs</emphasis> file. It enables AIX to
2354             unmount AFS correctly during shutdown. <programlisting>
2355    afs     4     none     none
2356 </programlisting></para>
2357           </listitem>
2358
2359           <listitem>
2360             <para>On Linux systems, copy the <emphasis role="bold">afsd</emphasis> options file from the <emphasis
2361             role="bold">/usr/vice/etc</emphasis> directory to the <emphasis role="bold">/etc/sysconfig</emphasis> directory,
2362             removing the <emphasis role="bold">.conf</emphasis> extension as you do so. <programlisting>
2363    # <emphasis role="bold">cp /usr/vice/etc/afs.conf /etc/sysconfig/afs</emphasis>
2364 </programlisting></para>
2365           </listitem>
2366
2367           <listitem>
2368             <para>Edit the machine's AFS initialization script or <emphasis role="bold">afsd</emphasis> options file to set
2369             appropriate values for <emphasis role="bold">afsd</emphasis> command parameters. The script resides in the indicated
2370             location on each system type: <itemizedlist>
2371                 <listitem>
2372                   <para>On AIX systems, <emphasis role="bold">/etc/rc.afs</emphasis></para>
2373                 </listitem>
2374
2375                 <listitem>
2376                   <para>On HP-UX systems, <emphasis role="bold">/sbin/init.d/afs</emphasis></para>
2377                 </listitem>
2378
2379                 <listitem>
2380                   <para>On IRIX systems, <emphasis role="bold">/etc/init.d/afs</emphasis></para>
2381                 </listitem>
2382
2383                 <listitem>
2384                   <para>On Linux systems, <emphasis role="bold">/etc/sysconfig/afs</emphasis> (the <emphasis
2385                   role="bold">afsd</emphasis> options file)</para>
2386                 </listitem>
2387
2388                 <listitem>
2389                   <para>On Solaris systems, <emphasis role="bold">/etc/init.d/afs</emphasis></para>
2390                 </listitem>
2391               </itemizedlist></para>
2392
2393             <para>Use one of the methods described in <link linkend="HDRWQ70">Configuring the Cache Manager</link> to add the
2394             following flags to the <emphasis role="bold">afsd</emphasis> command line. If you intend for the machine to remain an
2395             AFS client, also set any performance-related arguments you wish. <itemizedlist>
2396                 <listitem>
2397                   <para>Add the <emphasis role="bold">-nosettime</emphasis> flag, because this is a file server machine that is also
2398                   a client.</para>
2399                 </listitem>
2400
2401                 <listitem>
2402                   <para>Add the <emphasis role="bold">-memcache</emphasis> flag if the machine is to use a memory cache.</para>
2403                 </listitem>
2404
2405                 <listitem>
2406                   <para>Add the <emphasis role="bold">-verbose</emphasis> flag to display a trace of the Cache Manager's
2407                   initialization on the standard output stream.</para>
2408                 </listitem>
2409               </itemizedlist></para>
2410           </listitem>
2411
2412           <listitem>
2413             <para>If appropriate, follow the instructions in <link linkend="HDRWQ83">Storing AFS Binaries in AFS</link> to copy the
2414             AFS binaries for this system type into an AFS volume. See the introduction to this section for further
2415             discussion.</para>
2416           </listitem>
2417         </orderedlist></para>
2418     </sect2>
2419
2420     <sect2 id="HDRWQ112">
2421       <title>Completing the Installation</title>
2422
2423       <para>At this point you run the machine's AFS initialization script to verify that it correctly loads AFS modifications into
2424       the kernel and starts the BOS Server, which starts the other server processes. If you have installed client files, the script
2425       also starts the Cache Manager. If the script works correctly, perform the steps that incorporate it into the machine's startup
2426       and shutdown sequence. If there are problems during the initialization, attempt to resolve them. The AFS Product Support group
2427       can provide assistance if necessary.</para>
2428
2429       <para>If the machine is configured as a client using a disk cache, it can take a while for the <emphasis
2430       role="bold">afsd</emphasis> program to create all of the <emphasis role="bold">V</emphasis><replaceable>n</replaceable> files
2431       in the cache directory. Messages on the console trace the initialization process. <orderedlist>
2432           <listitem>
2433             <para>Issue the <emphasis role="bold">bos shutdown</emphasis> command to shut down the AFS server processes other than
2434             the BOS Server. Include the <emphasis role="bold">-wait</emphasis> flag to delay return of the command shell prompt
2435             until all processes shut down completely. <programlisting>
2436    # <emphasis role="bold">/usr/afs/bin/bos shutdown</emphasis> &lt;<replaceable>machine name</replaceable>&gt; <emphasis
2437                   role="bold">-wait</emphasis>
2438 </programlisting></para>
2439           </listitem>
2440
2441           <listitem>
2442             <para>Issue the <emphasis role="bold">ps</emphasis> command to learn the BOS Server's process ID number (PID), and then
2443             the <emphasis role="bold">kill</emphasis> command to stop the <emphasis role="bold">bosserver</emphasis> process.
2444             <programlisting>
2445    # <emphasis role="bold">ps</emphasis> <replaceable>appropriate_ps_options</replaceable> <emphasis role="bold">| grep bosserver</emphasis>
2446    # <emphasis role="bold">kill</emphasis> <replaceable>bosserver_PID</replaceable>
2447 </programlisting> <indexterm>
2448                 <primary>AFS initialization script</primary>
2449
2450                 <secondary>adding to machine startup sequence</secondary>
2451
2452                 <tertiary>server machine after first</tertiary>
2453               </indexterm> <indexterm>
2454                 <primary>AFS initialization script</primary>
2455
2456                 <secondary>running</secondary>
2457
2458                 <tertiary>server machine after first</tertiary>
2459               </indexterm> <indexterm>
2460                 <primary>file server machine, additional</primary>
2461
2462                 <secondary>AFS initialization script</secondary>
2463               </indexterm> <indexterm>
2464                 <primary>running AFS init. script</primary>
2465
2466                 <secondary>server machine after first</secondary>
2467               </indexterm> <indexterm>
2468                 <primary>installing</primary>
2469
2470                 <secondary>AFS initialization script</secondary>
2471
2472                 <tertiary>server machine after first</tertiary>
2473               </indexterm> <indexterm>
2474                 <primary>AIX</primary>
2475
2476                 <secondary>AFS initialization script</secondary>
2477
2478                 <tertiary>on add'l server machine</tertiary>
2479               </indexterm></para>
2480           </listitem>
2481
2482           <listitem>
2483             <para>Run the AFS initialization script by issuing the appropriate commands for this system type.</para>
2484
2485             <para><emphasis role="bold">On AIX systems:</emphasis> <orderedlist>
2486                 <listitem>
2487                   <para>Reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>.
2488                   <programlisting>
2489    # <emphasis role="bold">cd /</emphasis>
2490    # <emphasis role="bold">shutdown -r now</emphasis>
2491    login: <emphasis role="bold">root</emphasis>
2492    Password: <replaceable>root_password</replaceable>
2493 </programlisting></para>
2494                 </listitem>
2495
2496                 <listitem>
2497                   <para>Run the AFS initialization script. <programlisting>
2498    # <emphasis role="bold">/etc/rc.afs</emphasis>
2499 </programlisting></para>
2500                 </listitem>
2501
2502                 <listitem>
2503                   <para>Edit the AIX initialization file, <emphasis role="bold">/etc/inittab</emphasis>, adding the following line
2504                   to invoke the AFS initialization script. Place it just after the line that starts NFS daemons. <programlisting>
2505    rcafs:2:wait:/etc/rc.afs &gt; /dev/console 2&gt;&amp;1 # Start AFS services
2506 </programlisting></para>
2507                 </listitem>
2508
2509                 <listitem>
2510                   <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2511                   <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc</emphasis> directories. If you want
2512                   to avoid potential confusion by guaranteeing that they are always the same, create a link between them. You can
2513                   always retrieve the original script from the AFS CD-ROM if necessary. <programlisting>
2514    # <emphasis role="bold">cd  /usr/vice/etc</emphasis>
2515    # <emphasis role="bold">rm  rc.afs</emphasis>
2516    # <emphasis role="bold">ln -s  /etc/rc.afs</emphasis>
2517 </programlisting></para>
2518                 </listitem>
2519
2520                 <listitem>
2521                   <para>Proceed to Step <link linkend="LIWQ113">4</link>.</para>
2522                 </listitem>
2523               </orderedlist></para>
2524
2525             <indexterm>
2526               <primary>HP-UX</primary>
2527
2528               <secondary>AFS initialization script</secondary>
2529
2530               <tertiary>on add'l server machine</tertiary>
2531             </indexterm>
2532
2533             <para><emphasis role="bold">On HP-UX systems:</emphasis> <orderedlist>
2534                 <listitem>
2535                   <para>Run the AFS initialization script. <programlisting>
2536    # <emphasis role="bold">/sbin/init.d/afs  start</emphasis>
2537 </programlisting></para>
2538                 </listitem>
2539
2540                 <listitem>
2541                   <para>Change to the <emphasis role="bold">/sbin/init.d</emphasis> directory and issue the <emphasis role="bold">ln
2542                   -s</emphasis> command to create symbolic links that incorporate the AFS initialization script into the HP-UX
2543                   startup and shutdown sequence. <programlisting>
2544    # <emphasis role="bold">cd /sbin/init.d</emphasis>
2545    # <emphasis role="bold">ln -s ../init.d/afs /sbin/rc2.d/S460afs</emphasis>
2546    # <emphasis role="bold">ln -s ../init.d/afs /sbin/rc2.d/K800afs</emphasis>
2547 </programlisting></para>
2548                 </listitem>
2549
2550                 <listitem>
2551                   <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2552                   <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/sbin/init.d</emphasis> directories. If
2553                   you want to avoid potential confusion by guaranteeing that they are always the same, create a link between them.
2554                   You can always retrieve the original script from the AFS CD-ROM if necessary. <programlisting>
2555    # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2556    # <emphasis role="bold">rm afs.rc</emphasis>
2557    # <emphasis role="bold">ln -s  /sbin/init.d/afs  afs.rc</emphasis>
2558 </programlisting></para>
2559                 </listitem>
2560
2561                 <listitem>
2562                   <para>Proceed to Step <link linkend="LIWQ113">4</link>.</para>
2563                 </listitem>
2564               </orderedlist></para>
2565
2566             <indexterm>
2567               <primary>IRIX</primary>
2568
2569               <secondary>AFS initialization script</secondary>
2570
2571               <tertiary>on add'l server machine</tertiary>
2572             </indexterm>
2573
2574             <indexterm>
2575               <primary>afsclient variable (IRIX)</primary>
2576
2577               <secondary>server machine after first</secondary>
2578             </indexterm>
2579
2580             <indexterm>
2581               <primary>variables</primary>
2582
2583               <secondary>afsclient (IRIX)</secondary>
2584
2585               <tertiary>server machine after first</tertiary>
2586             </indexterm>
2587
2588             <indexterm>
2589               <primary>IRIX</primary>
2590
2591               <secondary>afsclient variable</secondary>
2592
2593               <tertiary>server machine after first</tertiary>
2594             </indexterm>
2595
2596             <indexterm>
2597               <primary>afsserver variable (IRIX)</primary>
2598
2599               <secondary>server machine after first</secondary>
2600             </indexterm>
2601
2602             <indexterm>
2603               <primary>variables</primary>
2604
2605               <secondary>afsserver (IRIX)</secondary>
2606
2607               <tertiary>server machine after first</tertiary>
2608             </indexterm>
2609
2610             <indexterm>
2611               <primary>IRIX</primary>
2612
2613               <secondary>afsserver variable</secondary>
2614
2615               <tertiary>server machine after first</tertiary>
2616             </indexterm>
2617
2618             <para><emphasis role="bold">On IRIX systems:</emphasis> <orderedlist>
2619                 <listitem>
2620                   <para>If you have configured the machine to use the <emphasis role="bold">ml</emphasis> dynamic loader program,
2621                   reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>. <programlisting>
2622    # <emphasis role="bold">cd /</emphasis>
2623    # <emphasis role="bold">shutdown -i6 -g0 -y</emphasis>
2624    login: <emphasis role="bold">root</emphasis>
2625    Password: <replaceable>root_password</replaceable>
2626 </programlisting></para>
2627                 </listitem>
2628
2629                 <listitem>
2630                   <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to activate the <emphasis
2631                   role="bold">afsserver</emphasis> configuration variable. <programlisting>
2632    # <emphasis role="bold">/etc/chkconfig -f afsserver on</emphasis>   
2633 </programlisting></para>
2634
2635                   <para>If you have configured this machine as an AFS client and want to it remain one, also issue the <emphasis
2636                   role="bold">chkconfig</emphasis> command to activate the <emphasis role="bold">afsclient</emphasis> configuration
2637                   variable.</para>
2638
2639                   <programlisting>
2640    # <emphasis role="bold">/etc/chkconfig -f afsclient on</emphasis> 
2641 </programlisting>
2642                 </listitem>
2643
2644                 <listitem>
2645                   <para>Run the AFS initialization script. <programlisting>
2646    # <emphasis role="bold">/etc/init.d/afs  start</emphasis>
2647 </programlisting></para>
2648                 </listitem>
2649
2650                 <listitem>
2651                   <para>Change to the <emphasis role="bold">/etc/init.d</emphasis> directory and issue the <emphasis role="bold">ln
2652                   -s</emphasis> command to create symbolic links that incorporate the AFS initialization script into the IRIX
2653                   startup and shutdown sequence. <programlisting>
2654    # <emphasis role="bold">cd /etc/init.d</emphasis>
2655    # <emphasis role="bold">ln -s ../init.d/afs /etc/rc2.d/S35afs</emphasis>
2656    # <emphasis role="bold">ln -s ../init.d/afs /etc/rc0.d/K35afs</emphasis>
2657 </programlisting></para>
2658                 </listitem>
2659
2660                 <listitem>
2661                   <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2662                   <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/init.d</emphasis> directories. If
2663                   you want to avoid potential confusion by guaranteeing that they are always the same, create a link between them.
2664                   You can always retrieve the original script from the AFS CD-ROM if necessary. <programlisting>
2665    # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2666    # <emphasis role="bold">rm afs.rc</emphasis>
2667    # <emphasis role="bold">ln -s  /etc/init.d/afs  afs.rc</emphasis>
2668 </programlisting></para>
2669                 </listitem>
2670
2671                 <listitem>
2672                   <para>Proceed to Step <link linkend="LIWQ113">4</link>.</para>
2673                 </listitem>
2674               </orderedlist></para>
2675
2676             <indexterm>
2677               <primary>Linux</primary>
2678
2679               <secondary>AFS initialization script</secondary>
2680
2681               <tertiary>on add'l server machine</tertiary>
2682             </indexterm>
2683
2684             <para><emphasis role="bold">On Linux systems:</emphasis> <orderedlist>
2685                 <listitem>
2686                   <para>Reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>.
2687                   <programlisting>
2688    # <emphasis role="bold">cd /</emphasis>
2689    # <emphasis role="bold">shutdown -r now</emphasis>
2690    login: <emphasis role="bold">root</emphasis>
2691    Password: <replaceable>root_password</replaceable>
2692 </programlisting></para>
2693                 </listitem>
2694
2695                 <listitem>
2696                   <para>Run the AFS initialization script. <programlisting>
2697    # <emphasis role="bold">/etc/rc.d/init.d/afs  start</emphasis>
2698 </programlisting></para>
2699                 </listitem>
2700
2701                 <listitem>
2702                   <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to activate the <emphasis
2703                   role="bold">afs</emphasis> configuration variable. Based on the instruction in the AFS initialization file that
2704                   begins with the string <computeroutput>#chkconfig</computeroutput>, the command automatically creates the symbolic
2705                   links that incorporate the script into the Linux startup and shutdown sequence. <programlisting>
2706    # <emphasis role="bold">/sbin/chkconfig  --add afs</emphasis>
2707 </programlisting></para>
2708                 </listitem>
2709
2710                 <listitem>
2711                   <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2712                   <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/rc.d/init.d</emphasis> directories,
2713                   and copies of the <emphasis role="bold">afsd</emphasis> options file in both the <emphasis
2714                   role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/sysconfig</emphasis> directories. If you want
2715                   to avoid potential confusion by guaranteeing that the two copies of each file are always the same, create a link
2716                   between them. You can always retrieve the original script or options file from the AFS CD-ROM if necessary.
2717                   <programlisting>
2718    # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2719    # <emphasis role="bold">rm afs.rc afs.conf</emphasis>
2720    # <emphasis role="bold">ln -s  /etc/rc.d/init.d/afs  afs.rc</emphasis>
2721    # <emphasis role="bold">ln -s  /etc/sysconfig/afs  afs.conf</emphasis>
2722 </programlisting></para>
2723                 </listitem>
2724
2725                 <listitem>
2726                   <para>Proceed to Step <link linkend="LIWQ113">4</link>.</para>
2727                 </listitem>
2728               </orderedlist></para>
2729
2730             <indexterm>
2731               <primary>Solaris</primary>
2732
2733               <secondary>AFS initialization script</secondary>
2734
2735               <tertiary>on add'l server machine</tertiary>
2736             </indexterm>
2737
2738             <para><emphasis role="bold">On Solaris systems:</emphasis> <orderedlist>
2739                 <listitem>
2740                   <para>Reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>.
2741                   <programlisting>
2742    # <emphasis role="bold">cd /</emphasis>
2743    # <emphasis role="bold">shutdown -i6 -g0 -y</emphasis>
2744    login: <emphasis role="bold">root</emphasis>
2745    Password: <replaceable>root_password</replaceable>
2746 </programlisting></para>
2747                 </listitem>
2748
2749                 <listitem>
2750                   <para>Run the AFS initialization script. <programlisting>
2751    # <emphasis role="bold">/etc/init.d/afs  start</emphasis>
2752 </programlisting></para>
2753                 </listitem>
2754
2755                 <listitem>
2756                   <para>Change to the <emphasis role="bold">/etc/init.d</emphasis> directory and issue the <emphasis role="bold">ln
2757                   -s</emphasis> command to create symbolic links that incorporate the AFS initialization script into the Solaris
2758                   startup and shutdown sequence. <programlisting>
2759    # <emphasis role="bold">cd /etc/init.d</emphasis>
2760    # <emphasis role="bold">ln -s ../init.d/afs /etc/rc3.d/S99afs</emphasis>
2761    # <emphasis role="bold">ln -s ../init.d/afs /etc/rc0.d/K66afs</emphasis>
2762 </programlisting></para>
2763                 </listitem>
2764
2765                 <listitem>
2766                   <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2767                   <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/init.d</emphasis> directories. If
2768                   you want to avoid potential confusion by guaranteeing that they are always the same, create a link between them.
2769                   You can always retrieve the original script from the AFS CD-ROM if necessary. <programlisting>
2770    # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2771    # <emphasis role="bold">rm afs.rc</emphasis>
2772    # <emphasis role="bold">ln -s  /etc/init.d/afs  afs.rc</emphasis>
2773 </programlisting></para>
2774                 </listitem>
2775               </orderedlist></para>
2776           </listitem>
2777
2778           <listitem>
2779             <para><anchor id="LIWQ113" />Verify that <emphasis role="bold">/usr/afs</emphasis> and its subdirectories on the new
2780             file server machine meet the ownership and mode bit requirements outlined in <link linkend="HDRWQ96">Protecting
2781             Sensitive AFS Directories</link>. If necessary, use the <emphasis role="bold">chmod</emphasis> command to correct the
2782             mode bits.</para>
2783           </listitem>
2784
2785           <listitem>
2786             <para>To configure this machine as a database server machine, proceed to <link linkend="HDRWQ114">Installing Database
2787             Server Functionality</link>.</para>
2788           </listitem>
2789         </orderedlist></para>
2790
2791       <indexterm>
2792         <primary>database server machine</primary>
2793
2794         <secondary>requirements for installation</secondary>
2795       </indexterm>
2796
2797       <indexterm>
2798         <primary>requirements</primary>
2799
2800         <secondary>database server machine</secondary>
2801       </indexterm>
2802     </sect2>
2803   </sect1>
2804
2805   <sect1 id="HDRWQ114">
2806     <title>Installing Database Server Functionality</title>
2807
2808     <para>This section explains how to install database server functionality. Database server machines have two defining
2809     characteristics. First, they run the Authentication Server, Protection Server, and Volume Location (VL) Server processes. They
2810     also run the Backup Server if the cell uses the AFS Backup System, as is assumed in these instructions. Second, they appear in
2811     the <emphasis role="bold">CellServDB</emphasis> file of every machine in the cell (and of client machines in foreign cells, if
2812     they are to access files in this cell).</para>
2813
2814     <para>Note the following requirements for database server machines. <itemizedlist>
2815         <listitem>
2816           <para>In the conventional configuration, database server machines also serve as file server machines (run the File Server,
2817           Volume Server and Salvager processes). If you choose not to run file server functionality on a database server machine,
2818           then the kernel does not have to incorporate AFS modifications, but the local <emphasis role="bold">/usr/afs</emphasis>
2819           directory must house most of the standard files and subdirectories. In particular, the <emphasis
2820           role="bold">/usr/afs/etc/KeyFile</emphasis> file must contain the same keys as all other server machines in the cell. If
2821           you run a system control machine, run the <emphasis role="bold">upclientetc</emphasis> process on every database server
2822           machine other than the system control machine; if you do not run a system control machine, use the <emphasis
2823           role="bold">bos addkey</emphasis> command as instructed in the chapter in the <emphasis>OpenAFS Administration
2824           Guide</emphasis> about maintaining server encryption keys.</para>
2825
2826           <para>The instructions in this section assume that the machine on which you are installing database server functionality
2827           is already a file server machine. Contact the AFS Product Support group to learn how to install database server
2828           functionality on a non-file server machine.</para>
2829         </listitem>
2830
2831         <listitem>
2832           <para>During the installation of database server functionality, you must restart all of the database server machines to
2833           force the election of a new Ubik coordinator (synchronization site) for each database server process. This can cause a
2834           system outage, which usually lasts less than 5 minutes.</para>
2835         </listitem>
2836
2837         <listitem>
2838           <para>Updating the kernel memory list of database server machines on each client machine is generally the most
2839           time-consuming part of installing a new database server machine. It is, however, crucial for correct functioning in your
2840           cell. Incorrect knowledge of your cell's database server machines can prevent your users from authenticating, accessing
2841           files, and issuing AFS commands.</para>
2842
2843           <para>You update a client's kernel memory list by changing the <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis>
2844           file and then either rebooting or issuing the <emphasis role="bold">fs newcell</emphasis> command. For instructions, see
2845           the chapter in the <emphasis>OpenAFS Administration Guide</emphasis> about administering client machines.</para>
2846
2847           <para>The point at which you update your clients' knowledge of database server machines depends on which of the database
2848           server machines has the lowest IP address. The following instructions indicate the appropriate place to update your client
2849           machines in either case. <itemizedlist>
2850               <listitem>
2851                 <para>If the new database server machine has a lower IP address than any existing database server machine, update
2852                 the <emphasis role="bold">CellServDB</emphasis> file on every client machine before restarting the database server
2853                 processes. If you do not, users can become unable to update (write to) any of the AFS databases. This is because the
2854                 machine with the lowest IP address is usually elected as the Ubik coordinator, and only the Coordinator accepts
2855                 database writes. On client machines that do not have the new list of database server machines, the Cache Manager
2856                 cannot locate the new coordinator. (Be aware that if clients contact the new coordinator before it is actually in
2857                 service, they experience a timeout before contacting another database server machine. This is a minor, and
2858                 temporary, problem compared to being unable to write to the database.)</para>
2859               </listitem>
2860
2861               <listitem>
2862                 <para>If the new database server machine does not have the lowest IP address of any database server machine, then it
2863                 is better to update clients after restarting the database server processes. Client machines do not start using the
2864                 new database server machine until you update their kernel memory list, but that does not usually cause timeouts or
2865                 update problems (because the new machine is not likely to become the coordinator).</para>
2866               </listitem>
2867             </itemizedlist></para>
2868         </listitem>
2869       </itemizedlist></para>
2870
2871     <indexterm>
2872       <primary>overview</primary>
2873
2874       <secondary>installing additional database server machine</secondary>
2875     </indexterm>
2876
2877     <sect2 id="Header_110">
2878       <title>Summary of Procedures</title>
2879
2880       <para>To install a database server machine, perform the following procedures. <orderedlist>
2881           <listitem>
2882             <para>Install the <emphasis role="bold">bos</emphasis> suite of commands locally, as a precaution</para>
2883           </listitem>
2884
2885           <listitem>
2886             <para>Add the new machine to the <emphasis role="bold">/usr/afs/etc/CellServDB</emphasis> file on existing file server
2887             machines</para>
2888           </listitem>
2889
2890           <listitem>
2891             <para>Update your cell's central <emphasis role="bold">CellServDB</emphasis> source file and the file you make available
2892             to foreign cells</para>
2893           </listitem>
2894
2895           <listitem>
2896             <para>Update every client machine's <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file and kernel memory
2897             list of database server machines</para>
2898           </listitem>
2899
2900           <listitem>
2901             <para>Start the database server processes (Authentication Server, Backup Server, Protection Server, and Volume Location
2902             Server)</para>
2903           </listitem>
2904
2905           <listitem>
2906             <para>Restart the database server processes on every database server machine</para>
2907           </listitem>
2908
2909           <listitem>
2910             <para>Notify the AFS Product Support group that you have installed a new database server machine</para>
2911           </listitem>
2912         </orderedlist></para>
2913
2914       <indexterm>
2915         <primary>database server machine</primary>
2916
2917         <secondary>installing</secondary>
2918
2919         <tertiary>additional</tertiary>
2920       </indexterm>
2921
2922       <indexterm>
2923         <primary>instructions</primary>
2924
2925         <secondary>database server machine, installing additional</secondary>
2926       </indexterm>
2927
2928       <indexterm>
2929         <primary>installing</primary>
2930
2931         <secondary>database server machine</secondary>
2932
2933         <tertiary>additional</tertiary>
2934       </indexterm>
2935     </sect2>
2936
2937     <sect2 id="Header_111">
2938       <title>Instructions</title>
2939
2940       <note>
2941         <para>It is assumed that your PATH environment variable includes the directory that houses the AFS command binaries. If not,
2942         you possibly need to precede the command names with the appropriate pathname.</para>
2943       </note>
2944
2945       <orderedlist>
2946         <listitem>
2947           <para>You can perform the following instructions on either a server or client machine. Login as an AFS administrator who
2948           is listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file on all server machines. <programlisting>
2949    % <emphasis role="bold">klog</emphasis> <replaceable>admin_user</replaceable>
2950    Password: <replaceable>admin_password</replaceable>
2951 </programlisting></para>
2952         </listitem>
2953
2954         <listitem>
2955           <para>If you are working on a client machine configured in the conventional manner, the <emphasis
2956           role="bold">bos</emphasis> command suite resides in the <emphasis role="bold">/usr/afsws/bin</emphasis> directory, a
2957           symbolic link to an AFS directory. An error during installation can potentially block access to AFS, in which case it is
2958           helpful to have a copy of the <emphasis role="bold">bos</emphasis> binary on the local disk. This step is not necessary if
2959           you are working on a server machine, where the binary resides in the local <emphasis role="bold">/usr/afs/bin</emphasis>
2960           directory. <programlisting>
2961    % <emphasis role="bold">cp  /usr/afsws/bin/bos   /tmp</emphasis>
2962 </programlisting> <indexterm>
2963               <primary>bos commands</primary>
2964
2965               <secondary>addhost</secondary>
2966             </indexterm> <indexterm>
2967               <primary>commands</primary>
2968
2969               <secondary>bos addhost</secondary>
2970             </indexterm> <indexterm>
2971               <primary>database server machine</primary>
2972
2973               <secondary>entry in server CellServDB file</secondary>
2974
2975               <tertiary>for new db-server machine</tertiary>
2976             </indexterm> <indexterm>
2977               <primary>CellServDB file (server)</primary>
2978
2979               <secondary>adding entry for new db-server machine</secondary>
2980             </indexterm> <indexterm>
2981               <primary>adding</primary>
2982
2983               <secondary>new db-server machine to CellServDB files</secondary>
2984             </indexterm></para>
2985         </listitem>
2986
2987         <listitem>
2988           <para><anchor id="LIWQ115" />Issue the <emphasis role="bold">bos addhost</emphasis> command to add the new database server
2989           machine to the <emphasis role="bold">/usr/afs/etc/CellServDB</emphasis> file on existing server machines (as well as the
2990           new database server machine itself).</para>
2991
2992           <para>Substitute the new database server machine's fully-qualified hostname for the <replaceable>host name</replaceable>
2993           argument. If you run a system control machine, substitute its fully-qualified hostname for the
2994           <replaceable>machine&nbsp;name</replaceable> argument. If you do not run a system control machine, repeat the <emphasis
2995           role="bold">bos addhost</emphasis> command once for each server machine in your cell (including the new database server
2996           machine itself), by substituting each one's fully-qualified hostname for the <replaceable>machine&nbsp;name</replaceable>
2997           argument in turn.</para>
2998
2999           <programlisting>
3000    % <emphasis role="bold">bos addhost</emphasis> &lt;<replaceable>machine name</replaceable>&gt;  &lt;<replaceable>host name</replaceable>&gt;   
3001 </programlisting>
3002
3003           <para>If you run a system control machine, wait for the Update Server to distribute the new <emphasis
3004           role="bold">CellServDB</emphasis> file, which takes up to five minutes by default. If you are issuing individual <emphasis
3005           role="bold">bos addhost</emphasis> commands, attempt to issue all of them within five minutes.</para>
3006
3007           <note>
3008             <para>It is best to maintain a one-to-one mapping between hostnames and IP addresses on a multihomed database server
3009             machine (the conventional configuration for any AFS machine). The BOS Server uses the <emphasis
3010             role="bold">gethostbyname(&nbsp;)</emphasis> routine to obtain the IP address associated with the <replaceable>host
3011             name</replaceable> argument. If there is more than one address, the BOS Server records in the <emphasis
3012             role="bold">CellServDB</emphasis> entry the one that appears first in the list of addresses returned by the routine. The
3013             routine possibly returns addresses in a different order on different machines, which can create inconsistency.</para>
3014           </note>
3015         </listitem>
3016
3017         <listitem>
3018           <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">bos listhosts</emphasis> command on each
3019           server machine to verify that the new database server machine appears in its <emphasis role="bold">CellServDB</emphasis>
3020           file. <programlisting>
3021    % <emphasis role="bold">bos listhosts</emphasis> &lt;<replaceable>machine name</replaceable>&gt;
3022 </programlisting></para>
3023         </listitem>
3024
3025         <listitem>
3026           <para><anchor id="LIWQ116" />Add the new database server machine to your cell's central <emphasis
3027           role="bold">CellServDB</emphasis> source file, if you use one. The standard location is <emphasis
3028           role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
3029           role="bold">/common/etc/CellServDB</emphasis>.</para>
3030
3031           <para>If you are willing to make your cell accessible to users in foreign cells, add the new database server machine to
3032           the file that lists your cell's database server machines. The conventional location is <emphasis
3033           role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
3034           role="bold">/service/etc/CellServDB.local</emphasis>. <indexterm>
3035               <primary>database server machine</primary>
3036
3037               <secondary>entry in client CellServDB file</secondary>
3038
3039               <tertiary>for new db-server machine</tertiary>
3040             </indexterm> <indexterm>
3041               <primary>CellServDB file (client)</primary>
3042
3043               <secondary>adding entry</secondary>
3044
3045               <tertiary>for new db-server machine</tertiary>
3046             </indexterm> <indexterm>
3047               <primary>client machine</primary>
3048
3049               <secondary>CellServDB file</secondary>
3050
3051               <tertiary>adding entry</tertiary>
3052             </indexterm></para>
3053         </listitem>
3054
3055         <listitem>
3056           <para><anchor id="LIWQ117" />If this machine's IP address is lower than any existing database server machine's, update
3057           every client machine's <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file and kernel memory list to include
3058           this machine. (If this machine's IP address is not the lowest, it is acceptable to wait until Step <link
3059           linkend="LIWQ123">12</link>.)</para>
3060
3061           <para>There are several ways to update the <emphasis role="bold">CellServDB</emphasis> file on client machines, as
3062           detailed in the chapter of the <emphasis>OpenAFS Administration Guide</emphasis> about administering client machines. One
3063           option is to copy over the central update source (which you updated in Step <link linkend="LIWQ116">5</link>), with or
3064           without using the <emphasis role="bold">package</emphasis> program. To update the machine's kernel memory list, you can
3065           either reboot after changing the <emphasis role="bold">CellServDB</emphasis> file or issue the <emphasis role="bold">fs
3066           newcell</emphasis> command. <indexterm>
3067               <primary>Authentication Server</primary>
3068
3069               <secondary>starting</secondary>
3070
3071               <tertiary>new db-server machine</tertiary>
3072             </indexterm> <indexterm>
3073               <primary>starting</primary>
3074
3075               <secondary>Authentication Server</secondary>
3076
3077               <tertiary>new db-server machine</tertiary>
3078             </indexterm> <indexterm>
3079               <primary>database server machine</primary>
3080