Quick Start Guide updated for RHEL rpms, and CLI syntax
[openafs.git] / doc / xml / QuickStartUnix / auqbg007.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <chapter id="HDRWQ133">
3   <title>Installing Additional Client Machines</title>
4
5   <indexterm>
6     <primary>instructions</primary>
7
8     <secondary>client machine</secondary>
9   </indexterm>
10
11   <indexterm>
12     <primary>installing</primary>
13
14     <secondary>client functionality</secondary>
15
16     <tertiary>client machine</tertiary>
17   </indexterm>
18
19   <para>This chapter describes how to install AFS client machines after you have installed the first AFS machine. Some parts of the
20   installation differ depending on whether or not the new client is of the same AFS system type (uses the same AFS binaries) as a
21   previously installed client machine. <indexterm>
22       <primary>overview</primary>
23
24       <secondary>installing client machine</secondary>
25     </indexterm></para>
26
27   <sect1 id="Header_116">
28     <title>Summary of Procedures</title>
29
30     <orderedlist>
31       <listitem>
32         <para>Incorporate AFS into the machine's kernel</para>
33       </listitem>
34
35       <listitem>
36         <para>Define the machine's cell membership</para>
37       </listitem>
38
39       <listitem>
40         <para>Define cache location and size</para>
41       </listitem>
42
43       <listitem>
44         <para>Create the <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file, which determines which foreign cells the
45         client can access in addition to the local cell</para>
46       </listitem>
47
48       <listitem>
49         <para>Create the <emphasis role="bold">/afs</emphasis> directory and start the Cache Manager</para>
50       </listitem>
51
52       <listitem>
53         <para>Create and mount volumes for housing AFS client binaries (necessary only for clients of a new system type)</para>
54       </listitem>
55
56       <listitem>
57         <para>Create a link from the local <emphasis role="bold">/usr/afsws</emphasis> directory to the AFS directory housing the
58         AFS client binaries</para>
59       </listitem>
60
61       <listitem>
62         <para>Modify the machine's authentication system to enable AFS users to obtain tokens at login</para>
63       </listitem>
64     </orderedlist>
65
66     <indexterm>
67       <primary>Binary Distribution</primary>
68
69       <secondary>creating /tmp/afsdist directory</secondary>
70
71       <tertiary>client machine</tertiary>
72     </indexterm>
73
74     <indexterm>
75       <primary>afsdist directory</primary>
76
77       <secondary>client machine</secondary>
78     </indexterm>
79
80     <indexterm>
81       <primary>client machine</primary>
82
83       <secondary>/tmp/afsdist directory</secondary>
84     </indexterm>
85
86     <indexterm>
87       <primary>creating</primary>
88
89       <secondary>/tmp/afsdist directory</secondary>
90
91       <tertiary>client machine</tertiary>
92     </indexterm>
93
94     <indexterm>
95       <primary>usr/vice/etc directory</primary>
96
97       <secondary>client machine</secondary>
98     </indexterm>
99
100     <indexterm>
101       <primary>client machine</primary>
102
103       <secondary>/usr/vice/etc directory</secondary>
104     </indexterm>
105
106     <indexterm>
107       <primary>creating</primary>
108
109       <secondary>/usr/vice/etc directory</secondary>
110
111       <tertiary>client machine</tertiary>
112     </indexterm>
113   </sect1>
114
115   <sect1 id="HDRWQ134">
116     <title>Creating AFS Directories on the Local Disk</title>
117
118     <para>If you are not installing from a packaged distribution, create the <emphasis role="bold">/usr/vice/etc</emphasis> directory on the local disk, to house client binaries and
119     configuration files. Subsequent instructions copy files from the OpenAFS binary distribution into them. Create the <emphasis
120     role="bold">/tmp/afsdist</emphasis> directory as a location to uncompress this distribution, if it does not already exist.</para>
121
122     <programlisting>
123    # <emphasis role="bold">mkdir /usr/vice</emphasis>
124    # <emphasis role="bold">mkdir /usr/vice/etc</emphasis>
125    # <emphasis role="bold">mkdir /tmp/afsdist</emphasis>
126 </programlisting>
127   </sect1>
128
129   <sect1 id="HDRWQ135">
130     <title>Performing Platform-Specific Procedures</title>
131
132     <para>Every AFS client machine's kernel must incorporate AFS modifications. Some system types use a dynamic kernel loader
133     program, whereas on other system types you build AFS modifications into a static kernel. Some system types support both
134     methods.</para>
135
136     <para>Also modify the machine's authentication system so that users obtain an AFS token as they log into the local file system.
137     Using AFS is simpler and more convenient for your users if you make the modifications on all client machines. Otherwise, users
138     must perform a two or three step login procedure (login to the local system, obtain Kerberos credentials, and then issue the <emphasis role="bold">klog</emphasis>
139     command). For further discussion of AFS authentication, see the chapter in the <emphasis>OpenAFS Administration Guide</emphasis>
140     about cell configuration and administration issues.</para>
141
142     <para>For convenience, the following sections group the two procedures by system type. Proceed to the appropriate section.
143     <itemizedlist>
144         <listitem>
145           <para><link linkend="HDRWQ136">Getting Started on AIX Systems</link></para>
146         </listitem>
147
148         <listitem>
149           <para><link linkend="HDRWQ138">Getting Started on HP-UX Systems</link></para>
150         </listitem>
151
152         <listitem>
153           <para><link linkend="HDRWQ139">Getting Started on IRIX Systems</link></para>
154         </listitem>
155
156         <listitem>
157           <para><link linkend="HDRWQ143">Getting Started on Linux Systems</link></para>
158         </listitem>
159
160         <listitem>
161           <para><link linkend="HDRWQ144">Getting Started on Solaris Systems</link></para>
162         </listitem>
163       </itemizedlist></para>
164
165     <indexterm>
166       <primary>incorporating AFS kernel extensions</primary>
167
168       <secondary>client machine</secondary>
169
170       <tertiary>AIX</tertiary>
171     </indexterm>
172
173     <indexterm>
174       <primary>AFS kernel extensions</primary>
175
176       <secondary>on client machine</secondary>
177
178       <tertiary>AIX</tertiary>
179     </indexterm>
180
181     <indexterm>
182       <primary>client machine</primary>
183
184       <secondary>AFS kernel extensions</secondary>
185
186       <tertiary>on AIX</tertiary>
187     </indexterm>
188
189     <indexterm>
190       <primary>AIX</primary>
191
192       <secondary>AFS kernel extensions</secondary>
193
194       <tertiary>on client machine</tertiary>
195     </indexterm>
196
197     <indexterm>
198       <primary>enabling AFS login</primary>
199
200       <secondary>client machine</secondary>
201
202       <tertiary>AIX</tertiary>
203     </indexterm>
204
205     <indexterm>
206       <primary>AFS login</primary>
207
208       <secondary>on client machine</secondary>
209
210       <tertiary>AIX</tertiary>
211     </indexterm>
212
213     <indexterm>
214       <primary>client machine</primary>
215
216       <secondary>AFS login</secondary>
217
218       <tertiary>on AIX</tertiary>
219     </indexterm>
220
221     <indexterm>
222       <primary>AIX</primary>
223
224       <secondary>AFS login</secondary>
225
226       <tertiary>on client machine</tertiary>
227     </indexterm>
228
229     <indexterm>
230       <primary>secondary authentication system (AIX)</primary>
231
232       <secondary>client machine</secondary>
233     </indexterm>
234   </sect1>
235
236   <sect1 id="HDRWQ136">
237     <title>Getting Started on AIX Systems</title>
238
239     <para>In this section you load AFS into the AIX kernel. Then incorporate AFS modifications into the machine's secondary
240     authentication system, if you wish to enable AFS login.</para>
241
242     <sect2 id="Header_120">
243       <title>Loading AFS into the AIX Kernel</title>
244
245       <para>The AIX kernel extension facility is the dynamic kernel loader provided by IBM Corporation. AIX does not support
246       incorporation of AFS modifications during a kernel build.</para>
247
248       <para>For AFS to function correctly, the kernel extension facility must run each time the machine reboots, so the AFS
249       initialization script (included in the AFS distribution) invokes it automatically. In this section you copy the script to the
250       conventional location and edit it to select the appropriate options depending on whether NFS is also to run.</para>
251
252       <para>After editing the script, you run it to incorporate AFS into the kernel. In a later section you verify that the script
253       correctly initializes the Cache Manager, then configure the AIX <emphasis role="bold">inittab</emphasis> file so that the
254       script runs automatically at reboot. <orderedlist>
255           <listitem>
256             <para>Unpack the distribution tarball. The examples below assume 
257             that you have unpacked the files into the 
258             <emphasis role="bold">/tmp/afsdist</emphasis> directory. If you 
259             pick a different location, substitute this in all of the following 
260             examples. Once you have unpacked the distribution, 
261             change directory as indicated.
262 <programlisting>
263    # <emphasis role="bold">cd /tmp/afsdist/rs_aix42/root.client/usr/vice/etc</emphasis>
264 </programlisting></para>
265           </listitem>
266           <listitem>
267             <para>Copy the AFS kernel library files to the local <emphasis role="bold">/usr/vice/etc/dkload</emphasis> directory,
268             and the AFS initialization script to the <emphasis role="bold">/etc</emphasis> directory. <programlisting>
269    # <emphasis role="bold">cp -rp  dkload  /usr/vice/etc</emphasis>
270    # <emphasis role="bold">cp -p  rc.afs  /etc/rc.afs</emphasis>
271 </programlisting></para>
272           </listitem>
273
274           <listitem>
275             <para>Edit the <emphasis role="bold">/etc/rc.afs</emphasis> script, setting the <computeroutput>NFS</computeroutput>
276             variable as indicated.</para>
277
278             <para>If the machine is not to function as an NFS/AFS Translator, set the <computeroutput>NFS</computeroutput> variable
279             as follows.</para>
280
281             <programlisting>
282    NFS=$NFS_NONE
283 </programlisting>
284
285             <para>If the machine is to function as an NFS/AFS Translator and is running AIX 4.2.1 or higher, set the
286             <computeroutput>NFS</computeroutput> variable as follows. Note that NFS must already be loaded into the kernel, which
287             happens automatically on systems running AIX 4.1.1 and later, as long as the file <emphasis
288             role="bold">/etc/exports</emphasis> exists.</para>
289
290             <programlisting>
291    NFS=$NFS_IAUTH
292 </programlisting>
293           </listitem>
294
295           <listitem>
296             <para>Invoke the <emphasis role="bold">/etc/rc.afs</emphasis> script to load AFS modifications into the kernel. You can
297             ignore any error messages about the inability to start the BOS Server or the Cache Manager or AFS client.
298             <programlisting>
299    # <emphasis role="bold">/etc/rc.afs</emphasis>
300 </programlisting></para>
301           </listitem>
302         </orderedlist></para>
303     </sect2>
304
305     <sect2 id="Header_121">
306       <title>Enabling AFS Login on AIX Systems</title>
307
308       <para>In modern AFS installations, you should be using Kerberos v5
309       for user login, and obtaining AFS tokens following this authentication
310       step.</para>
311       
312       <para>There are currently no instructions available on configuring AIX to
313       automatically obtain AFS tokens at login. Following login, users can 
314       obtain tokens by running the <emphasis role="bold">aklog</emphasis> 
315       command</para>
316
317       <para>Sites which still require <emphasis role="bold">kaserver</emphasis>
318       or external Kerberos v4 authentication should consult 
319       <link linkend="KAS012">Enabling kaserver based AFS Login on AIX Systems</link>
320       for details of how to enable AIX login.</para>
321
322       <para><orderedlist>
323           <listitem>
324             <para>Proceed to <link linkend="HDRWQ145">Loading and Creating Client Files</link>.</para>
325           </listitem>
326         </orderedlist></para>
327
328       <indexterm>
329         <primary>incorporating AFS kernel extensions</primary>
330
331         <secondary>client machine</secondary>
332
333         <tertiary>HP-UX</tertiary>
334       </indexterm>
335
336       <indexterm>
337         <primary>AFS kernel extensions</primary>
338
339         <secondary>on client machine</secondary>
340
341         <tertiary>HP-UX</tertiary>
342       </indexterm>
343
344       <indexterm>
345         <primary>client machine</primary>
346
347         <secondary>AFS kernel extensions</secondary>
348
349         <tertiary>on HP-UX</tertiary>
350       </indexterm>
351
352       <indexterm>
353         <primary>HP-UX</primary>
354
355         <secondary>AFS-modified kernel</secondary>
356
357         <tertiary>on client machine</tertiary>
358       </indexterm>
359
360       <indexterm>
361         <primary>enabling AFS login</primary>
362
363         <secondary>client machine</secondary>
364
365         <tertiary>HP-UX</tertiary>
366       </indexterm>
367
368       <indexterm>
369         <primary>AFS login</primary>
370
371         <secondary>on client machine</secondary>
372
373         <tertiary>HP-UX</tertiary>
374       </indexterm>
375
376       <indexterm>
377         <primary>client machine</primary>
378
379         <secondary>AFS login</secondary>
380
381         <tertiary>on HP-UX</tertiary>
382       </indexterm>
383
384       <indexterm>
385         <primary>HP-UX</primary>
386
387         <secondary>AFS login</secondary>
388
389         <tertiary>on client machine</tertiary>
390       </indexterm>
391
392       <indexterm>
393         <primary>PAM</primary>
394
395         <secondary>on HP-UX</secondary>
396
397         <tertiary>client machine</tertiary>
398       </indexterm>
399     </sect2>
400   </sect1>
401
402   <sect1 id="HDRWQ138">
403     <title>Getting Started on HP-UX Systems</title>
404
405     <para>In this section you build AFS into the HP-UX kernel. Then incorporate AFS modifications into the machine's Pluggable
406     Authentication Module (PAM) system, if you wish to enable AFS login.</para>
407
408     <sect2 id="Header_126">
409       <title>Building AFS into the HP-UX Kernel</title>
410
411       <para>On HP-UX systems, you must build AFS modifications into a new static kernel; HP-UX does not support dynamic loading. If
412       the machine's hardware and software configuration exactly matches another HP-UX machine on which AFS is already built into the
413       kernel, you can choose to copy the kernel from that machine to this one. In general, however, it is better to build AFS
414       modifications into the kernel on each machine according to the following instructions. <orderedlist>
415           <listitem>
416             <para>Move the existing kernel-related files to a safe location. <programlisting>
417    # <emphasis role="bold">cp /stand/vmunix /stand/vmunix.noafs</emphasis>
418    # <emphasis role="bold">cp /stand/system /stand/system.noafs</emphasis>
419 </programlisting></para>
420           </listitem>
421
422           <listitem>
423             <para>Unpack the OpenAFS HP-UX distribution tarball. The examples 
424             below assume that you have unpacked the files into the 
425             <emphasis role="bold">/tmp/afsdist</emphasis> directory. If you 
426             pick a different location, substitute this in all of the following 
427             examples. Once you have unpacked the distribution, change directory 
428             as indicated.
429             <programlisting>
430    # <emphasis role="bold">cd /tmp/afsdist/hp_ux110/root.client</emphasis>
431 </programlisting></para>
432           </listitem>
433
434           <listitem>
435             <para>Copy the AFS initialization file to the local directory for initialization files (by convention, <emphasis
436             role="bold">/sbin/init.d</emphasis> on HP-UX machines). Note the removal of the <emphasis role="bold">.rc</emphasis>
437             extension as you copy the file. <programlisting>
438    # <emphasis role="bold">cp usr/vice/etc/afs.rc  /sbin/init.d/afs</emphasis>
439 </programlisting></para>
440           </listitem>
441
442           <listitem>
443             <para>Copy the file <emphasis role="bold">afs.driver</emphasis> to the local <emphasis
444             role="bold">/usr/conf/master.d</emphasis> directory, changing its name to <emphasis role="bold">afs</emphasis> as you
445             do. <programlisting>
446    # <emphasis role="bold">cp  usr/vice/etc/afs.driver  /usr/conf/master.d/afs</emphasis>
447 </programlisting></para>
448           </listitem>
449
450           <listitem>
451             <para>Copy the AFS kernel module to the local <emphasis role="bold">/usr/conf/lib</emphasis> directory.</para>
452
453             <para>If the machine's kernel supports NFS server functionality:</para>
454
455             <programlisting>
456    # <emphasis role="bold">cp bin/libafs.a /usr/conf/lib</emphasis>   
457 </programlisting>
458
459             <para>If the machine's kernel does not support NFS server functionality, change the file's name as you copy it:</para>
460
461             <programlisting>
462    # <emphasis role="bold">cp bin/libafs.nonfs.a /usr/conf/lib/libafs.a</emphasis>
463 </programlisting>
464           </listitem>
465
466           <listitem>
467             <para>Incorporate the AFS driver into the kernel, either using the <emphasis role="bold">SAM</emphasis> program or a
468             series of individual commands. <itemizedlist>
469                 <listitem>
470                   <para>To use the <emphasis role="bold">SAM</emphasis> program: <orderedlist>
471                       <listitem>
472                         <para>Invoke the <emphasis role="bold">SAM</emphasis> program, specifying the hostname of the local machine
473                         as <replaceable>local_hostname</replaceable>. The <emphasis role="bold">SAM</emphasis> graphical user
474                         interface pops up. <programlisting>
475    # <emphasis role="bold">sam -display</emphasis> <replaceable>local_hostname</replaceable><emphasis role="bold">:0</emphasis> 
476 </programlisting></para>
477                       </listitem>
478
479                       <listitem>
480                         <para>Choose the <emphasis role="bold">Kernel Configuration</emphasis> icon, then the <emphasis
481                         role="bold">Drivers</emphasis> icon. From the list of drivers, select <emphasis
482                         role="bold">afs</emphasis>.</para>
483                       </listitem>
484
485                       <listitem>
486                         <para>Open the pull-down <emphasis role="bold">Actions</emphasis> menu and choose the <emphasis
487                         role="bold">Add Driver to Kernel</emphasis> option.</para>
488                       </listitem>
489
490                       <listitem>
491                         <para>Open the <emphasis role="bold">Actions</emphasis> menu again and choose the <emphasis
492                         role="bold">Create a New Kernel</emphasis> option.</para>
493                       </listitem>
494
495                       <listitem>
496                         <para>Confirm your choices by choosing <emphasis role="bold">Yes</emphasis> and <emphasis
497                         role="bold">OK</emphasis> when prompted by subsequent pop-up windows. The <emphasis
498                         role="bold">SAM</emphasis> program builds the kernel and reboots the system.</para>
499                       </listitem>
500
501                       <listitem>
502                         <para>Login again as the superuser <emphasis role="bold">root</emphasis>. <programlisting>
503    login: <emphasis role="bold">root</emphasis>
504    Password: <replaceable>root_password</replaceable>
505 </programlisting></para>
506                       </listitem>
507                     </orderedlist></para>
508                 </listitem>
509
510                 <listitem>
511                   <para>To use individual commands: <orderedlist>
512                       <listitem>
513                         <para>Edit the file <emphasis role="bold">/stand/system</emphasis>, adding an entry for <emphasis
514                         role="bold">afs</emphasis> to the <computeroutput>Subsystems</computeroutput> section.</para>
515                       </listitem>
516
517                       <listitem>
518                         <para>Change to the <emphasis role="bold">/stand/build</emphasis> directory and issue the <emphasis
519                         role="bold">mk_kernel</emphasis> command to build the kernel. <programlisting>
520    # <emphasis role="bold">cd /stand/build</emphasis>
521    # <emphasis role="bold">mk_kernel</emphasis>
522 </programlisting></para>
523                       </listitem>
524
525                       <listitem>
526                         <para>Move the new kernel to the standard location (<emphasis role="bold">/stand/vmunix</emphasis>), reboot
527                         the machine to start using it, and login again as the superuser <emphasis role="bold">root</emphasis>.
528                         <programlisting>
529    # <emphasis role="bold">mv /stand/build/vmunix_test /stand/vmunix</emphasis>
530    # <emphasis role="bold">cd /</emphasis>
531    # <emphasis role="bold">shutdown -r now</emphasis>             
532    login: <emphasis role="bold">root</emphasis>
533    Password: <replaceable>root_password</replaceable>
534 </programlisting></para>
535                       </listitem>
536                     </orderedlist></para>
537                 </listitem>
538               </itemizedlist></para>
539           </listitem>
540         </orderedlist></para>
541     </sect2>
542
543     <sect2 id="Header_127">
544       <title>Enabling AFS Login on HP-UX Systems</title>
545
546       <para>At this point you incorporate AFS into the operating system's Pluggable Authentication Module (PAM) scheme. PAM
547       integrates all authentication mechanisms on the machine, including login, to provide the security infrastructure for
548       authenticated access to and from the machine.</para>
549
550       <para>In modern AFS installations, you should be using Kerberos v5
551       for user login, and obtaining AFS tokens subsequent to this authentication
552       step. OpenAFS does not currently distribute a PAM module allowing AFS 
553       tokens to be automatically gained at login. Whilst there are a number of
554       third party modules providing this functionality, it is not know if these 
555       have been tested with HP/UX.</para>
556       
557       <para>Following login, users can 
558       obtain tokens by running the <emphasis role="bold">aklog</emphasis> 
559       command</para>
560
561       <para>If you are at a site which still requires 
562       <emphasis role="bold">kaserver</emphasis> or external Kerberos v4 based 
563       authentication, please consult
564       <link linkend="KAS014">Enabling kaserver based AFS Login on HP-UX systems</link>
565       for further installation instructions.
566         <orderedlist>
567           <listitem>
568             <para>Proceed to <link linkend="HDRWQ145">Loading and Creating Client Files</link>.</para>
569           </listitem>
570         </orderedlist>
571       </para>
572
573       <indexterm>
574         <primary>incorporating AFS kernel extensions</primary>
575
576         <secondary>client machine</secondary>
577
578         <tertiary>IRIX</tertiary>
579       </indexterm>
580
581       <indexterm>
582         <primary>AFS kernel extensions</primary>
583
584         <secondary>on client machine</secondary>
585
586         <tertiary>IRIX</tertiary>
587       </indexterm>
588
589       <indexterm>
590         <primary>client machine</primary>
591
592         <secondary>AFS kernel extensions</secondary>
593
594         <tertiary>on IRIX</tertiary>
595       </indexterm>
596     </sect2>
597   </sect1>
598
599   <sect1 id="HDRWQ139">
600     <title>Getting Started on IRIX Systems</title>
601
602     <para>In this section you incorporate AFS into the IRIX kernel, choosing one of two methods: <itemizedlist>
603         <listitem>
604           <para>Dynamic loading using the <emphasis role="bold">ml</emphasis> program distributed by Silicon Graphics, Incorporated
605           (SGI).</para>
606         </listitem>
607
608         <listitem>
609           <para>Building a new static kernel.</para>
610         </listitem>
611       </itemizedlist></para>
612
613     <para>Then see <link linkend="HDRWQ142">Enabling AFS Login on IRIX Systems</link> to read about integrated AFS login on IRIX
614     systems.</para>
615
616     <para>In preparation for either dynamic loading or kernel building, perform the following procedures: <orderedlist>
617         <listitem>
618           <para>Unpack the OpenAFS IRIX distribution tarball. The examples
619           below assume that you have unpacked the files into the 
620           <emphasis role="bold">/tmp/afsdist</emphasis> directory. If you
621           pick a different location, substitue this in all of the following
622           examples. Once you have unpacked the distribution, change directory
623           as indicated.
624 <programlisting>
625    # <emphasis role="bold">cd  /tmp/afsdist/sgi_65/root.client</emphasis>
626 </programlisting></para>
627         </listitem>
628         <listitem>
629           <para>Copy the AFS initialization script to the local directory for initialization files (by convention, <emphasis
630           role="bold">/etc/init.d</emphasis> on IRIX machines). Note the removal of the <emphasis role="bold">.rc</emphasis>
631           extension as you copy the script. <programlisting>
632    # <emphasis role="bold">cp -p   usr/vice/etc/afs.rc  /etc/init.d/afs</emphasis>
633 </programlisting></para>
634         </listitem>
635
636         <listitem>
637           <para>Issue the <emphasis role="bold">uname -m</emphasis> command to determine the machine's CPU board type. The <emphasis
638           role="bold">IP</emphasis><replaceable>xx</replaceable> value in the output must match one of the supported CPU board types
639           listed in the <emphasis>OpenAFS Release Notes</emphasis> for the current version of AFS. <programlisting>
640    # <emphasis role="bold">uname -m</emphasis>
641 </programlisting></para>
642         </listitem>
643
644         <listitem>
645           <para>Proceed to either <link linkend="HDRWQ140">Loading AFS into the IRIX Kernel</link> or <link
646           linkend="HDRWQ141">Building AFS into the IRIX Kernel</link>.</para>
647         </listitem>
648       </orderedlist></para>
649
650     <indexterm>
651       <primary>IRIX</primary>
652
653       <secondary>AFS kernel extensions</secondary>
654
655       <tertiary>on client machine</tertiary>
656     </indexterm>
657
658     <indexterm>
659       <primary>afsml variable (IRIX)</primary>
660
661       <secondary>client machine</secondary>
662     </indexterm>
663
664     <indexterm>
665       <primary>variables</primary>
666
667       <secondary>afsml (IRIX)</secondary>
668
669       <tertiary>client machine</tertiary>
670     </indexterm>
671
672     <indexterm>
673       <primary>IRIX</primary>
674
675       <secondary>afsml variable</secondary>
676
677       <tertiary>client machine</tertiary>
678     </indexterm>
679
680     <indexterm>
681       <primary>afsxnfs variable (IRIX)</primary>
682
683       <secondary>client machine</secondary>
684     </indexterm>
685
686     <indexterm>
687       <primary>variables</primary>
688
689       <secondary>afsxnfs (IRIX)</secondary>
690
691       <tertiary>client machine</tertiary>
692     </indexterm>
693
694     <indexterm>
695       <primary>IRIX</primary>
696
697       <secondary>afsxnfs variable</secondary>
698
699       <tertiary>client machine</tertiary>
700     </indexterm>
701
702     <sect2 id="HDRWQ140">
703       <title>Loading AFS into the IRIX Kernel</title>
704
705       <para>The <emphasis role="bold">ml</emphasis> program is the dynamic kernel loader provided by SGI for IRIX systems. If you
706       use it rather than building AFS modifications into a static kernel, then for AFS to function correctly the <emphasis
707       role="bold">ml</emphasis> program must run each time the machine reboots. Therefore, the AFS initialization script (included
708       in the OpenAFS Binary Distribution) invokes it automatically when the <emphasis role="bold">afsml</emphasis> configuration variable is
709       activated. In this section you activate the variable and run the script.</para>
710
711       <para>In a later section you verify that the script correctly initializes the Cache Manager, then create the links that
712       incorporate AFS into the IRIX startup and shutdown sequence. <orderedlist>
713           <listitem>
714             <para>Create the local <emphasis role="bold">/usr/vice/etc/sgiload</emphasis> directory to house the AFS kernel library
715             file. <programlisting>
716    # <emphasis role="bold">mkdir /usr/vice/etc/sgiload</emphasis>
717 </programlisting></para>
718           </listitem>
719
720           <listitem>
721             <para>Copy the appropriate AFS kernel library file to the <emphasis role="bold">/usr/vice/etc/sgiload</emphasis>
722             directory. The <emphasis role="bold">IP</emphasis><replaceable>xx</replaceable> portion of the library file name must
723             match the value previously returned by the <emphasis role="bold">uname -m</emphasis> command. Also choose the file
724             appropriate to whether the machine's kernel supports NFS server functionality (NFS must be supported for the machine to
725             act as an NFS/AFS Translator). Single- and multiprocessor machines use the same library file.</para>
726
727             <para>(You can choose to copy all of the kernel library files into the <emphasis
728             role="bold">/usr/vice/etc/sgiload</emphasis> directory, but they require a significant amount of space.)</para>
729
730             <para>If the machine's kernel supports NFS server functionality:</para>
731
732             <programlisting>
733    # <emphasis role="bold">cp -p  usr/vice/etc/sgiload/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.o  /usr/vice/etc/sgiload</emphasis>   
734 </programlisting>
735
736             <para>If the machine's kernel does not support NFS server functionality:</para>
737
738             <programlisting>
739    # <emphasis role="bold">cp -p  usr/vice/etc/sgiload/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.nonfs.o</emphasis>   \
740                    <emphasis role="bold">/usr/vice/etc/sgiload</emphasis>
741 </programlisting>
742           </listitem>
743
744           <listitem>
745             <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to activate the <emphasis
746             role="bold">afsml</emphasis> configuration variable. <programlisting>
747    # <emphasis role="bold">/etc/chkconfig -f afsml on</emphasis>   
748 </programlisting></para>
749
750             <para>If the machine is to function as an NFS/AFS Translator and the kernel supports NFS server functionality, activate
751             the <emphasis role="bold">afsxnfs</emphasis> variable.</para>
752
753             <programlisting>
754    # <emphasis role="bold">/etc/chkconfig -f afsxnfs on</emphasis>
755 </programlisting>
756           </listitem>
757
758           <listitem>
759             <para>Run the <emphasis role="bold">/etc/init.d/afs</emphasis> script to load AFS extensions into the kernel. The script
760             invokes the <emphasis role="bold">ml</emphasis> command, automatically determining which kernel library file to use
761             based on this machine's CPU type and the activation state of the <emphasis role="bold">afsxnfs</emphasis>
762             variable.</para>
763
764             <para>You can ignore any error messages about the inability to start the BOS Server or the Cache Manager or AFS
765             client.</para>
766
767             <programlisting>
768    # <emphasis role="bold">/etc/init.d/afs start</emphasis>
769 </programlisting>
770           </listitem>
771
772           <listitem>
773             <para>Proceed to <link linkend="HDRWQ142">Enabling AFS Login on IRIX Systems</link>.</para>
774           </listitem>
775         </orderedlist></para>
776
777       <indexterm>
778         <primary>IRIX</primary>
779
780         <secondary>AFS-modified kernel</secondary>
781
782         <tertiary>on client machine</tertiary>
783       </indexterm>
784     </sect2>
785
786     <sect2 id="HDRWQ141">
787       <title>Building AFS into the IRIX Kernel</title>
788
789       <para>If you prefer to build a kernel, and the machine's hardware and software configuration exactly matches another IRIX
790       machine on which AFS is already built into the kernel, you can choose to copy the kernel from that machine to this one. In
791       general, however, it is better to build AFS modifications into the kernel on each machine according to the following
792       instructions. <orderedlist>
793           <listitem>
794             <para>Copy the kernel initialization file <emphasis role="bold">afs.sm</emphasis> to the local <emphasis
795             role="bold">/var/sysgen/system</emphasis> directory, and the kernel master file <emphasis role="bold">afs</emphasis> to
796             the local <emphasis role="bold">/var/sysgen/master.d</emphasis> directory. <programlisting>
797    # <emphasis role="bold">cp -p  bin/afs.sm  /var/sysgen/system</emphasis>
798    # <emphasis role="bold">cp -p  bin/afs  /var/sysgen/master.d</emphasis>
799 </programlisting></para>
800           </listitem>
801
802           <listitem>
803             <para>Copy the appropriate AFS kernel library file to the local file <emphasis
804             role="bold">/var/sysgen/boot/afs.a</emphasis>; the <emphasis role="bold">IP</emphasis><replaceable>xx</replaceable>
805             portion of the library file name must match the value previously returned by the <emphasis role="bold">uname
806             -m</emphasis> command. Also choose the file appropriate to whether the machine's kernel supports NFS server
807             functionality (NFS must be supported for the machine to act as an NFS/AFS Translator). Single- and multiprocessor
808             machines use the same library file.</para>
809
810             <para>If the machine's kernel supports NFS server functionality:</para>
811
812             <programlisting>
813    # <emphasis role="bold">cp -p   bin/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.a   /var/sysgen/boot/afs.a</emphasis>   
814 </programlisting>
815
816             <para>If the machine's kernel does not support NFS server functionality:</para>
817
818             <programlisting>
819    # <emphasis role="bold">cp -p  bin/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.nonfs.a  /var/sysgen/boot/afs.a</emphasis>
820 </programlisting>
821           </listitem>
822
823           <listitem>
824             <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to deactivate the <emphasis
825             role="bold">afsml</emphasis> configuration variable. <programlisting>
826    # <emphasis role="bold">/etc/chkconfig -f afsml off</emphasis>   
827 </programlisting></para>
828
829             <para>If the machine is to function as an NFS/AFS Translator and the kernel supports NFS server functionality, activate
830             the <emphasis role="bold">afsxnfs</emphasis> variable.</para>
831
832             <programlisting>
833    # <emphasis role="bold">/etc/chkconfig -f afsxnfs on</emphasis>
834 </programlisting>
835           </listitem>
836
837           <listitem>
838             <para>Copy the existing kernel file, <emphasis role="bold">/unix</emphasis>, to a safe location. Compile the new kernel,
839             which is created in the file <emphasis role="bold">/unix.install</emphasis>. It overwrites the existing <emphasis
840             role="bold">/unix</emphasis> file when the machine reboots in the next step. <programlisting>
841    # <emphasis role="bold">cp /unix /unix_noafs</emphasis>
842    # <emphasis role="bold">autoconfig</emphasis>
843 </programlisting></para>
844           </listitem>
845
846           <listitem>
847             <para>Reboot the machine to start using the new kernel, and login again as the superuser <emphasis
848             role="bold">root</emphasis>. <programlisting>
849    # <emphasis role="bold">cd /</emphasis>
850    # <emphasis role="bold">shutdown -i6 -g0 -y</emphasis>
851    login: <emphasis role="bold">root</emphasis>
852    Password: <replaceable>root_password</replaceable>
853 </programlisting></para>
854           </listitem>
855
856           <listitem>
857             <para>Proceed to <link linkend="HDRWQ142">Enabling AFS Login on IRIX Systems</link>.</para>
858           </listitem>
859         </orderedlist></para>
860
861       <indexterm>
862         <primary>enabling AFS login</primary>
863
864         <secondary>client machine</secondary>
865
866         <tertiary>IRIX</tertiary>
867       </indexterm>
868
869       <indexterm>
870         <primary>AFS login</primary>
871
872         <secondary>on client machine</secondary>
873
874         <tertiary>IRIX</tertiary>
875       </indexterm>
876
877       <indexterm>
878         <primary>client machine</primary>
879
880         <secondary>AFS login</secondary>
881
882         <tertiary>on IRIX</tertiary>
883       </indexterm>
884     </sect2>
885
886     <sect2 id="HDRWQ142">
887       <title>Enabling AFS Login on IRIX Systems</title>
888
889       <para>Whilst the standard IRIX command-line 
890       <emphasis role="bold">login</emphasis> program and the 
891       graphical <emphasis role="bold">xdm</emphasis> login program both have
892       the ability to grant AFS tokens, this ability relies upon the deprecated
893       kaserver authentication system. As this system is not recommended for
894       new installations, this is not documented here.</para>
895         
896       <para>Users who have been successfully authenticated via Kerberos 5
897       authentication may obtain AFS tokens following login by running the
898       <emphasis role="bold">aklog</emphasis> command.</para>
899
900       <para>If you are at a site which still requires 
901       <emphasis role="bold">kaserver</emphasis> or external Kerberos v4 based 
902       authentication, please consult 
903       <link linkend="KAS014">Enabling kaserver based AFS Login on Linux Systems</link>
904       for further installation instructions.</para>
905       
906       <para>Proceed to <link linkend="HDRWQ145">Loading and Creating Client Files</link>.
907       <indexterm>
908           <primary>incorporating AFS kernel extensions</primary>
909
910           <secondary>client machine</secondary>
911
912           <tertiary>Linux</tertiary>
913         </indexterm> <indexterm>
914           <primary>AFS kernel extensions</primary>
915
916           <secondary>on client machine</secondary>
917
918           <tertiary>Linux</tertiary>
919         </indexterm> <indexterm>
920           <primary>client machine</primary>
921
922           <secondary>AFS kernel extensions</secondary>
923
924           <tertiary>on Linux</tertiary>
925         </indexterm> <indexterm>
926           <primary>Linux</primary>
927
928           <secondary>AFS kernel extensions</secondary>
929
930           <tertiary>on client machine</tertiary>
931         </indexterm> <indexterm>
932           <primary>enabling AFS login</primary>
933
934           <secondary>client machine</secondary>
935
936           <tertiary>Linux</tertiary>
937         </indexterm> <indexterm>
938           <primary>AFS login</primary>
939
940           <secondary>on client machine</secondary>
941
942           <tertiary>Linux</tertiary>
943         </indexterm> <indexterm>
944           <primary>client machine</primary>
945
946           <secondary>AFS login</secondary>
947
948           <tertiary>on Linux</tertiary>
949         </indexterm> <indexterm>
950           <primary>Linux</primary>
951
952           <secondary>AFS login</secondary>
953
954           <tertiary>on client machine</tertiary>
955         </indexterm> <indexterm>
956           <primary>PAM</primary>
957
958           <secondary>on Linux</secondary>
959
960           <tertiary>client machine</tertiary>
961         </indexterm></para>
962     </sect2>
963   </sect1>
964
965   <sect1 id="HDRWQ143">
966     <title>Getting Started on Linux Systems</title>
967
968     <para>In this section you load AFS into the Linux kernel. Then incorporate AFS modifications into the machine's Pluggable
969     Authentication Module (PAM) system, if you wish to enable AFS login.</para>
970
971     <sect2 id="Header_133">
972       <title>Loading AFS into the Linux Kernel</title>
973
974       <para>The <emphasis role="bold">modprobe</emphasis> program is the dynamic kernel loader for Linux. Linux does not support
975       incorporation of AFS modifications during a kernel build.</para>
976
977       <para>For AFS to function correctly, the <emphasis role="bold">modprobe</emphasis> program must run each time the machine
978       reboots, so your distributions's AFS initialization script invokes it automatically. The script also includes
979       commands that select the appropriate AFS library file automatically. In this section you run the script.</para>
980
981       <para>In a later section you also verify that the script correctly initializes the Cache Manager, then activate a
982       configuration variable, which results in the script being incorporated into the Linux startup and shutdown sequence.</para>
983       
984       <para>The procedure for starting up OpenAFS depends upon your distribution</para>
985       <sect3>
986         <title>Fedora and RedHat Enterprise Linux</title>
987         <para>OpenAFS ships RPMS for all current Fedora and RHEL releases.
988         <orderedlist>
989           <listitem>
990             <para>Download and install the RPM set for your operating system.
991             RPMs are available from the OpenAFS web site. You will need the
992             <emphasis role="bold">openafs</emphasis>, <emphasis role="bold">openafs-server</emphasis>, 
993             <emphasis role="bold">openafs-client</emphasis> and
994             <emphasis role="bold">openafs-krb5</emphasis> packages, along
995             with an <emphasis role="bold">kmod-openafs</emphasis> package
996             matching your current, running ,kernel.</para>
997
998             <para>You can find the version of your current kernel by running
999 <programlisting>
1000   # uname -r
1001 <replaceable>2.6.20-1.2933.fc6</replaceable>
1002 </programlisting></para>
1003
1004             <para>Once downloaded, the packages may be installed with the
1005             <emphasis role="bold">rpm</emphasis> command
1006 <programlisting>
1007   # rpm -U openafs-* openafs-client-* openafs-server-* openafs-krb5-* kmod-openafs-*
1008 </programlisting></para>
1009           </listitem>
1010         </orderedlist>
1011       </para>
1012       </sect3>
1013       <sect3>
1014         <title>Systems packaged as tar files</title>
1015         <para>If you are running a system where the OpenAFS Binary Distribution
1016         is provided as a tar file, or where you have built the system from
1017         source yourself, you need to install the relevant components by hand
1018         </para>
1019         <orderedlist>
1020           <listitem>
1021             <para>Unpack the distribution tarball. The examples below assume
1022             that you have unpacked the files into the
1023             <emphasis role="bold">/tmp/afsdist</emphasis>directory. If you
1024             pick a different location, substitute this in all of the following
1025             examples. Once you have unpacked the distribution,
1026             change directory as indicated.
1027 <programlisting>
1028   # <emphasis role="bold">cd /tmp/afsdist/linux/root.client/usr/vice/etc</emphasis>
1029 </programlisting></para>
1030           </listitem>
1031
1032           <listitem>
1033             <para>Copy the AFS kernel library files to the local <emphasis role="bold">/usr/vice/etc/modload</emphasis> directory.
1034             The filenames for the libraries have the format <emphasis
1035             role="bold">libafs-</emphasis><replaceable>version</replaceable><emphasis role="bold">.o</emphasis>, where
1036             <replaceable>version</replaceable> indicates the kernel build level. The string <emphasis role="bold">.mp</emphasis> in
1037             the <replaceable>version</replaceable> indicates that the file is appropriate for machines running a multiprocessor
1038             kernel. <programlisting>
1039    # <emphasis role="bold">cp -rp  modload  /usr/vice/etc</emphasis>
1040 </programlisting></para>
1041           </listitem>
1042
1043           <listitem>
1044             <para>Copy the AFS initialization script to the local directory for initialization files (by convention, <emphasis
1045             role="bold">/etc/rc.d/init.d</emphasis> on Linux machines). Note the removal of the <emphasis role="bold">.rc</emphasis>
1046             extension as you copy the script. <programlisting>
1047    # <emphasis role="bold">cp -p   afs.rc  /etc/rc.d/init.d/afs</emphasis> 
1048 </programlisting></para>
1049           </listitem>
1050
1051 <!--
1052           <listitem>
1053             <para>Run the AFS initialization script to load AFS extensions into the kernel. You can ignore any error messages about
1054             the inability to start the BOS Server or the Cache Manager or AFS client. <programlisting>
1055    # <emphasis role="bold">/etc/rc.d/init.d/afs  start</emphasis>
1056 </programlisting></para>
1057           </listitem>
1058 -->
1059         </orderedlist>
1060       </sect3>
1061     </sect2>
1062
1063     <sect2 id="Header_134">
1064       <title>Enabling AFS Login on Linux Systems</title>
1065
1066       <para>At this point you incorporate AFS into the operating system's Pluggable Authentication Module (PAM) scheme. PAM
1067       integrates all authentication mechanisms on the machine, including login, to provide the security infrastructure for
1068       authenticated access to and from the machine.</para>
1069
1070       <para>At this time, we recommend that new sites requiring AFS credentials
1071       to be gained as part of PAM authentication use Russ Alberry's 
1072       pam_afs_session, rather than utilising the bundled pam_afs2 module. 
1073       A typical PAM stack should authenticate the user using an external 
1074       Kerberos V service, and then use the AFS PAM module to obtain AFS 
1075       credentials in the <computeroutput>session</computeroutput> section</para>
1076
1077       <para>If you are at a site which still requires 
1078       <emphasis role="bold">kaserver</emphasis> or external Kerberos v4 based 
1079       authentication, please consult 
1080       <link linkend="KAS015">Enabling kaserver based AFS Login on Linux Systems</link>
1081       for further installation instructions.</para>
1082       
1083       <para>Proceed to 
1084       <link linkend="HDRWQ145">Loading and Creating Client Files</link>.</para>
1085
1086       <indexterm>
1087         <primary>incorporating AFS kernel extensions</primary>
1088
1089         <secondary>client machine</secondary>
1090
1091         <tertiary>Solaris</tertiary>
1092       </indexterm>
1093
1094       <indexterm>
1095         <primary>AFS kernel extensions</primary>
1096
1097         <secondary>on client machine</secondary>
1098
1099         <tertiary>Solaris</tertiary>
1100       </indexterm>
1101
1102       <indexterm>
1103         <primary>client machine</primary>
1104
1105         <secondary>AFS kernel extensions</secondary>
1106
1107         <tertiary>on Solaris</tertiary>
1108       </indexterm>
1109
1110       <indexterm>
1111         <primary>Solaris</primary>
1112
1113         <secondary>AFS kernel extensions</secondary>
1114
1115         <tertiary>on client machine</tertiary>
1116       </indexterm>
1117
1118       <indexterm>
1119         <primary>enabling AFS login</primary>
1120
1121         <secondary>client machine</secondary>
1122
1123         <tertiary>Solaris</tertiary>
1124       </indexterm>
1125
1126       <indexterm>
1127         <primary>AFS login</primary>
1128
1129         <secondary>on client machine</secondary>
1130
1131         <tertiary>Solaris</tertiary>
1132       </indexterm>
1133
1134       <indexterm>
1135         <primary>client machine</primary>
1136
1137         <secondary>AFS login</secondary>
1138
1139         <tertiary>on Solaris</tertiary>
1140       </indexterm>
1141
1142       <indexterm>
1143         <primary>Solaris</primary>
1144
1145         <secondary>AFS login</secondary>
1146
1147         <tertiary>on client machine</tertiary>
1148       </indexterm>
1149
1150       <indexterm>
1151         <primary>PAM</primary>
1152
1153         <secondary>on Solaris</secondary>
1154
1155         <tertiary>client machine</tertiary>
1156       </indexterm>
1157
1158       <indexterm>
1159         <primary>Solaris</primary>
1160
1161         <secondary>file systems clean-up script</secondary>
1162
1163         <tertiary>on client machine</tertiary>
1164       </indexterm>
1165
1166       <indexterm>
1167         <primary>file systems clean-up script (Solaris)</primary>
1168
1169         <secondary>client machine</secondary>
1170       </indexterm>
1171
1172       <indexterm>
1173         <primary>scripts</primary>
1174
1175         <secondary>file systems clean-up (Solaris)</secondary>
1176
1177         <tertiary>client machine</tertiary>
1178       </indexterm>
1179     </sect2>
1180   </sect1>
1181
1182   <sect1 id="HDRWQ144">
1183     <title>Getting Started on Solaris Systems</title>
1184
1185     <para>In this section you load AFS into the Solaris kernel. Then incorporate AFS modifications into the machine's Pluggable
1186     Authentication Module (PAM) system, if you wish to enable AFS login.</para>
1187
1188     <sect2 id="Header_136">
1189       <title>Loading AFS into the Solaris Kernel</title>
1190
1191       <para>The <emphasis role="bold">modload</emphasis> program is the dynamic kernel loader provided by Sun Microsystems for
1192       Solaris systems. Solaris does not support incorporation of AFS modifications during a kernel build.</para>
1193
1194       <para>For AFS to function correctly, the <emphasis role="bold">modload</emphasis> program must run each time the machine
1195       reboots, so the AFS initialization script (included on the AFS CD-ROM) invokes it automatically. In this section you copy the
1196       appropriate AFS library file to the location where the <emphasis role="bold">modload</emphasis> program accesses it and then
1197       run the script.</para>
1198
1199       <para>In a later section you verify that the script correctly initializes the Cache Manager, then create the links that
1200       incorporate AFS into the Solaris startup and shutdown sequence. <orderedlist>
1201           <listitem>
1202             <para>Unpack the OpenAFS Solaris distribution tarball. The examples
1203             below assume that you have unpacked the files into the 
1204             <emphasis role="bold">/tmp/afsdist</emphasis> directory. If you 
1205             pick a diferent location, substitute this in all of the following
1206             exmaples. Once you have unpacked the distribution, change directory
1207             as indicated. 
1208 <programlisting>
1209    # <emphasis role="bold">cd  /tmp/afsdist/sun4x_56/root.client/usr/vice/etc</emphasis>
1210 </programlisting></para>
1211           </listitem>          
1212
1213           <listitem>
1214             <para>Copy the AFS initialization script to the local directory for initialization files (by convention, <emphasis
1215             role="bold">/etc/init.d</emphasis> on Solaris machines). Note the removal of the <emphasis role="bold">.rc</emphasis>
1216             extension as you copy the script. <programlisting>
1217    # <emphasis role="bold">cp -p  afs.rc  /etc/init.d/afs</emphasis>
1218 </programlisting></para>
1219           </listitem>
1220
1221           <listitem>
1222             <para>Copy the appropriate AFS kernel library file to the local file <emphasis
1223             role="bold">/kernel/fs/afs</emphasis>.</para>
1224
1225             <para>If the machine is running Solaris 2.6 or the 32-bit version of Solaris 7, its kernel supports NFS server
1226             functionality, and the <emphasis role="bold">nfsd</emphasis> process is running:</para>
1227
1228             <programlisting>
1229    # <emphasis role="bold">cp -p modload/libafs.o /kernel/fs/afs</emphasis>   
1230 </programlisting>
1231
1232             <para>If the machine is running Solaris 2.6 or the 32-bit version of Solaris 7, and its kernel does not support NFS
1233             server functionality or the <emphasis role="bold">nfsd</emphasis> process is not running:</para>
1234
1235             <programlisting>
1236    # <emphasis role="bold">cp -p modload/libafs.nonfs.o /kernel/fs/afs</emphasis>   
1237 </programlisting>
1238
1239             <para>If the machine is running the 64-bit version of Solaris 7, its kernel supports NFS server functionality, and the
1240             <emphasis role="bold">nfsd</emphasis> process is running:</para>
1241
1242             <programlisting>
1243    # <emphasis role="bold">cp -p modload/libafs64.o /kernel/fs/sparcv9/afs</emphasis>   
1244 </programlisting>
1245
1246             <para>If the machine is running the 64-bit version of Solaris 7, and its kernel does not support NFS server
1247             functionality or the <emphasis role="bold">nfsd</emphasis> process is not running:</para>
1248
1249             <programlisting>
1250    # <emphasis role="bold">cp -p modload/libafs64.nonfs.o /kernel/fs/sparcv9/afs</emphasis>
1251 </programlisting>
1252           </listitem>
1253
1254           <listitem>
1255             <para>Run the AFS initialization script to load AFS modifications into the kernel. You can ignore any error messages
1256             about the inability to start the BOS Server or the Cache Manager or AFS client. <programlisting>
1257    # <emphasis role="bold">/etc/init.d/afs start</emphasis>   
1258 </programlisting></para>
1259
1260             <para>When an entry called <computeroutput>afs</computeroutput> does not already exist in the local <emphasis
1261             role="bold">/etc/name_to_sysnum</emphasis> file, the script automatically creates it and reboots the machine to start
1262             using the new version of the file. If this happens, log in again as the superuser <emphasis role="bold">root</emphasis>
1263             after the reboot and run the initialization script again. This time the required entry exists in the <emphasis
1264             role="bold">/etc/name_to_sysnum</emphasis> file, and the <emphasis role="bold">modload</emphasis> program runs.</para>
1265
1266             <programlisting>
1267    login: <emphasis role="bold">root</emphasis>
1268    Password: <replaceable>root_password</replaceable>
1269    # <emphasis role="bold">/etc/init.d/afs start</emphasis>
1270 </programlisting>
1271           </listitem>
1272         </orderedlist></para>
1273     </sect2>
1274
1275     <sect2 id="Header_137">
1276       <title>Enabling AFS Login on Solaris Systems</title>
1277
1278       <para>At this point you incorporate AFS into the operating system's Pluggable Authentication Module (PAM) scheme. PAM
1279       integrates all authentication mechanisms on the machine, including login, to provide the security infrastructure for
1280       authenticated access to and from the machine.</para>
1281
1282       <para>In modern AFS installations, you should be using Kerberos v5
1283       for user login, and obtaining AFS tokens subsequent to this authentication
1284       step. OpenAFS does not currently distribute a PAM module allowing AFS 
1285       tokens to be automatically gained at login. Some of these, such as
1286       pam-krb5 and pam-afs-session from http://www.eyrie.org/~eagle/software/
1287       or pam_afs2 from ftp://achilles.ctd.anl.gov/pub/DEE/pam_afs2-0.1.tar,
1288       have been tested with Solaris.</para>
1289
1290       <para>If you are at a site which still requires 
1291       <emphasis role="bold">kaserver</emphasis> or external Kerberos v4 based 
1292       authentication, please consult 
1293       <link linkend="KAS016">Enabling kaserver based AFS Login on Solaris Systems</link>
1294       for further installation instructions.</para>
1295     </sect2>
1296     <sect2 id="Header_137a">
1297       <title>Editing the File Systems Clean-up Script on Solaris Systems</title>
1298       <para>
1299         <orderedlist>
1300           <listitem>
1301             <para>Some Solaris distributions include a script that locates 
1302             and removes unneeded files from various file systems. Its
1303             conventional location is 
1304             <emphasis role="bold">/usr/lib/fs/nfs/nfsfind</emphasis>. The 
1305             script generally uses an argument to the 
1306             <emphasis role="bold">find</emphasis> command to define which file 
1307             systems to search. In this step you modify the
1308             command to exclude the <emphasis role="bold">/afs</emphasis> 
1309             directory. Otherwise, the command traverses the AFS
1310             filespace of every cell that is accessible from the machine, which can take many hours. The following alterations are
1311             possibilities, but you must verify that they are appropriate for your cell.</para>
1312
1313             <para>The first possible alteration is to add the <emphasis role="bold">-local</emphasis> flag to the existing command,
1314             so that it looks like the following:</para>
1315
1316             <programlisting>
1317    find $dir -local -name .nfs\* -mtime +7 -mount -exec rm -f {} \;   
1318 </programlisting>
1319
1320             <para>Another alternative is to exclude any directories whose names begin with the lowercase letter <emphasis
1321             role="bold">a</emphasis> or a non-alphabetic character.</para>
1322
1323             <programlisting>
1324    find /[A-Zb-z]*  <replaceable>remainder of existing command</replaceable>   
1325 </programlisting>
1326
1327             <para>Do not use the following command, which still searches under the <emphasis role="bold">/afs</emphasis> directory,
1328             looking for a subdirectory of type <emphasis role="bold">4.2</emphasis>.</para>
1329
1330             <programlisting>
1331    find / -fstype 4.2     /* <replaceable>do not use</replaceable> */
1332 </programlisting>
1333           </listitem>
1334
1335           <listitem>
1336             <para>Proceed to <link linkend="HDRWQ145">Loading and Creating Client Files</link>.</para>
1337           </listitem>
1338         </orderedlist></para>
1339
1340       <indexterm>
1341         <primary>Binary Distribution</primary>
1342
1343         <secondary>copying client files from</secondary>
1344
1345         <tertiary>client machine</tertiary>
1346       </indexterm>
1347
1348       <indexterm>
1349         <primary>client machine</primary>
1350
1351         <secondary>copying client files to local disk</secondary>
1352       </indexterm>
1353
1354       <indexterm>
1355         <primary>copying</primary>
1356
1357         <secondary>client files to local disk</secondary>
1358
1359         <tertiary>client machine</tertiary>
1360       </indexterm>
1361
1362       <indexterm>
1363         <primary>cell name</primary>
1364
1365         <secondary>setting in client ThisCell file</secondary>
1366
1367         <tertiary>client machine</tertiary>
1368       </indexterm>
1369
1370       <indexterm>
1371         <primary>setting</primary>
1372
1373         <secondary>cell name in client ThisCell file</secondary>
1374
1375         <tertiary>client machine</tertiary>
1376       </indexterm>
1377
1378       <indexterm>
1379         <primary>client machine</primary>
1380
1381         <secondary>cell membership</secondary>
1382       </indexterm>
1383
1384       <indexterm>
1385         <primary>client machine</primary>
1386
1387         <secondary>ThisCell file</secondary>
1388       </indexterm>
1389
1390       <indexterm>
1391         <primary>ThisCell file (client)</primary>
1392
1393         <secondary>client machine</secondary>
1394       </indexterm>
1395
1396       <indexterm>
1397         <primary>CellServDB file (client)</primary>
1398
1399         <secondary>creating</secondary>
1400
1401         <tertiary>on client machine</tertiary>
1402       </indexterm>
1403
1404       <indexterm>
1405         <primary>database server machine</primary>
1406
1407         <secondary>entry in client CellServDB file</secondary>
1408
1409         <tertiary>on client machine</tertiary>
1410       </indexterm>
1411
1412       <indexterm>
1413         <primary>creating</primary>
1414
1415         <secondary>CellServDB file (client)</secondary>
1416
1417         <tertiary>client machine</tertiary>
1418       </indexterm>
1419
1420       <indexterm>
1421         <primary>client machine</primary>
1422
1423         <secondary>CellServDB file</secondary>
1424
1425         <tertiary>creating during initial installation</tertiary>
1426       </indexterm>
1427     </sect2>
1428   </sect1>
1429
1430   <sect1 id="HDRWQ145">
1431     <title>Loading and Creating Client Files</title>
1432
1433     <para>If you are using a non-packaged distribution (that is, one provided as
1434     a tarball) you should now copy files from the istribution to the 
1435     <emphasis role="bold">/usr/vice/etc</emphasis> directory. On some platforms 
1436     that use a dynamic loader program to incorporate AFS modifications into the 
1437     kernel, you have already copied over some the files.
1438     Copying them again does no harm.</para>
1439
1440     <para>Every AFS client machine has a copy of the <emphasis role="bold">/usr/vice/etc/ThisCell</emphasis> file on its local disk
1441     to define the machine's cell membership for the AFS client programs that run on it. Among other functions, this file determines
1442     the following: <itemizedlist>
1443         <listitem>
1444           <para>The cell in which users authenticate when they log onto the machine, assuming it is using an AFS-modified login
1445           utility</para>
1446         </listitem>
1447
1448         <listitem>
1449           <para>The cell in which users authenticate by default when they issue the <emphasis role="bold">aklog</emphasis>
1450           command</para>
1451         </listitem>
1452
1453         <listitem>
1454           <para>The cell membership of the AFS server processes that the AFS command interpreters on this machine contact by
1455           default</para>
1456         </listitem>
1457       </itemizedlist></para>
1458
1459     <para>Similarly, the <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file on a client machine's local disk lists the
1460     database server machines in each cell that the local Cache Manager can contact. If there is no entry in the file for a cell, or
1461     the list of database server machines is wrong, then users working on this machine cannot access the cell. The chapter in the
1462     <emphasis>OpenAFS Administration Guide</emphasis> about administering client machines explains how to maintain the file after
1463     creating it. A version of the client <emphasis role="bold">CellServDB</emphasis> file was created during the installation of
1464     your cell's first machine (in <link linkend="HDRWQ66">Creating the Client CellServDB File</link>). It is probably also
1465     appropriate for use on this machine.</para>
1466
1467     <para>Remember that the Cache Manager consults the <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file only at
1468     reboot, when it copies the information into the kernel. For the Cache Manager to perform properly, the <emphasis
1469     role="bold">CellServDB</emphasis> file must be accurate at all times. Refer to the chapter in the <emphasis>OpenAFS
1470     Administration Guide</emphasis> about administering client machines for instructions on updating this file, with or without
1471     rebooting. <orderedlist>
1472         <listitem>
1473           <para>If you have not already done so, unpack the distribution 
1474           tarball for this machine's system type into a suitable location on 
1475           the filesystem, such as <emphasis role="bold">/tmp/afsdist</emphasis>.
1476           If you use a different location, substitue that in the examples that 
1477           follow.</para>
1478         </listitem>
1479
1480         <listitem>
1481           <para>Copy files to the local <emphasis role="bold">/usr/vice/etc</emphasis> directory.</para>
1482
1483           <para>This step places a copy of the AFS initialization script (and related files, if applicable) into the <emphasis
1484           role="bold">/usr/vice/etc</emphasis> directory. In the preceding instructions for incorporating AFS into the kernel, you
1485           copied the script directly to the operating system's conventional location for initialization files. When you incorporate
1486           AFS into the machine's startup sequence in a later step, you can choose to link the two files.</para>
1487
1488           <para>On some system types that use a dynamic kernel loader program, you previously copied AFS library files into a
1489           subdirectory of the <emphasis role="bold">/usr/vice/etc</emphasis> directory. On other system types, you copied the
1490           appropriate AFS library file directly to the directory where the operating system accesses it. The following commands do
1491           not copy or recopy the AFS library files into the <emphasis role="bold">/usr/vice/etc</emphasis> directory, because on
1492           some system types the library files consume a large amount of space. If you want to copy them, add the <emphasis
1493           role="bold">-r</emphasis> flag to the first <emphasis role="bold">cp</emphasis> command and skip the second <emphasis
1494           role="bold">cp</emphasis> command.</para>
1495
1496           <programlisting>
1497    # <emphasis role="bold">cd /cdrom/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/root.client/usr/vice/etc</emphasis>
1498    # <emphasis role="bold">cp -p  *  /usr/vice/etc</emphasis>
1499    # <emphasis role="bold">cp -rp  C  /usr/vice/etc</emphasis>
1500 </programlisting>
1501         </listitem>
1502
1503         <listitem>
1504           <para>Create the <emphasis role="bold">/usr/vice/etc/ThisCell</emphasis> file. <programlisting>
1505    # <emphasis role="bold">echo "</emphasis><replaceable>cellname</replaceable><emphasis role="bold">" &gt; /usr/vice/etc/ThisCell</emphasis>
1506 </programlisting></para>
1507         </listitem>
1508
1509         <listitem>
1510           <para>Create the 
1511           <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file. Use a 
1512           network file transfer program such as 
1513           <emphasis role="bold">sftp</emphasis> or 
1514           <emphasis role="bold">scp</emphasis> to copy it from one of the 
1515           following sources, which are listed in decreasing order of 
1516           preference: <itemizedlist>
1517               <listitem>
1518                 <para>Your cell's central <emphasis role="bold">CellServDB</emphasis> source file (the conventional location is
1519                 <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
1520                 role="bold">/common/etc/CellServDB</emphasis>)</para>
1521               </listitem>
1522
1523               <listitem>
1524                 <para>The global <emphasis role="bold">CellServDB</emphasis> 
1525                 file maintained at grand.central.org</para>
1526               </listitem>
1527
1528               <listitem>
1529                 <para>An existing client machine in your cell</para>
1530               </listitem>
1531
1532               <listitem>
1533                 <para>The <emphasis role="bold">CellServDB.sample</emphasis> 
1534                 file included in the
1535                 <replaceable>sysname</replaceable><emphasis role="bold">/root.client/usr/vice/etc</emphasis> 
1536                 directory of each OpenAFS distribution; add an entry for the 
1537                 local cell by following the instructions in 
1538                 <link linkend="HDRWQ66">Creating the Client CellServDB File</link>
1539                 </para>
1540               </listitem>
1541             </itemizedlist></para>
1542         </listitem>
1543       </orderedlist></para>
1544
1545     <indexterm>
1546       <primary>client cache</primary>
1547
1548       <see>cache</see>
1549     </indexterm>
1550
1551     <indexterm>
1552       <primary>AFS cache</primary>
1553
1554       <see>cache</see>
1555     </indexterm>
1556
1557     <indexterm>
1558       <primary>disk cache</primary>
1559
1560       <see>cache</see>
1561     </indexterm>
1562
1563     <indexterm>
1564       <primary>memory cache</primary>
1565
1566       <see>cache</see>
1567     </indexterm>
1568
1569     <indexterm>
1570       <primary>cache</primary>
1571
1572       <secondary>requirements</secondary>
1573     </indexterm>
1574
1575     <indexterm>
1576       <primary>cache</primary>
1577
1578       <secondary>choosing size</secondary>
1579     </indexterm>
1580
1581     <indexterm>
1582       <primary>requirements</primary>
1583
1584       <secondary>cache</secondary>
1585     </indexterm>
1586
1587     <indexterm>
1588       <primary>usr/vice/etc/cacheinfo</primary>
1589
1590       <see>cacheinfo file</see>
1591     </indexterm>
1592
1593     <indexterm>
1594       <primary>cacheinfo file</primary>
1595     </indexterm>
1596
1597     <indexterm>
1598       <primary>files</primary>
1599
1600       <secondary>cacheinfo</secondary>
1601     </indexterm>
1602
1603     <indexterm>
1604       <primary>usr/vice/cache directory</primary>
1605     </indexterm>
1606
1607     <indexterm>
1608       <primary>directories</primary>
1609
1610       <secondary>/usr/vice/cache</secondary>
1611     </indexterm>
1612
1613     <indexterm>
1614       <primary>cache</primary>
1615
1616       <secondary>configuring</secondary>
1617
1618       <tertiary>client machine</tertiary>
1619     </indexterm>
1620
1621     <indexterm>
1622       <primary>configuring</primary>
1623
1624       <secondary>cache</secondary>
1625
1626       <tertiary>client machine</tertiary>
1627     </indexterm>
1628
1629     <indexterm>
1630       <primary>setting</primary>
1631
1632       <secondary>cache size and location</secondary>
1633
1634       <tertiary>client machine</tertiary>
1635     </indexterm>
1636
1637     <indexterm>
1638       <primary>client machine</primary>
1639
1640       <secondary>cache size and location</secondary>
1641     </indexterm>
1642   </sect1>
1643
1644   <sect1 id="HDRWQ146">
1645     <title>Configuring the Cache</title>
1646
1647     <para>The Cache Manager uses a cache on the local disk or in machine memory to store local copies of files fetched from file
1648     server machines. As the <emphasis role="bold">afsd</emphasis> program initializes the Cache Manager, it sets basic cache
1649     configuration parameters according to definitions in the local <emphasis role="bold">/usr/vice/etc/cacheinfo</emphasis> file.
1650     The file has three fields: <orderedlist>
1651         <listitem>
1652           <para>The first field names the local directory on which to mount the AFS filespace. The conventional location is the
1653           <emphasis role="bold">/afs</emphasis> directory.</para>
1654         </listitem>
1655
1656         <listitem>
1657           <para>The second field defines the local disk directory to use for the disk cache. The conventional location is the
1658           <emphasis role="bold">/usr/vice/cache</emphasis> directory, but you can specify an alternate directory if another
1659           partition has more space available. There must always be a value in this field, but the Cache Manager ignores it if the
1660           machine uses a memory cache.</para>
1661         </listitem>
1662
1663         <listitem>
1664           <para>The third field specifies the number of kilobyte (1024 byte) blocks to allocate for the cache.</para>
1665         </listitem>
1666       </orderedlist></para>
1667
1668     <para>The values you define must meet the following requirements. <itemizedlist>
1669         <listitem>
1670           <para>On a machine using a disk cache, the Cache Manager expects always to be able to use the amount of space specified in
1671           the third field. Failure to meet this requirement can cause serious problems, some of which can be repaired only by
1672           rebooting. You must prevent non-AFS processes from filling up the cache partition. The simplest way is to devote a
1673           partition to the cache exclusively.</para>
1674         </listitem>
1675
1676         <listitem>
1677           <para>The amount of space available in memory or on the partition housing the disk cache directory imposes an absolute
1678           limit on cache size.</para>
1679         </listitem>
1680
1681         <listitem>
1682           <para>The maximum supported cache size can vary in each AFS release; see the <emphasis>OpenAFS Release Notes</emphasis>
1683           for the current version.</para>
1684         </listitem>
1685
1686         <listitem>
1687           <para>For a disk cache, you cannot specify a value in the third field that exceeds 95% of the space available on the
1688           partition mounted at the directory named in the second field. If you violate this restriction, the <emphasis
1689           role="bold">afsd</emphasis> program exits without starting the Cache Manager and prints an appropriate message on the
1690           standard output stream. A value of 90% is more appropriate on most machines. Some operating systems (such as AIX) do not
1691           automatically reserve some space to prevent the partition from filling completely; for them, a smaller value (say, 80% to
1692           85% of the space available) is more appropriate.</para>
1693         </listitem>
1694
1695         <listitem>
1696           <para>For a memory cache, you must leave enough memory for other processes and applications to run. If you try to allocate
1697           more memory than is actually available, the <emphasis role="bold">afsd</emphasis> program exits without initializing the
1698           Cache Manager and produces the following message on the standard output stream. <programlisting>
1699    afsd: memCache allocation failure at <replaceable>number</replaceable> KB
1700 </programlisting></para>
1701
1702           <para>The <replaceable>number</replaceable> value is how many kilobytes were allocated just before the failure, and so
1703           indicates the approximate amount of memory available.</para>
1704         </listitem>
1705       </itemizedlist></para>
1706
1707     <para>Within these hard limits, the factors that determine appropriate cache size include the number of users working on the
1708     machine, the size of the files with which they work, and (for a memory cache) the number of processes that run on the machine.
1709     The higher the demand from these factors, the larger the cache needs to be to maintain good performance.</para>
1710
1711     <para>Disk caches smaller than 10 MB do not generally perform well. Machines serving multiple users usually perform better with
1712     a cache of at least 60 to 70 MB. The point at which enlarging the cache further does not really improve performance depends on
1713     the factors mentioned previously and is difficult to predict.</para>
1714
1715     <para>Memory caches smaller than 1 MB are nonfunctional, and the performance of caches smaller than 5 MB is usually
1716     unsatisfactory. Suitable upper limits are similar to those for disk caches but are probably determined more by the demands on
1717     memory from other sources on the machine (number of users and processes). Machines running only a few processes possibly can use
1718     a smaller memory cache.</para>
1719
1720     <sect2 id="HDRWQ147">
1721       <title>Configuring a Disk Cache</title>
1722
1723       <note>
1724         <para>Not all file system types that an operating system supports are necessarily supported for use as the cache partition.
1725         For possible restrictions, see the <emphasis>OpenAFS Release Notes</emphasis>.</para>
1726       </note>
1727
1728       <para>To configure the disk cache, perform the following procedures: <orderedlist>
1729           <listitem>
1730             <para>Create the local directory to use for caching. The following instruction shows the conventional location,
1731             <emphasis role="bold">/usr/vice/cache</emphasis>. If you are devoting a partition exclusively to caching, as
1732             recommended, you must also configure it, make a file system on it, and mount it at the directory created in this step.
1733             <programlisting>
1734    # <emphasis role="bold">mkdir /usr/vice/cache</emphasis>
1735 </programlisting></para>
1736           </listitem>
1737
1738           <listitem>
1739             <para>Create the <emphasis role="bold">cacheinfo</emphasis> file to define the configuration parameters discussed
1740             previously. The following instruction shows the standard mount location, <emphasis role="bold">/afs</emphasis>, and the
1741             standard cache location, <emphasis role="bold">/usr/vice/cache</emphasis>. <programlisting>
1742    # <emphasis role="bold">echo "/afs:/usr/vice/cache:</emphasis><replaceable>#blocks</replaceable><emphasis role="bold">" &gt; /usr/vice/etc/cacheinfo</emphasis>
1743 </programlisting></para>
1744
1745             <para>The following example defines the disk cache size as 50,000 KB:</para>
1746
1747             <programlisting>
1748    # <emphasis role="bold">echo "/afs:/usr/vice/cache:50000" &gt; /usr/vice/etc/cacheinfo</emphasis>
1749 </programlisting>
1750           </listitem>
1751         </orderedlist></para>
1752     </sect2>
1753
1754     <sect2 id="HDRWQ148">
1755       <title>Configuring a Memory Cache</title>
1756
1757       <para>To configure a memory cache, create the <emphasis role="bold">cacheinfo</emphasis> file to define the configuration
1758       parameters discussed previously. The following instruction shows the standard mount location, <emphasis
1759       role="bold">/afs</emphasis>, and the standard cache location, <emphasis role="bold">/usr/vice/cache</emphasis> (though the
1760       exact value of the latter is irrelevant for a memory cache).</para>
1761
1762       <programlisting>
1763    # <emphasis role="bold">echo "/afs:/usr/vice/cache:</emphasis><replaceable>#blocks</replaceable><emphasis role="bold">" &gt; /usr/vice/etc/cacheinfo</emphasis>
1764 </programlisting>
1765
1766       <para>The following example allocates 25,000 KB of memory for the cache.</para>
1767
1768       <programlisting>
1769    # <emphasis role="bold">echo "/afs:/usr/vice/cache:25000" &gt; /usr/vice/etc/cacheinfo</emphasis>
1770 </programlisting>
1771
1772       <indexterm>
1773         <primary>afs (/afs) directory</primary>
1774
1775         <secondary>creating</secondary>
1776
1777         <tertiary>client machine</tertiary>
1778       </indexterm>
1779
1780       <indexterm>
1781         <primary>afs (/afs) directory</primary>
1782
1783         <secondary>as root of AFS filespace</secondary>
1784       </indexterm>
1785
1786       <indexterm>
1787         <primary>AFS filespace</primary>
1788
1789         <secondary>root at /afs directory</secondary>
1790       </indexterm>
1791
1792       <indexterm>
1793         <primary>directories</primary>
1794
1795         <secondary>/afs</secondary>
1796       </indexterm>
1797
1798       <indexterm>
1799         <primary>afsd</primary>
1800
1801         <secondary>options file (Linux)</secondary>
1802       </indexterm>
1803
1804       <indexterm>
1805         <primary>files</primary>
1806
1807         <secondary>afsd options file (Linux)</secondary>
1808       </indexterm>
1809
1810       <indexterm>
1811         <primary>files</primary>
1812
1813         <secondary>afs</secondary>
1814
1815         <tertiary>afsd options file (Linux)</tertiary>
1816       </indexterm>
1817
1818       <indexterm>
1819         <primary>afs file</primary>
1820
1821         <secondary>afsd options file (Linux)</secondary>
1822       </indexterm>
1823
1824       <indexterm>
1825         <primary>etc/sysconfig/afs</primary>
1826
1827         <see>afs file</see>
1828       </indexterm>
1829
1830       <indexterm>
1831         <primary>Linux</primary>
1832
1833         <secondary>afsd options file</secondary>
1834       </indexterm>
1835
1836       <indexterm>
1837         <primary>client machine</primary>
1838
1839         <secondary>afsd options file (Linux)</secondary>
1840       </indexterm>
1841
1842       <indexterm>
1843         <primary>afsd</primary>
1844
1845         <secondary>command in AFS init. script</secondary>
1846       </indexterm>
1847
1848       <indexterm>
1849         <primary>commands</primary>
1850
1851         <secondary>afsd</secondary>
1852       </indexterm>
1853
1854       <indexterm>
1855         <primary>OPTIONS variable in AFS initialization file</primary>
1856       </indexterm>
1857
1858       <indexterm>
1859         <primary>files</primary>
1860
1861         <secondary>AFS initialization</secondary>
1862
1863         <see>AFS initialization script</see>
1864       </indexterm>
1865
1866       <indexterm>
1867         <primary>scripts</primary>
1868
1869         <secondary>AFS initialization</secondary>
1870
1871         <see>AFS initialization script</see>
1872       </indexterm>
1873
1874       <indexterm>
1875         <primary>AFS initialization script</primary>
1876
1877         <secondary>setting afsd parameters</secondary>
1878
1879         <tertiary>client machine</tertiary>
1880       </indexterm>
1881
1882       <indexterm>
1883         <primary>client machine</primary>
1884
1885         <secondary>afsd command parameters</secondary>
1886       </indexterm>
1887
1888       <indexterm>
1889         <primary>variables</primary>
1890
1891         <secondary>OPTIONS (in AFS initialization file)</secondary>
1892       </indexterm>
1893
1894       <indexterm>
1895         <primary>environment variables</primary>
1896
1897         <see>variables</see>
1898       </indexterm>
1899
1900       <indexterm>
1901         <primary>Cache Manager</primary>
1902
1903         <secondary>client machine</secondary>
1904       </indexterm>
1905
1906       <indexterm>
1907         <primary>configuring</primary>
1908
1909         <secondary>Cache Manager</secondary>
1910
1911         <tertiary>client machine</tertiary>
1912       </indexterm>
1913
1914       <indexterm>
1915         <primary>client machine</primary>
1916
1917         <secondary>Cache Manager</secondary>
1918       </indexterm>
1919
1920       <indexterm>
1921         <primary>files</primary>
1922
1923         <secondary>vfs (AIX)</secondary>
1924       </indexterm>
1925
1926       <indexterm>
1927         <primary>vfs file</primary>
1928       </indexterm>
1929
1930       <indexterm>
1931         <primary>etc/vfs file</primary>
1932       </indexterm>
1933
1934       <indexterm>
1935         <primary>AIX</primary>
1936
1937         <secondary>editing /etc/vfs file</secondary>
1938       </indexterm>
1939
1940       <indexterm>
1941         <primary>client machine</primary>
1942
1943         <secondary>vfs file (AIX)</secondary>
1944       </indexterm>
1945     </sect2>
1946   </sect1>
1947
1948   <sect1 id="HDRWQ149">
1949     <title>Configuring the Cache Manager</title>
1950
1951     <para>By convention, the Cache Manager mounts the AFS filespace on the local <emphasis role="bold">/afs</emphasis> directory. In
1952     this section you create that directory.</para>
1953
1954     <para>The <emphasis role="bold">afsd</emphasis> program sets several cache configuration parameters as it initializes the Cache
1955     Manager, and starts daemons that improve performance. You can use the <emphasis role="bold">afsd</emphasis> command's arguments
1956     to override the parameters' default values and to change the number of some of the daemons. Depending on the machine's cache
1957     size, its amount of RAM, and how many people work on it, you can sometimes improve Cache Manager performance by overriding the
1958     default values. For a discussion of all of the <emphasis role="bold">afsd</emphasis> command's arguments, see its reference page
1959     in the <emphasis>OpenAFS Administration Reference</emphasis>.</para>
1960
1961     <para>On platforms using the standard 'afs' initialisation script (this does
1962     not apply to Fedora or RHEL based distributions), the 
1963     <emphasis role="bold">afsd</emphasis> command line in the AFS 
1964     initialization script on each system type includes an
1965     <computeroutput>OPTIONS</computeroutput> variable. You can use it to set 
1966     nondefault values for the command's arguments, in one
1967     of the following ways: <itemizedlist>
1968         <listitem>
1969           <para>You can create an <emphasis role="bold">afsd</emphasis> <emphasis>options file</emphasis> that sets values for
1970           arguments to the <emphasis role="bold">afsd</emphasis> command. If the file exists, its contents are automatically
1971           substituted for the <computeroutput>OPTIONS</computeroutput> variable in the AFS initialization script. The AFS
1972           distribution for some system types includes an options file; on other system types, you must create it.</para>
1973
1974           <para>You use two variables in the AFS initialization script to specify the path to the options file:
1975           <computeroutput>CONFIG</computeroutput> and <computeroutput>AFSDOPT</computeroutput>. On system types that define a
1976           conventional directory for configuration files, the <computeroutput>CONFIG</computeroutput> variable indicates it by
1977           default; otherwise, the variable indicates an appropriate location.</para>
1978
1979           <para>List the desired <emphasis role="bold">afsd</emphasis> options on a single line in the options file, separating each
1980           option with one or more spaces. The following example sets the <emphasis role="bold">-stat</emphasis> argument to 2500,
1981           the <emphasis role="bold">-daemons</emphasis> argument to 4, and the <emphasis role="bold">-volumes</emphasis> argument to
1982           100.</para>
1983
1984           <programlisting>
1985    -stat 2500 -daemons 4 -volumes 100   
1986 </programlisting>
1987         </listitem>
1988
1989         <listitem>
1990           <para>On a machine that uses a disk cache, you can set the <computeroutput>OPTIONS</computeroutput> variable in the AFS
1991           initialization script to one of <computeroutput>$SMALL</computeroutput>, <computeroutput>$MEDIUM</computeroutput>, or
1992           <computeroutput>$LARGE</computeroutput>. The AFS initialization script uses one of these settings if the <emphasis
1993           role="bold">afsd</emphasis> options file named by the <computeroutput>AFSDOPT</computeroutput> variable does not exist. In
1994           the script as distributed, the <computeroutput>OPTIONS</computeroutput> variable is set to the value
1995           <computeroutput>$MEDIUM</computeroutput>.</para>
1996
1997           <note>
1998             <para>Do not set the <computeroutput>OPTIONS</computeroutput> variable to <computeroutput>$SMALL</computeroutput>,
1999             <computeroutput>$MEDIUM</computeroutput>, or <computeroutput>$LARGE</computeroutput> on a machine that uses a memory
2000             cache. The arguments it sets are appropriate only on a machine that uses a disk cache.</para>
2001           </note>
2002
2003           <para>The script (or on some system types the <emphasis role="bold">afsd</emphasis> options file named by the
2004           <computeroutput>AFSDOPT</computeroutput> variable) defines a value for each of <computeroutput>SMALL</computeroutput>,
2005           <computeroutput>MEDIUM</computeroutput>, and <computeroutput>LARGE</computeroutput> that sets <emphasis
2006           role="bold">afsd</emphasis> command arguments appropriately for client machines of different sizes: <itemizedlist>
2007               <listitem>
2008                 <para><computeroutput>SMALL</computeroutput> is suitable for a small machine that serves one or two users and has
2009                 approximately 8 MB of RAM and a 20-MB cache</para>
2010               </listitem>
2011
2012               <listitem>
2013                 <para><computeroutput>MEDIUM</computeroutput> is suitable for a medium-sized machine that serves two to six users
2014                 and has 16 MB of RAM and a 40-MB cache</para>
2015               </listitem>
2016
2017               <listitem>
2018                 <para><computeroutput>LARGE</computeroutput> is suitable for a large machine that serves five to ten users and has
2019                 32 MB of RAM and a 100-MB cache</para>
2020               </listitem>
2021             </itemizedlist></para>
2022         </listitem>
2023
2024         <listitem>
2025           <para>You can choose not to create an <emphasis role="bold">afsd</emphasis> options file and to set the
2026           <computeroutput>OPTIONS</computeroutput> variable in the initialization script to a null value rather than to the default
2027           <computeroutput>$MEDIUM</computeroutput> value. You can then either set arguments directly on the <emphasis
2028           role="bold">afsd</emphasis> command line in the script, or set no arguments (and so accept default values for all Cache
2029           Manager parameters).</para>
2030         </listitem>
2031       </itemizedlist>
2032       
2033       <note>
2034         <para>If you are running on a Fedora or RHEL based system, the 
2035         openafs-client initialization script behaves differently from that
2036         described above. It sources 
2037         <emphasis role="bold">/etc/sysconfig/openafs</emphasis>, in which the
2038         AFSD_ARGS variable may be set to contain any, or all, of the afsd 
2039         options detailed above. Note that this script does not support setting
2040         an <computeroutput>OPTIONS</computeroutput> variable, or the 
2041         <computeroutput>SMALL</computeroutput>,
2042         <computeroutput>MEDIUM</computeroutput> and
2043         <computeroutput>LARGE</computeroutput> methods of defining cache size.
2044         </para>
2045       </note>
2046       
2047       <orderedlist>
2048         <listitem>
2049           <para>Create the local directory on which to mount the AFS filespace, by convention <emphasis role="bold">/afs</emphasis>.
2050           If the directory already exists, verify that it is empty. <programlisting>
2051    # <emphasis role="bold">mkdir /afs</emphasis>
2052 </programlisting></para>
2053         </listitem>
2054
2055         <listitem>
2056           <para>On AIX systems, add the following line to the <emphasis role="bold">/etc/vfs</emphasis> file. It enables AIX to
2057           unmount AFS correctly during shutdown. <programlisting>
2058    afs     4     none     none
2059 </programlisting></para>
2060         </listitem>
2061
2062         <listitem>
2063           <para>On non-package based Linux systems, copy the <emphasis role="bold">afsd</emphasis> options file from the <emphasis
2064           role="bold">/usr/vice/etc</emphasis> directory to the <emphasis role="bold">/etc/sysconfig</emphasis> directory, removing
2065           the <emphasis role="bold">.conf</emphasis> extension as you do so. <programlisting>
2066    # <emphasis role="bold">cp /usr/vice/etc/afs.conf /etc/sysconfig/afs</emphasis>
2067 </programlisting></para>
2068         </listitem>
2069
2070         <listitem>
2071           <para>Edit the machine's AFS initialization script or <emphasis role="bold">afsd</emphasis> options file to set
2072           appropriate values for <emphasis role="bold">afsd</emphasis> command parameters. The appropriate file for each system type
2073           is as follows: <itemizedlist>
2074               <listitem>
2075                 <para>On AIX systems, <emphasis role="bold">/etc/rc.afs</emphasis></para>
2076               </listitem>
2077
2078               <listitem>
2079                 <para>On HP-UX systems, <emphasis role="bold">/sbin/init.d/afs</emphasis></para>
2080               </listitem>
2081
2082               <listitem>
2083                 <para>On IRIX systems, <emphasis role="bold">/etc/init.d/afs</emphasis></para>
2084               </listitem>
2085
2086               <listitem>
2087                 <para>On Fedora and RHEL systems, <emphasis role="bold">/etc/sysconfig/openafs</emphasis></para>
2088               </listitem>
2089               
2090               <listitem>
2091                 <para>On Linux systems, <emphasis role="bold">/etc/sysconfig/afs</emphasis> (the <emphasis
2092                 role="bold">afsd</emphasis> options file)</para>
2093               </listitem>
2094
2095               <listitem>
2096                 <para>On Solaris systems, <emphasis role="bold">/etc/init.d/afs</emphasis></para>
2097               </listitem>
2098             </itemizedlist></para>
2099
2100           <para>Use one of the methods described in the introduction to this section to add the following flags to the <emphasis
2101           role="bold">afsd</emphasis> command line. Also set any performance-related arguments you wish. <itemizedlist>
2102               <listitem>
2103                 <para>Add the <emphasis role="bold">-memcache</emphasis> flag if the machine is to use a memory cache.</para>
2104               </listitem>
2105
2106               <listitem>
2107                 <para>Add the <emphasis role="bold">-verbose</emphasis> flag to display a trace of the Cache Manager's
2108                 initialization on the standard output stream.</para>
2109               </listitem>
2110             </itemizedlist></para>
2111         </listitem>
2112       </orderedlist></para>
2113
2114     <indexterm>
2115       <primary>AFS initialization script</primary>
2116
2117       <secondary>running</secondary>
2118
2119       <tertiary>client machine</tertiary>
2120     </indexterm>
2121
2122     <indexterm>
2123       <primary>client machine</primary>
2124
2125       <secondary>AFS initialization script</secondary>
2126     </indexterm>
2127
2128     <indexterm>
2129       <primary>running AFS init. script</primary>
2130
2131       <secondary>client machine</secondary>
2132     </indexterm>
2133
2134     <indexterm>
2135       <primary>installing</primary>
2136
2137       <secondary>AFS initialization script</secondary>
2138
2139       <tertiary>client machine</tertiary>
2140     </indexterm>
2141
2142     <indexterm>
2143       <primary>AFS initialization script</primary>
2144
2145       <secondary>adding to machine startup sequence</secondary>
2146
2147       <tertiary>client machine</tertiary>
2148     </indexterm>
2149   </sect1>
2150
2151   <sect1 id="HDRWQ150">
2152     <title>Starting the Cache Manager and Installing the AFS Initialization Script</title>
2153
2154     <para>In this section you run the AFS initialization script to start the Cache Manager. If the script works correctly, perform
2155     the steps that incorporate it into the machine's startup and shutdown sequence. If there are problems during the initialization,
2156     attempt to resolve them. The AFS Product Support group can provide assistance if necessary.</para>
2157
2158     <para>On machines that use a disk cache, it can take a while for the <emphasis role="bold">afsd</emphasis> program to run the
2159     first time on a machine, because it must create all of the <emphasis role="bold">V</emphasis><replaceable>n</replaceable> files
2160     in the cache directory. Subsequent Cache Manager initializations do not take nearly as long, because the <emphasis
2161     role="bold">V</emphasis><replaceable>n</replaceable> files already exist.</para>
2162
2163     <para>On system types that use a dynamic loader program, you must reboot the machine before running the initialization script,
2164     so that it can freshly load AFS modifications into the kernel.</para>
2165
2166     <para>Proceed to the instructions for your system type:</para>
2167
2168     <itemizedlist>
2169       <listitem>
2170         <para><link linkend="HDRWQ151">Running the Script on AIX Systems</link></para>
2171       </listitem>
2172
2173       <listitem>
2174         <para><link linkend="HDRWQ153">Running the Script on HP-UX Systems</link></para>
2175       </listitem>
2176
2177       <listitem>
2178         <para><link linkend="HDRWQ154">Running the Script on IRIX Systems</link></para>
2179       </listitem>
2180
2181       <listitem>
2182         <para><link linkend="HDRWQ155">Running the Script on Linux Systems</link></para>
2183       </listitem>
2184
2185       <listitem>
2186         <para><link linkend="HDRWQ156">Running the Script on Solaris Systems</link></para>
2187       </listitem>
2188     </itemizedlist>
2189
2190     <indexterm>
2191       <primary>AIX</primary>
2192
2193       <secondary>AFS initialization script</secondary>
2194
2195       <tertiary>on client machine</tertiary>
2196     </indexterm>
2197
2198     <indexterm>
2199       <primary>rc.afs file (AFS init. file for AIX)</primary>
2200     </indexterm>
2201
2202     <indexterm>
2203       <primary>files</primary>
2204
2205       <secondary>rc.afs</secondary>
2206     </indexterm>
2207
2208     <indexterm>
2209       <primary>etc/rc.afs</primary>
2210
2211       <see>rc.afs file</see>
2212     </indexterm>
2213
2214     <sect2 id="HDRWQ151">
2215       <title>Running the Script on AIX Systems</title>
2216
2217       <orderedlist>
2218         <listitem>
2219           <para>Reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>. <programlisting>
2220    # <emphasis role="bold">cd /</emphasis>
2221    # <emphasis role="bold">shutdown -r now</emphasis>
2222    login: <emphasis role="bold">root</emphasis>
2223    Password: <replaceable>root_password</replaceable>
2224 </programlisting></para>
2225         </listitem>
2226
2227         <listitem>
2228           <para>Run the AFS initialization script. <programlisting>
2229    # <emphasis role="bold">/etc/rc.afs</emphasis>
2230 </programlisting></para>
2231         </listitem>
2232
2233         <listitem>
2234           <para>Edit the AIX initialization file, <emphasis role="bold">/etc/inittab</emphasis>, adding the following line to invoke
2235           the AFS initialization script. Place it just after the line that starts NFS daemons. <programlisting>
2236    rcafs:2:wait:/etc/rc.afs &gt; /dev/console 2&gt;&amp;1 # Start AFS services
2237 </programlisting></para>
2238         </listitem>
2239
2240         <listitem>
2241           <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2242           <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc</emphasis> directories. If you want to avoid
2243           potential confusion by guaranteeing that they are always the same, create a link between them. You can always retrieve the
2244           original script from the AFS CD-ROM if necessary. <programlisting>
2245    # <emphasis role="bold">cd  /usr/vice/etc</emphasis>
2246    # <emphasis role="bold">rm  rc.afs</emphasis>
2247    # <emphasis role="bold">ln -s  /etc/rc.afs</emphasis>
2248 </programlisting></para>
2249         </listitem>
2250
2251         <listitem>
2252           <para>If a volume for housing AFS binaries for this machine's system type does not already exist, proceed to <link
2253           linkend="HDRWQ157">Setting Up Volumes and Loading Binaries into AFS</link>. Otherwise, the installation is
2254           complete.</para>
2255         </listitem>
2256       </orderedlist>
2257
2258       <indexterm>
2259         <primary>afs file</primary>
2260
2261         <secondary>AFS initialization file</secondary>
2262       </indexterm>
2263
2264       <indexterm>
2265         <primary>files</primary>
2266
2267         <secondary>afs</secondary>
2268
2269         <tertiary>AFS initialization file</tertiary>
2270       </indexterm>
2271
2272       <indexterm>
2273         <primary>HP-UX</primary>
2274
2275         <secondary>AFS initialization script</secondary>
2276
2277         <tertiary>on client machine</tertiary>
2278       </indexterm>
2279     </sect2>
2280
2281     <sect2 id="HDRWQ153">
2282       <title>Running the Script on HP-UX Systems</title>
2283
2284       <orderedlist>
2285         <listitem>
2286           <para>Run the AFS initialization script. <programlisting>
2287    # <emphasis role="bold">/sbin/init.d/afs  start</emphasis>
2288 </programlisting></para>
2289         </listitem>
2290
2291         <listitem>
2292           <para>Change to the <emphasis role="bold">/sbin/init.d</emphasis> directory and issue the <emphasis role="bold">ln
2293           -s</emphasis> command to create symbolic links that incorporate the AFS initialization script into the HP-UX startup and
2294           shutdown sequence. <programlisting>
2295    # <emphasis role="bold">cd /sbin/init.d</emphasis>
2296    # <emphasis role="bold">ln -s ../init.d/afs /sbin/rc2.d/S460afs</emphasis>
2297    # <emphasis role="bold">ln -s ../init.d/afs /sbin/rc2.d/K800afs</emphasis>
2298 </programlisting></para>
2299         </listitem>
2300
2301         <listitem>
2302           <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2303           <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/sbin/init.d</emphasis> directories. If you want
2304           to avoid potential confusion by guaranteeing that they are always the same, create a link between them. You can always
2305           retrieve the original script from the AFS CD-ROM if necessary. <programlisting>
2306    # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2307    # <emphasis role="bold">rm afs.rc</emphasis>
2308    # <emphasis role="bold">ln -s  /sbin/init.d/afs  afs.rc</emphasis>
2309 </programlisting></para>
2310         </listitem>
2311
2312         <listitem>
2313           <para>If a volume for housing AFS binaries for this machine's system type does not already exist, proceed to <link
2314           linkend="HDRWQ157">Setting Up Volumes and Loading Binaries into AFS</link>. Otherwise, the installation is
2315           complete.</para>
2316         </listitem>
2317       </orderedlist>
2318
2319       <indexterm>
2320         <primary>afs file</primary>
2321
2322         <secondary>AFS initialization file</secondary>
2323       </indexterm>
2324
2325       <indexterm>
2326         <primary>files</primary>
2327
2328         <secondary>afs</secondary>
2329
2330         <tertiary>AFS initialization file</tertiary>
2331       </indexterm>
2332
2333       <indexterm>
2334         <primary>IRIX</primary>
2335
2336         <secondary>AFS initialization script</secondary>
2337
2338         <tertiary>on client machine</tertiary>
2339       </indexterm>
2340
2341       <indexterm>
2342         <primary>etc/init.d/afs</primary>
2343
2344         <see>afs file</see>
2345       </indexterm>
2346
2347       <indexterm>
2348         <primary>afsclient variable (IRIX)</primary>
2349
2350         <secondary>client machine</secondary>
2351       </indexterm>
2352
2353       <indexterm>
2354         <primary>variables</primary>
2355
2356         <secondary>afsclient (IRIX)</secondary>
2357
2358         <tertiary>client machine</tertiary>
2359       </indexterm>
2360
2361       <indexterm>
2362         <primary>IRIX</primary>
2363
2364         <secondary>afsclient variable</secondary>
2365
2366         <tertiary>client machine</tertiary>
2367       </indexterm>
2368     </sect2>
2369
2370     <sect2 id="HDRWQ154">
2371       <title>Running the Script on IRIX Systems</title>
2372
2373       <orderedlist>
2374         <listitem>
2375           <para>If you have configured the machine to use the <emphasis role="bold">ml</emphasis> dynamic loader program, reboot the
2376           machine and log in again as the local superuser <emphasis role="bold">root</emphasis>. <programlisting>
2377    # <emphasis role="bold">cd /</emphasis>
2378    # <emphasis role="bold">shutdown -i6 -g0 -y</emphasis>
2379    login: <emphasis role="bold">root</emphasis>
2380    Password: <replaceable>root_password</replaceable>
2381 </programlisting></para>
2382         </listitem>
2383
2384         <listitem>
2385           <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to activate the <emphasis
2386           role="bold">afsclient</emphasis> configuration variable. <programlisting>
2387    # <emphasis role="bold">/etc/chkconfig -f afsclient on</emphasis> 
2388 </programlisting></para>
2389         </listitem>
2390
2391         <listitem>
2392           <para>Run the AFS initialization script. <programlisting>
2393    # <emphasis role="bold">/etc/init.d/afs  start</emphasis>
2394 </programlisting></para>
2395         </listitem>
2396
2397         <listitem>
2398           <para>Change to the <emphasis role="bold">/etc/init.d</emphasis> directory and issue the <emphasis role="bold">ln
2399           -s</emphasis> command to create symbolic links that incorporate the AFS initialization script into the IRIX startup and
2400           shutdown sequence. <programlisting>
2401    # <emphasis role="bold">cd /etc/init.d</emphasis>
2402    # <emphasis role="bold">ln -s ../init.d/afs /etc/rc2.d/S35afs</emphasis>
2403    # <emphasis role="bold">ln -s ../init.d/afs /etc/rc0.d/K35afs</emphasis>
2404 </programlisting></para>
2405         </listitem>
2406
2407         <listitem>
2408           <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2409           <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/init.d</emphasis> directories. If you want
2410           to avoid potential confusion by guaranteeing that they are always the same, create a link between them. You can always
2411           retrieve the original script from the AFS CD-ROM if necessary. <programlisting>
2412    # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2413    # <emphasis role="bold">rm afs.rc</emphasis>
2414    # <emphasis role="bold">ln -s  /etc/init.d/afs  afs.rc</emphasis>
2415 </programlisting></para>
2416         </listitem>
2417
2418         <listitem>
2419           <para>If a volume for housing AFS binaries for this machine's system type does not already exist, proceed to <link
2420           linkend="HDRWQ157">Setting Up Volumes and Loading Binaries into AFS</link>. Otherwise, the installation is
2421           complete.</para>
2422         </listitem>
2423       </orderedlist>
2424
2425       <indexterm>
2426         <primary>afs file</primary>
2427
2428         <secondary>AFS initialization file</secondary>
2429       </indexterm>
2430
2431       <indexterm>
2432         <primary>files</primary>
2433
2434         <secondary>afs</secondary>
2435
2436         <tertiary>AFS initialization file</tertiary>
2437       </indexterm>
2438
2439       <indexterm>
2440         <primary>etc/rc.d/init.d/afs</primary>
2441
2442         <see>afs file</see>
2443       </indexterm>
2444
2445       <indexterm>
2446         <primary>Linux</primary>
2447
2448         <secondary>AFS initialization script</secondary>
2449
2450         <tertiary>on client machine</tertiary>
2451       </indexterm>
2452     </sect2>
2453
2454     <sect2>
2455       <title>Running the Script on Fedora / RHEL Systems</title>
2456
2457       <orderedlist>
2458         <listitem>
2459           <para>Reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>. <programlisting>
2460    # <emphasis role="bold">cd /</emphasis>
2461    # <emphasis role="bold">shutdown -r now</emphasis>
2462    login: <emphasis role="bold">root</emphasis>
2463    Password: <replaceable>root_password</replaceable>
2464 </programlisting></para>
2465         </listitem>
2466
2467         <listitem>
2468           <para>Run the AFS initialization script. 
2469 <programlisting>
2470    # <emphasis role="bold">/etc/rc.d/init.d/openafs-client  start</emphasis>
2471 </programlisting></para>
2472         </listitem>
2473
2474         <listitem>
2475           <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to activate the <emphasis role="bold">openafs-client</emphasis>
2476           configuration variable. Based on the instruction in the AFS initialization file that begins with the string
2477           <computeroutput>#chkconfig</computeroutput>, the command automatically creates the symbolic links that incorporate the
2478           script into the Linux startup and shutdown sequence. <programlisting>
2479    # <emphasis role="bold">/sbin/chkconfig  --add openafs-client</emphasis>
2480 </programlisting></para>
2481         </listitem>
2482       </orderedlist>
2483     </sect2>
2484       
2485     <sect2 id="HDRWQ155">
2486       <title>Running the Script on other Linux Systems</title>
2487
2488       <orderedlist>
2489         <listitem>
2490           <para>Reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>. <programlisting>
2491    # <emphasis role="bold">cd /</emphasis>
2492    # <emphasis role="bold">shutdown -r now</emphasis>
2493    login: <emphasis role="bold">root</emphasis>
2494    Password: <replaceable>root_password</replaceable>
2495 </programlisting></para>
2496         </listitem>
2497
2498         <listitem>
2499           <para>Run the AFS initialization script. <programlisting>
2500    # <emphasis role="bold">/etc/rc.d/init.d/afs  start</emphasis>
2501 </programlisting></para>
2502         </listitem>
2503
2504         <listitem>
2505           <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to activate the <emphasis role="bold">afs</emphasis>
2506           configuration variable. Based on the instruction in the AFS initialization file that begins with the string
2507           <computeroutput>#chkconfig</computeroutput>, the command automatically creates the symbolic links that incorporate the
2508           script into the Linux startup and shutdown sequence. <programlisting>
2509    # <emphasis role="bold">/sbin/chkconfig  --add afs</emphasis>
2510 </programlisting></para>
2511         </listitem>
2512
2513         <listitem>
2514           <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2515           <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/rc.d/init.d</emphasis> directories, and
2516           copies of the <emphasis role="bold">afsd</emphasis> options file in both the <emphasis
2517           role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/sysconfig</emphasis> directories. If you want to avoid
2518           potential confusion by guaranteeing that the two copies of each file are always the same, create a link between them. You
2519           can always retrieve the original script or options file from the AFS CD-ROM if necessary. <programlisting>
2520    # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2521    # <emphasis role="bold">rm afs.rc afs.conf</emphasis>
2522    # <emphasis role="bold">ln -s  /etc/rc.d/init.d/afs  afs.rc</emphasis>
2523    # <emphasis role="bold">ln -s  /etc/sysconfig/afs  afs.conf</emphasis>
2524 </programlisting></para>
2525         </listitem>
2526
2527         <listitem>
2528           <para>If a volume for housing AFS binaries for this machine's system type does not already exist, proceed to <link
2529           linkend="HDRWQ157">Setting Up Volumes and Loading Binaries into AFS</link>. Otherwise, the installation is
2530           complete.</para>
2531         </listitem>
2532       </orderedlist>
2533
2534       <indexterm>
2535         <primary>afs file</primary>
2536
2537         <secondary>AFS initialization file</secondary>
2538       </indexterm>
2539
2540       <indexterm>
2541         <primary>files</primary>
2542
2543         <secondary>afs</secondary>
2544
2545         <tertiary>AFS initialization file</tertiary>
2546       </indexterm>
2547
2548       <indexterm>
2549         <primary>Solaris</primary>
2550
2551         <secondary>AFS initialization script</secondary>
2552
2553         <tertiary>on client machine</tertiary>
2554       </indexterm>
2555     </sect2>
2556
2557     <sect2 id="HDRWQ156">
2558       <title>Running the Script on Solaris Systems</title>
2559
2560       <orderedlist>
2561         <listitem>
2562           <para>Reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>. <programlisting>
2563    # <emphasis role="bold">cd /</emphasis>
2564    # <emphasis role="bold">shutdown -i6 -g0 -y</emphasis>
2565    login: <emphasis role="bold">root</emphasis>
2566    Password: <replaceable>root_password</replaceable>
2567 </programlisting></para>
2568         </listitem>
2569
2570         <listitem>
2571           <para>Run the AFS initialization script. <programlisting>
2572    # <emphasis role="bold">/etc/init.d/afs  start</emphasis>
2573 </programlisting></para>
2574         </listitem>
2575
2576         <listitem>
2577           <para>Change to the <emphasis role="bold">/etc/init.d</emphasis> directory and issue the <emphasis role="bold">ln
2578           -s</emphasis> command to create symbolic links that incorporate the AFS initialization script into the Solaris startup and
2579           shutdown sequence. <programlisting>
2580    # <emphasis role="bold">cd /etc/init.d</emphasis>
2581    # <emphasis role="bold">ln -s ../init.d/afs /etc/rc3.d/S99afs</emphasis>
2582    # <emphasis role="bold">ln -s ../init.d/afs /etc/rc0.d/K66afs</emphasis>
2583 </programlisting></para>
2584         </listitem>
2585
2586         <listitem>
2587           <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2588           <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/init.d</emphasis> directories. If you want
2589           to avoid potential confusion by guaranteeing that they are always the same, create a link between them. You can always
2590           retrieve the original script from the OpenAFS Binary Distribution if necessary. <programlisting>
2591    # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2592    # <emphasis role="bold">rm afs.rc</emphasis>
2593    # <emphasis role="bold">ln -s  /etc/init.d/afs  afs.rc</emphasis>
2594 </programlisting></para>
2595         </listitem>
2596
2597         <listitem>
2598           <para>If a volume for housing AFS binaries for this machine's system type does not already exist, proceed to <link
2599           linkend="HDRWQ157">Setting Up Volumes and Loading Binaries into AFS</link>. Otherwise, the installation is
2600           complete.</para>
2601         </listitem>
2602       </orderedlist>
2603
2604       <indexterm>
2605         <primary>storing</primary>
2606
2607         <secondary>AFS binaries in volumes</secondary>
2608       </indexterm>
2609
2610       <indexterm>
2611         <primary>creating</primary>
2612
2613         <secondary>volume</secondary>
2614
2615         <tertiary>for AFS binaries</tertiary>
2616       </indexterm>
2617
2618       <indexterm>
2619         <primary>volume</primary>
2620
2621         <secondary>for AFS binaries</secondary>
2622       </indexterm>
2623
2624       <indexterm>
2625         <primary>binaries</primary>
2626
2627         <secondary>storing AFS in volume</secondary>
2628       </indexterm>
2629
2630       <indexterm>
2631         <primary>usr/afsws directory</primary>
2632       </indexterm>
2633
2634       <indexterm>
2635         <primary>directories</primary>
2636
2637         <secondary>/usr/afsws</secondary>
2638       </indexterm>
2639     </sect2>
2640   </sect1>
2641
2642   <sect1 id="HDRWQ157">
2643     <title>Setting Up Volumes and Loading Binaries into AFS</title>
2644
2645     <note><para>If you are using an operating system which uses packaged
2646     binaries, such as .rpms or .debs, you should allow these package management
2647     systems to maintain your AFS binaries, rather than following the 
2648     instructions in this section.</para></note>
2649     
2650     <para>In this section, you link <emphasis role="bold">/usr/afsws</emphasis> on the local disk to the directory in AFS that
2651     houses AFS binaries for this system type. The conventional name for the AFS directory is <emphasis
2652     role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2653     role="bold">/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/usr/afsws</emphasis>.</para>
2654
2655     <para>If this machine is an existing system type, the AFS directory presumably already exists. You can simply create a link from
2656     the local <emphasis role="bold">/usr/afsws</emphasis> directory to it. Follow the instructions in <link
2657     linkend="HDRWQ158">Linking /usr/afsws on an Existing System Type</link>.</para>
2658
2659     <para>If this machine is a new system type (there are no AFS machines of this type in your cell), you must first create and
2660     mount volumes to store its AFS binaries, and then create the link from <emphasis role="bold">/usr/afsws</emphasis> to the new
2661     directory. See <link linkend="HDRWQ159">Creating Binary Volumes for a New System Type</link>.</para>
2662
2663     <para>You can also store UNIX system binaries (the files normally stored in local disk directories such as <emphasis
2664     role="bold">/bin</emphasis>, <emphasis role="bold">/etc</emphasis>, and <emphasis role="bold">/lib</emphasis>) in volumes
2665     mounted under <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2666     role="bold">/</emphasis><replaceable>sysname</replaceable>. See <link linkend="HDRWQ88">Storing System Binaries in AFS</link>
2667     .</para>
2668
2669     <sect2 id="HDRWQ158">
2670       <title>Linking /usr/afsws on an Existing System Type</title>
2671
2672       <para>If this client machine is an existing system type, there is already a volume mounted in the AFS filespace that houses
2673       AFS client binaries for it. <orderedlist>
2674           <listitem>
2675             <para>Create <emphasis role="bold">/usr/afsws</emphasis> on the local disk as a symbolic link to the directory <emphasis
2676             role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/@sys/usr/afsws</emphasis>. You can
2677             specify the actual system name instead of <emphasis role="bold">@sys</emphasis> if you wish, but the advantage of using
2678             <emphasis role="bold">@sys</emphasis> is that it remains valid if you upgrade this machine to a different system type.
2679             <programlisting>
2680    # <emphasis role="bold">ln -s /afs/</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/@sys/usr/afsws  /usr/afsws</emphasis>
2681 </programlisting></para>
2682           </listitem>
2683
2684           <listitem>
2685             <para><emphasis role="bold">(Optional)</emphasis> If you believe it is helpful to your users to access the AFS documents
2686             in a certain format via a local disk directory, create <emphasis role="bold">/usr/afsdoc</emphasis> on the local disk as
2687             a symbolic link to the documentation directory in AFS (<emphasis
2688             role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2689             role="bold">/afsdoc/</emphasis><replaceable>format_name</replaceable>). <programlisting>
2690    # <emphasis role="bold">ln -s /afs/</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/afsdoc/</emphasis><replaceable>format_name</replaceable> <emphasis
2691                   role="bold">/usr/afsdoc</emphasis>
2692 </programlisting></para>
2693
2694             <para>An alternative is to create a link in each user's home directory to the <emphasis
2695             role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2696             role="bold">/afsdoc/</emphasis><replaceable>format_name</replaceable> directory.</para>
2697           </listitem>
2698         </orderedlist></para>
2699     </sect2>
2700
2701     <sect2 id="HDRWQ159">
2702       <title>Creating Binary Volumes for a New System Type</title>
2703
2704       <para>If this client machine is a new system type, you must create and mount volumes for its binaries before you can link the
2705       local <emphasis role="bold">/usr/afsws</emphasis> directory to an AFS directory.</para>
2706
2707       <para>To create and mount the volumes, you use the 
2708       <emphasis role="bold">kinit</emphasis> command to authenticate as an
2709       administrator, followed by the <emphasis role="bold">aklog</emphasis> 
2710       command to gain tokens, and then issue commands from the 
2711       <emphasis role="bold">vos</emphasis> and 
2712       <emphasis role="bold">fs</emphasis> command suites. However, the 
2713       command binaries are not yet available on this machine (by convention, 
2714       they are accessible via the <emphasis role="bold">/usr/afsws</emphasis> 
2715       link that you are about to create). You have two choices: 
2716       <itemizedlist>
2717           <listitem>
2718             <para>Perform all steps except the last one (Step <link linkend="LIWQ162">10</link>) on an existing AFS machine. On a
2719             file server machine, the <emphasis role="bold">aklog</emphasis>, <emphasis role="bold">fs</emphasis> and <emphasis
2720             role="bold">vos</emphasis> binaries reside in the <emphasis role="bold">/usr/afs/bin</emphasis> directory. On client
2721             machines, the <emphasis role="bold">aklog</emphasis> and <emphasis role="bold">fs</emphasis> binaries reside in the
2722             <emphasis role="bold">/usr/afsws/bin</emphasis> directory and the <emphasis role="bold">vos</emphasis> binary in the
2723             <emphasis role="bold">/usr/afsws/etc</emphasis> directory. Depending on how your PATH environment variable is set, you
2724             possibly need to precede the command names with a pathname.</para>
2725
2726             <para>If you work on another AFS machine, be sure to substitute the new system type name for the
2727             <replaceable>sysname</replaceable> argument in the following commands, not the system type of the machine on which you
2728             are issuing the commands.</para>
2729           </listitem>
2730
2731           <listitem>
2732             <para>Copy the necessary command binaries to a temporary location on the local disk, which enables you to perform the
2733             steps on the local machine. The following procedure installs them in the <emphasis role="bold">/tmp</emphasis> directory
2734             and removes them at the end. Depending on how your PATH environment variable is set, you possibly need to precede the
2735             command names with a pathname.</para>
2736           </listitem>
2737         </itemizedlist></para>
2738
2739       <para>Perform the following steps to create a volume for housing AFS binaries. <orderedlist>
2740           <listitem>
2741             <para>Working either on the local machine or another AFS machine, 
2742             extract the Open AFS distribtion tarball onto a directory on that 
2743             machine. The following instructions assume that you are using the
2744             <emphasis role="bold">/tmp/afsdist</emphasis> directory.</para>
2745           </listitem>
2746
2747           <listitem>
2748             <para>If working on the local machine, copy the necessary binaries to a temporary location on the local disk. Substitute
2749             a different directory name for <emphasis role="bold">/tmp</emphasis> if you wish. <programlisting>
2750    # <emphasis role="bold">cd  /tmp/afsdist/</emphasis><replaceable>new_sysname</replaceable><emphasis role="bold">/root.server/usr/afs/bin</emphasis>
2751    # <emphasis role="bold">cp -p  aklog  /tmp</emphasis>
2752    # <emphasis role="bold">cp -p  fs  /tmp</emphasis>
2753    # <emphasis role="bold">cp -p  vos  /tmp</emphasis>
2754 </programlisting></para>
2755           </listitem>
2756
2757           <listitem>
2758             <para>Authenticate as the user <emphasis role="bold">admin</emphasis>. 
2759 <programlisting>
2760    # <emphasis role="bold">kinit admin</emphasis>
2761    Password: <replaceable>admin_password</replaceable>
2762    # <emphasis role="bold">aklog</emphasis>
2763 </programlisting></para>
2764           </listitem>
2765
2766           <listitem>
2767             <para><anchor id="LIWQ160" />Issue the <emphasis role="bold">vos create</emphasis> command to create volumes for storing
2768             the AFS client binaries for this system type. The following example instruction creates volumes called
2769             <replaceable>sysname</replaceable>, <replaceable>sysname</replaceable>.<emphasis role="bold">usr</emphasis>, and
2770             <replaceable>sysname</replaceable>.<emphasis role="bold">usr.afsws</emphasis>. Refer to the <emphasis>OpenAFS Release
2771             Notes</emphasis> to learn the proper value of <replaceable>sysname</replaceable> for this system type. <programlisting>
2772    # <emphasis role="bold">vos create</emphasis> &lt;<replaceable>machine name</replaceable>&gt; &lt;<replaceable>partition name</replaceable>&gt; <replaceable>sysname</replaceable>
2773    # <emphasis role="bold">vos create</emphasis> &lt;<replaceable>machine name</replaceable>&gt; &lt;<replaceable>partition name</replaceable>&gt; <replaceable>sysname</replaceable><emphasis
2774                   role="bold">.usr</emphasis>
2775    # <emphasis role="bold">vos create</emphasis> &lt;<replaceable>machine name</replaceable>&gt; &lt;<replaceable>partition name</replaceable>&gt; <replaceable>sysname</replaceable><emphasis
2776                   role="bold">.usr.afsws</emphasis>
2777 </programlisting></para>
2778           </listitem>
2779
2780           <listitem>
2781             <para>Issue the <emphasis role="bold">fs mkmount</emphasis> command to mount the newly created volumes. Because the
2782             <emphasis role="bold">root.cell</emphasis> volume is replicated, you must precede the <emphasis>cellname</emphasis> part
2783             of the pathname with a period to specify the read/write mount point, as shown. Then issue the <emphasis role="bold">vos
2784             release</emphasis> command to release a new replica of the <emphasis role="bold">root.cell</emphasis> volume, and the
2785             <emphasis role="bold">fs checkvolumes</emphasis> command to force the local Cache Manager to access them.
2786             <programlisting>
2787    # <emphasis role="bold">fs mkmount -dir /afs/.</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/</emphasis><replaceable>sysname</replaceable> <emphasis
2788                   role="bold">-vol</emphasis> <replaceable>sysname</replaceable>
2789    # <emphasis role="bold">fs mkmount -dir /afs/.</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/</emphasis><replaceable>sysname</replaceable><emphasis
2790                   role="bold">/usr</emphasis>  <emphasis role="bold">-vol</emphasis> <replaceable>sysname</replaceable><emphasis
2791                   role="bold">.usr</emphasis>
2792    # <emphasis role="bold">fs mkmount -dir /afs/.</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/</emphasis><replaceable>sysname</replaceable><emphasis
2793                   role="bold">/usr/afsws</emphasis> <emphasis role="bold">-vol</emphasis> <replaceable>sysname</replaceable><emphasis
2794                   role="bold">.usr.afsws</emphasis>
2795    # <emphasis role="bold">vos release root.cell</emphasis>
2796    # <emphasis role="bold">fs checkvolumes</emphasis>
2797 </programlisting></para>
2798           </listitem>
2799
2800           <listitem>
2801             <para>Issue the <emphasis role="bold">fs setacl</emphasis> command to grant the <emphasis role="bold">l</emphasis>
2802             (<emphasis role="bold">lookup</emphasis>) and <emphasis role="bold">r</emphasis> (<emphasis role="bold">read</emphasis>)
2803             permissions to the <emphasis role="bold">system:anyuser</emphasis> group on each new directory's ACL. <programlisting>
2804    # <emphasis role="bold">cd /afs/.</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/</emphasis><replaceable>sysname</replaceable>
2805    # <emphasis role="bold">fs setacl  -dir  .  usr  usr/afsws  -acl  system:anyuser rl</emphasis> 
2806 </programlisting></para>
2807           </listitem>
2808
2809           <listitem>
2810             <para>Issue the <emphasis role="bold">fs setquota</emphasis> command to set an unlimited quota on the volume mounted at
2811             the <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2812             role="bold">/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/usr/afsws</emphasis> directory. This
2813             enables you to copy all of the appropriate files from the CD-ROM into the volume without exceeding the volume's
2814             quota.</para>
2815
2816             <para>If you wish, you can set the volume's quota to a finite value after you complete the copying operation. At that
2817             point, use the <emphasis role="bold">vos examine</emphasis> command to determine how much space the volume is occupying.
2818             Then issue the <emphasis role="bold">fs setquota</emphasis> command to set a quota that is slightly larger.</para>
2819
2820             <programlisting>
2821    # <emphasis role="bold">fs setquota /afs/.</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/</emphasis><replaceable>sysname</replaceable><emphasis
2822                 role="bold">/usr/afsws  0</emphasis>
2823 </programlisting>
2824           </listitem>
2825
2826           <listitem>
2827             <para><anchor id="LIWQ161" />Copy the contents of the indicated 
2828             directories from the OpenAFS binary distribution into the 
2829             <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2830             role="bold">/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/usr/afsws</emphasis> directory.
2831             <programlisting>
2832    # <emphasis role="bold">cd /afs/.</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/</emphasis><replaceable>sysname</replaceable><emphasis
2833                   role="bold">/usr/afsws</emphasis>
2834    # <emphasis role="bold">cp -rp /cdrom/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/bin  .</emphasis>
2835    # <emphasis role="bold">cp -rp /cdrom/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/etc  .</emphasis>
2836    # <emphasis role="bold">cp -rp /cdrom/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/include  .</emphasis>
2837    # <emphasis role="bold">cp -rp /cdrom/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/lib  .</emphasis>
2838 </programlisting></para>
2839           </listitem>
2840
2841           <listitem>
2842             <para>Issue the <emphasis role="bold">fs setacl</emphasis> command 
2843             to set the ACL on each directory appropriately. If you wish to 
2844             enable access to the software for locally authenticated users only, 
2845             set the ACL on the <emphasis role="bold">etc</emphasis>, 
2846             <emphasis role="bold">include</emphasis>, and 
2847             <emphasis role="bold">lib</emphasis> subdirectories to grant the 
2848             <emphasis role="bold">l</emphasis> and 
2849             <emphasis role="bold">r</emphasis> permissions to the 
2850             <emphasis role="bold">system:authuser</emphasis> group rather than 
2851             the <emphasis role="bold">system:anyuser</emphasis> group. The
2852             <emphasis role="bold">system:anyuser</emphasis> group must retain 
2853             the <emphasis role="bold">l</emphasis> and 
2854             <emphasis role="bold">r</emphasis> permissions on the 
2855             <emphasis role="bold">bin</emphasis> subdirectory to enable 
2856             unauthenticated users to access the 
2857             <emphasis role="bold">aklog</emphasis> binary. 
2858 <programlisting>
2859    # <emphasis role="bold">cd /afs/.</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/</emphasis><replaceable>sysname</replaceable><emphasis
2860                   role="bold">/usr/afsws</emphasis>
2861    # <emphasis role="bold">fs setacl  -dir etc include lib  -acl  system:authuser rl</emphasis>  \
2862               <emphasis role="bold">system:anyuser none</emphasis>
2863 </programlisting></para>
2864           </listitem>
2865
2866           <listitem>
2867             <para><anchor id="LIWQ162" />Perform this step on the new client machine even if you have performed the previous steps
2868             on another machine. Create <emphasis role="bold">/usr/afsws</emphasis> on the local disk as a symbolic link to the
2869             directory <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2870             role="bold">/@sys/usr/afsws</emphasis>. You can specify the actual system name instead of <emphasis
2871             role="bold">@sys</emphasis> if you wish, but the advantage of using <emphasis role="bold">@sys</emphasis> is that it
2872             remains valid if you upgrade this machine to a different system type. <programlisting>
2873    # <emphasis role="bold">ln -s /afs/</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/@sys/usr/afsws  /usr/afsws</emphasis>
2874 </programlisting></para>
2875           </listitem>
2876
2877           <listitem>
2878             <para><emphasis role="bold">(Optional)</emphasis> To enable users to issue commands from the AFS suites (such as
2879             <emphasis role="bold">fs</emphasis>) without having to specify a pathname to their binaries, include the <emphasis
2880             role="bold">/usr/afsws/bin</emphasis> and <emphasis role="bold">/usr/afsws/etc</emphasis> directories in the PATH
2881             environment variable you define in each user's shell initialization file (such as <emphasis
2882             role="bold">.cshrc</emphasis>).</para>
2883           </listitem>
2884
2885           <listitem>
2886             <para><emphasis role="bold">(Optional)</emphasis> If you believe it is helpful to your users to access the AFS documents
2887             in a certain format via a local disk directory, create <emphasis role="bold">/usr/afsdoc</emphasis> on the local disk as
2888             a symbolic link to the documentation directory in AFS (<emphasis
2889             role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2890             role="bold">/afsdoc/</emphasis><replaceable>format_name</replaceable>). <programlisting>
2891    # <emphasis role="bold">ln -s /afs/</emphasis><replaceable>cellname</replaceable><emphasis role="bold">/afsdoc/</emphasis><replaceable>format_name</replaceable> <emphasis
2892                   role="bold">/usr/afsdoc</emphasis>
2893 </programlisting></para>
2894
2895             <para>An alternative is to create a link in each user's home directory to the <emphasis
2896             role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2897             role="bold">/afsdoc/</emphasis><replaceable>format_name</replaceable> directory.</para>
2898           </listitem>
2899
2900           <listitem>
2901             <para><emphasis role="bold">(Optional)</emphasis> If working on the local machine, remove the AFS binaries from the
2902             temporary location. They are now accessible in the <emphasis role="bold">/usr/afsws</emphasis> directory.
2903             <programlisting>
2904    # <emphasis role="bold">cd  /tmp</emphasis>
2905    # <emphasis role="bold">rm  klog  fs  vos</emphasis>
2906 </programlisting></para>
2907           </listitem>
2908         </orderedlist></para>
2909     </sect2>
2910   </sect1>
2911 </chapter>