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