1 <?xml version="1.0" encoding="UTF-8"?>
3 <title>Installing Additional Server Machines</title>
6 <primary>instructions</primary>
8 <secondary>file server machine after first</secondary>
12 <primary>installing</primary>
14 <secondary>file server machine after first</secondary>
18 <primary>server machine after first</primary>
20 <see>file server machine, additional</see>
23 <para>Instructions for the following procedures appear in the indicated section of this chapter. <itemizedlist>
25 <para><link linkend="HDRWQ100">Installing an Additional File Server Machine</link></para>
29 <para><link linkend="HDRWQ114">Installing Database Server Functionality</link></para>
33 <para><link linkend="HDRWQ125">Removing Database Server Functionality</link></para>
35 </itemizedlist></para>
37 <para>The instructions make the following assumptions. <itemizedlist>
39 <para>You have already installed your cell's first file server machine by following the instructions in <link
40 linkend="HDRWQ17">Installing the First AFS Machine</link></para>
44 <para>You are logged in as the local superuser <emphasis role="bold">root</emphasis></para>
48 <para>You are working at the console</para>
52 <para>A standard version of one of the operating systems supported by the current version of AFS is running on the
57 <para>You can access the data on the AFS CD-ROMs, either through a local CD-ROM drive or via an NFS mount of a CD-ROM drive
58 attached to a machine that is accessible by network</para>
60 </itemizedlist></para>
63 <primary>requirements</primary>
65 <secondary>file server machine (additional)</secondary>
69 <title>Installing an Additional File Server Machine</title>
71 <para>The procedure for installing a new file server machine is similar to installing the first file server machine in your
72 cell. There are a few parts of the installation that differ depending on whether the machine is the same AFS system type as an
73 existing file server machine or is the first file server machine of its system type in your cell. The differences mostly concern
74 the source for the needed binaries and files, and what portions of the Update Server you install: <itemizedlist>
76 <para>On a new system type, you must load files and binaries from the AFS CD-ROM. You install the server portion of the
77 Update Server to make this machine the binary distribution machine for its system type.</para>
81 <para>On an existing system type, you can copy files and binaries from a previously installed file server machine, rather
82 than from the CD-ROM. You install the client portion of the Update Server to accept updates of binaries, because a
83 previously installed machine of this type was installed as the binary distribution machine.</para>
85 </itemizedlist></para>
87 <para>These instructions are brief; for more detailed information, refer to the corresponding steps in <link
88 linkend="HDRWQ17">Installing the First AFS Machine</link>. <indexterm>
89 <primary>overview</primary>
91 <secondary>installing server machine after first</secondary>
94 <para>To install a new file server machine, perform the following procedures: <orderedlist>
96 <para>Copy needed binaries and files onto this machine's local disk</para>
100 <para>Incorporate AFS modifications into the kernel</para>
104 <para>Configure partitions for storing volumes</para>
108 <para>Replace the standard <emphasis role="bold">fsck</emphasis> utility with the AFS-modified version on some system
113 <para>Start the Basic OverSeer (BOS) Server</para>
117 <para>Start the appropriate portion of the Update Server</para>
121 <para>Start the <emphasis role="bold">fs</emphasis> process, which incorporates three component processes: the File
122 Server, Volume Server, and Salvager</para>
126 <para>Start the controller process (called <emphasis role="bold">runntp</emphasis>) for the Network Time Protocol Daemon,
127 which synchronizes clocks</para>
129 </orderedlist></para>
131 <para>After completing the instructions in this section, you can install database server functionality on the machine according
132 to the instructions in <link linkend="HDRWQ114">Installing Database Server Functionality</link>. <indexterm>
133 <primary>CD-ROM</primary>
135 <secondary>creating /cdrom directory</secondary>
137 <tertiary>server machine after first</tertiary>
138 </indexterm> <indexterm>
139 <primary>cdrom directory</primary>
141 <secondary>server machine after first</secondary>
142 </indexterm> <indexterm>
143 <primary>file server machine, additional</primary>
145 <secondary>/cdrom directory</secondary>
146 </indexterm> <indexterm>
147 <primary>creating</primary>
149 <secondary>/cdrom directory</secondary>
151 <tertiary>server machine after first</tertiary>
152 </indexterm> <indexterm>
153 <primary>usr/afs directory</primary>
155 <secondary>server machine after first</secondary>
156 </indexterm> <indexterm>
157 <primary>file server machine, additional</primary>
159 <secondary>/usr/afs directory</secondary>
160 </indexterm> <indexterm>
161 <primary>creating</primary>
163 <secondary>/usr/afs directory</secondary>
165 <tertiary>server machine after first</tertiary>
166 </indexterm> <indexterm>
167 <primary>usr/afs/bin directory</primary>
169 <secondary>server machine after first</secondary>
170 </indexterm> <indexterm>
171 <primary>file server machine, additional</primary>
173 <secondary>/usr/afs/bin directory</secondary>
174 </indexterm> <indexterm>
175 <primary>creating</primary>
177 <secondary>/usr/afs/bin directory</secondary>
179 <tertiary>server machine after first</tertiary>
180 </indexterm> <indexterm>
181 <primary>usr/vice/etc directory</primary>
183 <secondary>server machine after first</secondary>
184 </indexterm> <indexterm>
185 <primary>file server machine, additional</primary>
187 <secondary>/usr/vice/etc directory</secondary>
188 </indexterm> <indexterm>
189 <primary>creating</primary>
191 <secondary>/usr/vice/etc directory</secondary>
193 <tertiary>server machine after first</tertiary>
196 <sect2 id="Header_99">
197 <title>Creating AFS Directories and Performing Platform-Specific Procedures</title>
199 <para>Create the <emphasis role="bold">/usr/afs</emphasis> and <emphasis role="bold">/usr/vice/etc</emphasis> directories on
200 the local disk. Subsequent instructions copy files from the AFS distribution CD-ROM into them, at the appropriate point for
201 each system type.</para>
204 # <emphasis role="bold">mkdir /usr/afs</emphasis>
205 # <emphasis role="bold">mkdir /usr/afs/bin</emphasis>
206 # <emphasis role="bold">mkdir /usr/vice</emphasis>
207 # <emphasis role="bold">mkdir /usr/vice/etc</emphasis>
208 # <emphasis role="bold">mkdir /cdrom</emphasis>
211 <para>As on the first file server machine, the initial procedures in installing an additional file server machine vary a good
212 deal from platform to platform. For convenience, the following sections group together all of the procedures for a system
213 type. Most of the remaining procedures are the same on every system type, but differences are noted as appropriate. The
214 initial procedures are the following. <itemizedlist>
216 <para>Incorporate AFS modifications into the kernel, either by using a dynamic kernel loader program or by building a
217 new static kernel</para>
221 <para>Configure server partitions to house AFS volumes</para>
225 <para>Replace the operating system vendor's <emphasis role="bold">fsck</emphasis> program with a version that recognizes
227 <primary>file server machine, additional</primary>
229 <secondary>AFS login</secondary>
231 <see>first AFS machine</see>
236 <para>If the machine is to remain an AFS client machine, modify the machine's authentication system so that users obtain
237 an AFS token as they log into the local file system. (For this procedure only, the instructions direct you to the
238 platform-specific section in <link linkend="HDRWQ17">Installing the First AFS Machine</link>.)</para>
240 </itemizedlist></para>
242 <para>To continue, proceed to the section for this system type: <itemizedlist>
244 <para><link linkend="HDRWQ101">Getting Started on AIX Systems</link></para>
248 <para><link linkend="HDRWQ103">Getting Started on HP-UX Systems</link></para>
252 <para><link linkend="HDRWQ104">Getting Started on IRIX Systems</link></para>
256 <para><link linkend="HDRWQ106">Getting Started on Linux Systems</link></para>
260 <para><link linkend="HDRWQ107">Getting Started on Solaris Systems</link></para>
262 </itemizedlist></para>
264 <sect3 id="HDRWQ101">
265 <title>Getting Started on AIX Systems</title>
267 <para>Begin by running the AFS initialization script to call the AIX kernel extension facility, which dynamically loads AFS
268 modifications into the kernel. Then configure partitions and replace the AIX <emphasis role="bold">fsck</emphasis> program
269 with a version that correctly handles AFS volumes. <orderedlist>
271 <primary>incorporating AFS kernel extensions</primary>
273 <secondary>server machine after first</secondary>
275 <tertiary>AIX</tertiary>
279 <primary>AFS kernel extensions</primary>
281 <secondary>on server machine after first</secondary>
283 <tertiary>AIX</tertiary>
287 <primary>file server machine, additional</primary>
289 <secondary>AFS kernel extensions</secondary>
291 <tertiary>on AIX</tertiary>
295 <primary>AIX</primary>
297 <secondary>AFS kernel extensions</secondary>
299 <tertiary>on add'l server machine</tertiary>
303 <para>Mount the AFS CD-ROM for AIX on the local <emphasis role="bold">/cdrom</emphasis> directory. For instructions on
304 mounting CD-ROMs (either locally or remotely via NFS), see your AIX documentation. Then change directory as indicated.
306 # <emphasis role="bold">cd /cdrom/rs_aix42/root.client/usr/vice/etc</emphasis>
307 </programlisting></para>
311 <para>Copy the AFS kernel library files to the local <emphasis role="bold">/usr/vice/etc/dkload</emphasis> directory,
312 and the AFS initialization script to the <emphasis role="bold">/etc</emphasis> directory. <programlisting>
313 # <emphasis role="bold">cp -rp dkload /usr/vice/etc</emphasis>
314 # <emphasis role="bold">cp -p rc.afs /etc/rc.afs</emphasis>
315 </programlisting></para>
319 <para>Edit the <emphasis role="bold">/etc/rc.afs</emphasis> script, setting the <computeroutput>NFS</computeroutput>
320 variable as indicated.</para>
322 <para>If the machine is not to function as an NFS/AFS Translator, set the <computeroutput>NFS</computeroutput>
323 variable as follows.</para>
329 <para>If the machine is to function as an NFS/AFS Translator and is running AIX 4.2.1 or higher, set the
330 <computeroutput>NFS</computeroutput> variable as follows. Note that NFS must already be loaded into the kernel, which
331 happens automatically on systems running AIX 4.1.1 and later, as long as the file <emphasis
332 role="bold">/etc/exports</emphasis> exists.</para>
340 <para>Invoke the <emphasis role="bold">/etc/rc.afs</emphasis> script to load AFS modifications into the kernel. You
341 can ignore any error messages about the inability to start the BOS Server or the Cache Manager or AFS client.
343 # <emphasis role="bold">/etc/rc.afs</emphasis>
344 </programlisting> <indexterm>
345 <primary>configuring</primary>
347 <secondary>AFS server partition on server machine after first</secondary>
349 <tertiary>AIX</tertiary>
350 </indexterm> <indexterm>
351 <primary>AFS server partition</primary>
353 <secondary>configuring on server machine after first</secondary>
355 <tertiary>AIX</tertiary>
356 </indexterm> <indexterm>
357 <primary>file server machine, additional</primary>
359 <secondary>AFS server partition</secondary>
361 <tertiary>on AIX</tertiary>
362 </indexterm> <indexterm>
363 <primary>AIX</primary>
365 <secondary>AFS server partition</secondary>
367 <tertiary>on add'l server machine</tertiary>
372 <para>Create a directory called <emphasis role="bold">/vicep</emphasis><replaceable>xx</replaceable> for each AFS
373 server partition you are configuring (there must be at least one). Repeat the command for each partition.
375 # <emphasis role="bold">mkdir /vicep</emphasis><replaceable>xx</replaceable>
376 </programlisting></para>
380 <para>Use the <emphasis role="bold">SMIT</emphasis> program to create a journaling file system on each partition to be
381 configured as an AFS server partition.</para>
385 <para>Mount each partition at one of the <emphasis role="bold">/vicep</emphasis><replaceable>xx</replaceable>
386 directories. Choose one of the following three methods: <itemizedlist>
388 <para>Use the <emphasis role="bold">SMIT</emphasis> program</para>
392 <para>Use the <emphasis role="bold">mount -a</emphasis> command to mount all partitions at once</para>
396 <para>Use the <emphasis role="bold">mount</emphasis> command on each partition in turn</para>
398 </itemizedlist></para>
400 <para>Also configure the partitions so that they are mounted automatically at each reboot. For more information, refer
401 to the AIX documentation. <indexterm>
402 <primary>replacing fsck program</primary>
404 <secondary>server machine after first</secondary>
406 <tertiary>AIX</tertiary>
407 </indexterm> <indexterm>
408 <primary>fsck program</primary>
410 <secondary>on server machine after first</secondary>
412 <tertiary>AIX</tertiary>
413 </indexterm> <indexterm>
414 <primary>file server machine, additional</primary>
416 <secondary>fsck program</secondary>
418 <tertiary>on AIX</tertiary>
419 </indexterm> <indexterm>
420 <primary>AIX</primary>
422 <secondary>fsck program</secondary>
424 <tertiary>on add'l server machine</tertiary>
429 <para>Move the AIX <emphasis role="bold">fsck</emphasis> program helper to a safe location and install the version
430 from the AFS distribution in its place. The AFS CD-ROM must still be mounted at the <emphasis
431 role="bold">/cdrom</emphasis> directory. <programlisting>
432 # <emphasis role="bold">cd /sbin/helpers</emphasis>
433 # <emphasis role="bold">mv v3fshelper v3fshelper.noafs</emphasis>
434 # <emphasis role="bold">cp -p /cdrom/rs_aix42/root.server/etc/v3fshelper v3fshelper</emphasis>
435 </programlisting></para>
439 <para>If the machine is to remain an AFS client, incorporate AFS into its authentication system, following the
440 instructions in <link linkend="HDRWQ25">Enabling AFS Login on AIX Systems</link>.</para>
444 <para>Proceed to <link linkend="HDRWQ108">Starting Server Programs</link>.</para>
446 </orderedlist></para>
449 <sect3 id="HDRWQ103">
450 <title>Getting Started on HP-UX Systems</title>
452 <para>Begin by building AFS modifications into the kernel, then configure server partitions and replace the HP-UX <emphasis
453 role="bold">fsck</emphasis> program with a version that correctly handles AFS volumes.</para>
455 <para>If the machine's hardware and software configuration exactly matches another HP-UX machine on which AFS is already
456 built into the kernel, you can copy the kernel from that machine to this one. In general, however, it is better to build AFS
457 modifications into the kernel on each machine according to the following instructions. <orderedlist>
459 <primary>incorporating AFS kernel extensions</primary>
461 <secondary>server machine after first</secondary>
463 <tertiary>HP-UX</tertiary>
467 <primary>AFS kernel extensions</primary>
469 <secondary>on server machine after first</secondary>
471 <tertiary>HP-UX</tertiary>
475 <primary>file server machine, additional</primary>
477 <secondary>AFS kernel extensions</secondary>
479 <tertiary>on HP-UX</tertiary>
483 <primary>HP-UX</primary>
485 <secondary>AFS-modified kernel</secondary>
487 <tertiary>on add'l server machine</tertiary>
491 <para>Move the existing kernel-related files to a safe location. <programlisting>
492 # <emphasis role="bold">cp /stand/vmunix /stand/vmunix.noafs</emphasis>
493 # <emphasis role="bold">cp /stand/system /stand/system.noafs</emphasis>
494 </programlisting></para>
498 <para>Mount the AFS CD-ROM for HP-UX on the local <emphasis role="bold">/cdrom</emphasis> directory. For instructions
499 on mounting CD-ROMs (either locally or remotely via NFS), see your HP-UX documentation. Then change directory as
500 indicated. <programlisting>
501 # <emphasis role="bold">cd /cdrom/hp_ux110/root.client</emphasis>
502 </programlisting></para>
506 <para>Copy the AFS initialization file to the local directory for initialization files (by convention, <emphasis
507 role="bold">/sbin/init.d</emphasis> on HP-UX machines). Note the removal of the <emphasis role="bold">.rc</emphasis>
508 extension as you copy the file. <programlisting>
509 # <emphasis role="bold">cp usr/vice/etc/afs.rc /sbin/init.d/afs</emphasis>
510 </programlisting></para>
514 <para>Copy the file <emphasis role="bold">afs.driver</emphasis> to the local <emphasis
515 role="bold">/usr/conf/master.d</emphasis> directory, changing its name to <emphasis role="bold">afs</emphasis> as you
517 # <emphasis role="bold">cp usr/vice/etc/afs.driver /usr/conf/master.d/afs</emphasis>
518 </programlisting></para>
522 <para>Copy the AFS kernel module to the local <emphasis role="bold">/usr/conf/lib</emphasis> directory.</para>
524 <para>If the machine's kernel supports NFS server functionality:</para>
527 # <emphasis role="bold">cp bin/libafs.a /usr/conf/lib</emphasis>
530 <para>If the machine's kernel does not support NFS server functionality, change the file's name as you copy it:</para>
533 # <emphasis role="bold">cp bin/libafs.nonfs.a /usr/conf/lib/libafs.a</emphasis>
538 <para>Incorporate the AFS driver into the kernel, either using the <emphasis role="bold">SAM</emphasis> program or a
539 series of individual commands. <itemizedlist>
541 <para>To use the <emphasis role="bold">SAM</emphasis> program: <orderedlist>
543 <para>Invoke the <emphasis role="bold">SAM</emphasis> program, specifying the hostname of the local
544 machine as <replaceable>local_hostname</replaceable>. The <emphasis role="bold">SAM</emphasis> graphical
545 user interface pops up. <programlisting>
546 # <emphasis role="bold">sam -display</emphasis> <replaceable>local_hostname</replaceable><emphasis role="bold">:0</emphasis>
547 </programlisting></para>
551 <para>Choose the <emphasis role="bold">Kernel Configuration</emphasis> icon, then the <emphasis
552 role="bold">Drivers</emphasis> icon. From the list of drivers, select <emphasis
553 role="bold">afs</emphasis>.</para>
557 <para>Open the pull-down <emphasis role="bold">Actions</emphasis> menu and choose the <emphasis
558 role="bold">Add Driver to Kernel</emphasis> option.</para>
562 <para>Open the <emphasis role="bold">Actions</emphasis> menu again and choose the <emphasis
563 role="bold">Create a New Kernel</emphasis> option.</para>
567 <para>Confirm your choices by choosing <emphasis role="bold">Yes</emphasis> and <emphasis
568 role="bold">OK</emphasis> when prompted by subsequent pop-up windows. The <emphasis
569 role="bold">SAM</emphasis> program builds the kernel and reboots the system.</para>
573 <para>Login again as the superuser <emphasis role="bold">root</emphasis>. <programlisting>
574 login: <emphasis role="bold">root</emphasis>
575 Password: <replaceable>root_password</replaceable>
576 </programlisting></para>
578 </orderedlist></para>
582 <para>To use individual commands: <orderedlist>
584 <para>Edit the file <emphasis role="bold">/stand/system</emphasis>, adding an entry for <emphasis
585 role="bold">afs</emphasis> to the <computeroutput>Subsystems</computeroutput> section.</para>
589 <para>Change to the <emphasis role="bold">/stand/build</emphasis> directory and issue the <emphasis
590 role="bold">mk_kernel</emphasis> command to build the kernel. <programlisting>
591 # <emphasis role="bold">cd /stand/build</emphasis>
592 # <emphasis role="bold">mk_kernel</emphasis>
593 </programlisting></para>
597 <para>Move the new kernel to the standard location (<emphasis role="bold">/stand/vmunix</emphasis>),
598 reboot the machine to start using it, and login again as the superuser <emphasis
599 role="bold">root</emphasis>. <programlisting>
600 # <emphasis role="bold">mv /stand/build/vmunix_test /stand/vmunix</emphasis>
601 # <emphasis role="bold">cd /</emphasis>
602 # <emphasis role="bold">shutdown -r now</emphasis>
603 login: <emphasis role="bold">root</emphasis>
604 Password: <replaceable>root_password</replaceable>
605 </programlisting></para>
607 </orderedlist></para>
609 </itemizedlist></para>
612 <primary>configuring</primary>
614 <secondary>AFS server partition on server machine after first</secondary>
616 <tertiary>HP-UX</tertiary>
620 <primary>AFS server partition</primary>
622 <secondary>configuring on server machine after first</secondary>
624 <tertiary>HP-UX</tertiary>
628 <primary>file server machine, additional</primary>
630 <secondary>AFS server partition</secondary>
632 <tertiary>on HP-UX</tertiary>
636 <primary>HP-UX</primary>
638 <secondary>AFS server partition</secondary>
640 <tertiary>on add'l server machine</tertiary>
645 <para>Create a directory called <emphasis role="bold">/vicep</emphasis><replaceable>xx</replaceable> for each AFS
646 server partition you are configuring (there must be at least one). Repeat the command for each partition.
648 # <emphasis role="bold">mkdir /vicep</emphasis><replaceable>xx</replaceable>
649 </programlisting></para>
653 <para>Use the <emphasis role="bold">SAM</emphasis> program to create a file system on each partition. For
654 instructions, consult the HP-UX documentation.</para>
658 <para>On some HP-UX systems that use logical volumes, the <emphasis role="bold">SAM</emphasis> program automatically
659 mounts the partitions. If it has not, mount each partition by issuing either the <emphasis role="bold">mount
660 -a</emphasis> command to mount all partitions at once or the <emphasis role="bold">mount</emphasis> command to mount
661 each partition in turn. <indexterm>
662 <primary>replacing fsck program</primary>
664 <secondary>server machine after first</secondary>
666 <tertiary>HP-UX</tertiary>
667 </indexterm> <indexterm>
668 <primary>fsck program</primary>
670 <secondary>on server machine after first</secondary>
672 <tertiary>HP-UX</tertiary>
673 </indexterm> <indexterm>
674 <primary>file server machine, additional</primary>
676 <secondary>fsck program</secondary>
678 <tertiary>on HP-UX</tertiary>
679 </indexterm> <indexterm>
680 <primary>HP-UX</primary>
682 <secondary>fsck program</secondary>
684 <tertiary>on add'l server machine</tertiary>
689 <para>Create the command configuration file <emphasis role="bold">/sbin/lib/mfsconfig.d/afs</emphasis>. Use a text
690 editor to place the indicated two lines in it: <programlisting>
692 fsck 0 m,P,p,d,f,b:c:y,n,Y,N,q,
693 </programlisting></para>
697 <para>Create and change directory to an AFS-specific command directory called <emphasis
698 role="bold">/sbin/fs/afs</emphasis>. <programlisting>
699 # <emphasis role="bold">mkdir /sbin/fs/afs</emphasis>
700 # <emphasis role="bold">cd /sbin/fs/afs</emphasis>
701 </programlisting></para>
705 <para>Copy the AFS-modified version of the <emphasis role="bold">fsck</emphasis> program (the <emphasis
706 role="bold">vfsck</emphasis> binary) and related files from the distribution directory to the new AFS-specific command
707 directory. <programlisting>
708 # <emphasis role="bold">cp -p /cdrom/hp_ux110/root.server/etc/* .</emphasis>
709 </programlisting></para>
713 <para>Change the <emphasis role="bold">vfsck</emphasis> binary's name to <emphasis role="bold">fsck</emphasis> and set
714 the mode bits appropriately on all of the files in the <emphasis role="bold">/sbin/fs/afs</emphasis> directory.
716 # <emphasis role="bold">mv vfsck fsck</emphasis>
717 # <emphasis role="bold">chmod 755 *</emphasis>
718 </programlisting></para>
722 <para>Edit the <emphasis role="bold">/etc/fstab</emphasis> file, changing the file system type for each AFS server
723 partition from <computeroutput>hfs</computeroutput> to <computeroutput>afs</computeroutput>. This ensures that the
724 AFS-modified <emphasis role="bold">fsck</emphasis> program runs on the appropriate partitions.</para>
726 <para>The sixth line in the following example of an edited file shows an AFS server partition, <emphasis
727 role="bold">/vicepa</emphasis>.</para>
730 /dev/vg00/lvol1 / hfs defaults 0 1
731 /dev/vg00/lvol4 /opt hfs defaults 0 2
732 /dev/vg00/lvol5 /tmp hfs defaults 0 2
733 /dev/vg00/lvol6 /usr hfs defaults 0 2
734 /dev/vg00/lvol8 /var hfs defaults 0 2
735 /dev/vg00/lvol9 /vicepa afs defaults 0 2
736 /dev/vg00/lvol7 /usr/vice/cache hfs defaults 0 2
741 <para>If the machine is to remain an AFS client, incorporate AFS into its authentication system, following the
742 instructions in <link linkend="HDRWQ35">Enabling AFS Login on HP-UX Systems</link>.</para>
746 <para>Proceed to <link linkend="HDRWQ108">Starting Server Programs</link>.</para>
748 </orderedlist></para>
751 <sect3 id="HDRWQ104">
752 <title>Getting Started on IRIX Systems</title>
754 <para>Begin by incorporating AFS modifications into the kernel. Either use the <emphasis role="bold">ml</emphasis> dynamic
755 loader program, or build a static kernel. Then configure partitions to house AFS volumes. AFS supports use of both EFS and
756 XFS partitions for housing AFS volumes. SGI encourages use of XFS partitions. <indexterm>
757 <primary>file server machine, additional</primary>
759 <secondary>fsck program</secondary>
761 <tertiary>on IRIX</tertiary>
762 </indexterm> <indexterm>
763 <primary>fsck program</primary>
765 <secondary>on server machine after first</secondary>
767 <tertiary>IRIX</tertiary>
770 <para>You do not need to replace IRIX <emphasis role="bold">fsck</emphasis> program, because the version that SGI
771 distributes handles AFS volumes properly. <orderedlist>
773 <primary>incorporating AFS kernel extensions</primary>
775 <secondary>server machine after first</secondary>
777 <tertiary>IRIX</tertiary>
781 <primary>AFS kernel extensions</primary>
783 <secondary>on server machine after first</secondary>
785 <tertiary>IRIX</tertiary>
789 <primary>file server machine, additional</primary>
791 <secondary>AFS kernel extensions</secondary>
793 <tertiary>on IRIX</tertiary>
797 <para>Prepare for incorporating AFS into the kernel by performing the following procedures. <orderedlist>
799 <para>Mount the AFS CD-ROM for IRIX on the <emphasis role="bold">/cdrom</emphasis> directory. For instructions
800 on mounting CD-ROMs (either locally or remotely via NFS), see your IRIX documentation. Then change directory as
801 indicated. <programlisting>
802 # <emphasis role="bold">cd /cdrom/sgi_65/root.client</emphasis>
803 </programlisting></para>
807 <para>Copy the AFS initialization script to the local directory for initialization files (by convention,
808 <emphasis role="bold">/etc/init.d</emphasis> on IRIX machines). Note the removal of the <emphasis
809 role="bold">.rc</emphasis> extension as you copy the script. <programlisting>
810 # <emphasis role="bold">cp -p usr/vice/etc/afs.rc /etc/init.d/afs</emphasis>
811 </programlisting></para>
815 <para>Issue the <emphasis role="bold">uname -m</emphasis> command to determine the machine's CPU board type. The
816 <emphasis role="bold">IP</emphasis><replaceable>xx</replaceable> value in the output must match one of the
817 supported CPU board types listed in the <emphasis>OpenAFS Release Notes</emphasis> for the current version of
818 AFS. <programlisting>
819 # <emphasis role="bold">uname -m</emphasis>
820 </programlisting></para>
822 </orderedlist></para>
826 <para>Incorporate AFS into the kernel, either using the <emphasis role="bold">ml</emphasis> program or by building AFS
827 modifications into a static kernel. <itemizedlist>
829 <primary>IRIX</primary>
831 <secondary>AFS kernel extensions</secondary>
833 <tertiary>on server machine after first</tertiary>
837 <para>To use the <emphasis role="bold">ml</emphasis> program: <indexterm>
838 <primary>afsml variable (IRIX)</primary>
840 <secondary>server machine after first</secondary>
841 </indexterm> <indexterm>
842 <primary>variables</primary>
844 <secondary>afsml (IRIX)</secondary>
846 <tertiary>server machine after first</tertiary>
847 </indexterm> <indexterm>
848 <primary>IRIX</primary>
850 <secondary>afsml variable</secondary>
852 <tertiary>server machine after first</tertiary>
853 </indexterm> <indexterm>
854 <primary>afsxnfs variable (IRIX)</primary>
856 <secondary>server machine after first</secondary>
857 </indexterm> <indexterm>
858 <primary>variables</primary>
860 <secondary>afsxnfs (IRIX)</secondary>
862 <tertiary>server machine after first</tertiary>
863 </indexterm> <indexterm>
864 <primary>IRIX</primary>
866 <secondary>afsxnfs variable</secondary>
868 <tertiary>server machine after first</tertiary>
869 </indexterm> <orderedlist>
871 <para>Create the local <emphasis role="bold">/usr/vice/etc/sgiload</emphasis> directory to house the AFS
872 kernel library file. <programlisting>
873 # <emphasis role="bold">mkdir /usr/vice/etc/sgiload</emphasis>
874 </programlisting></para>
878 <para>Copy the appropriate AFS kernel library file to the <emphasis
879 role="bold">/usr/vice/etc/sgiload</emphasis> directory. The <emphasis
880 role="bold">IP</emphasis><replaceable>xx</replaceable> portion of the library file name must match the
881 value previously returned by the <emphasis role="bold">uname -m</emphasis> command. Also choose the file
882 appropriate to whether the machine's kernel supports NFS server functionality (NFS must be supported for
883 the machine to act as an NFS/AFS Translator). Single- and multiprocessor machines use the same library
886 <para>(You can choose to copy all of the kernel library files into the <emphasis
887 role="bold">/usr/vice/etc/sgiload</emphasis> directory, but they require a significant amount of
890 <para>If the machine's kernel supports NFS server functionality:</para>
893 # <emphasis role="bold">cp -p usr/vice/etc/sgiload/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.o /usr/vice/etc/sgiload</emphasis>
896 <para>If the machine's kernel does not support NFS server functionality:</para>
899 # <emphasis role="bold">cp -p usr/vice/etc/sgiload/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.nonfs.o</emphasis> \
900 <emphasis role="bold">/usr/vice/etc/sgiload</emphasis>
905 <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to activate the <emphasis
906 role="bold">afsml</emphasis> configuration variable. <programlisting>
907 # <emphasis role="bold">/etc/chkconfig -f afsml on</emphasis>
908 </programlisting></para>
910 <para>If the machine is to function as an NFS/AFS Translator and the kernel supports NFS server
911 functionality, activate the <emphasis role="bold">afsxnfs</emphasis> variable.</para>
914 # <emphasis role="bold">/etc/chkconfig -f afsxnfs on</emphasis>
919 <para>Run the <emphasis role="bold">/etc/init.d/afs</emphasis> script to load AFS extensions into the
920 kernel. The script invokes the <emphasis role="bold">ml</emphasis> command, automatically determining
921 which kernel library file to use based on this machine's CPU type and the activation state of the
922 <emphasis role="bold">afsxnfs</emphasis> variable.</para>
924 <para>You can ignore any error messages about the inability to start the BOS Server or the Cache Manager
925 or AFS client.</para>
928 # <emphasis role="bold">/etc/init.d/afs start</emphasis>
933 <para>Proceed to Step <link linkend="LIWQ105">3</link>.</para>
935 </orderedlist></para>
938 <primary>IRIX</primary>
940 <secondary>AFS-modified kernel</secondary>
942 <tertiary>on add'l server machine</tertiary>
947 <para>If you prefer to build a kernel, and the machine's hardware and software configuration exactly matches
948 another IRIX machine on which AFS is already built into the kernel, you can copy the kernel from that machine to
949 this one. In general, however, it is better to build AFS modifications into the kernel on each machine according
950 to the following instructions. <orderedlist>
952 <para>Copy the kernel initialization file <emphasis role="bold">afs.sm</emphasis> to the local <emphasis
953 role="bold">/var/sysgen/system</emphasis> directory, and the kernel master file <emphasis
954 role="bold">afs</emphasis> to the local <emphasis role="bold">/var/sysgen/master.d</emphasis> directory.
956 # <emphasis role="bold">cp -p bin/afs.sm /var/sysgen/system</emphasis>
957 # <emphasis role="bold">cp -p bin/afs /var/sysgen/master.d</emphasis>
958 </programlisting></para>
962 <para>Copy the appropriate AFS kernel library file to the local file <emphasis
963 role="bold">/var/sysgen/boot/afs.a</emphasis>; the <emphasis
964 role="bold">IP</emphasis><replaceable>xx</replaceable> portion of the library file name must match the
965 value previously returned by the <emphasis role="bold">uname -m</emphasis> command. Also choose the file
966 appropriate to whether the machine's kernel supports NFS server functionality (NFS must be supported for
967 the machine to act as an NFS/AFS Translator). Single- and multiprocessor machines use the same library
970 <para>If the machine's kernel supports NFS server functionality:</para>
973 # <emphasis role="bold">cp -p bin/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.a /var/sysgen/boot/afs.a</emphasis>
976 <para>If the machine's kernel does not support NFS server functionality:</para>
979 # <emphasis role="bold">cp -p bin/libafs.IP</emphasis><replaceable>xx</replaceable><emphasis role="bold">.nonfs.a /var/sysgen/boot/afs.a</emphasis>
984 <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to deactivate the <emphasis
985 role="bold">afsml</emphasis> configuration variable. <programlisting>
986 # <emphasis role="bold">/etc/chkconfig -f afsml off</emphasis>
987 </programlisting></para>
989 <para>If the machine is to function as an NFS/AFS Translator and the kernel supports NFS server
990 functionality, activate the <emphasis role="bold">afsxnfs</emphasis> variable.</para>
993 # <emphasis role="bold">/etc/chkconfig -f afsxnfs on</emphasis>
998 <para>Copy the existing kernel file, <emphasis role="bold">/unix</emphasis>, to a safe location. Compile
999 the new kernel, which is created in the file <emphasis role="bold">/unix.install</emphasis>. It overwrites
1000 the existing <emphasis role="bold">/unix</emphasis> file when the machine reboots in the next step.
1002 # <emphasis role="bold">cp /unix /unix_noafs</emphasis>
1003 # <emphasis role="bold">autoconfig</emphasis>
1004 </programlisting></para>
1008 <para>Reboot the machine to start using the new kernel, and login again as the superuser <emphasis
1009 role="bold">root</emphasis>. <programlisting>
1010 # <emphasis role="bold">cd /</emphasis>
1011 # <emphasis role="bold">shutdown -i6 -g0 -y</emphasis>
1012 login: <emphasis role="bold">root</emphasis>
1013 Password: <replaceable>root_password</replaceable>
1014 </programlisting></para>
1016 </orderedlist></para>
1018 </itemizedlist></para>
1021 <primary>configuring</primary>
1023 <secondary>AFS server partition on server machine after first</secondary>
1025 <tertiary>IRIX</tertiary>
1029 <primary>AFS server partition</primary>
1031 <secondary>configuring on server machine after first</secondary>
1033 <tertiary>IRIX</tertiary>
1037 <primary>file server machine, additional</primary>
1039 <secondary>AFS server partition</secondary>
1041 <tertiary>on IRIX</tertiary>
1045 <primary>IRIX</primary>
1047 <secondary>AFS server partition</secondary>
1049 <tertiary>on add'l server machine</tertiary>
1054 <para><anchor id="LIWQ105" />Create a directory called <emphasis
1055 role="bold">/vicep</emphasis><replaceable>xx</replaceable> for each AFS server partition you are configuring (there
1056 must be at least one). Repeat the command for each partition. <programlisting>
1057 # <emphasis role="bold">mkdir /vicep</emphasis><replaceable>xx</replaceable>
1058 </programlisting></para>
1062 <para>Add a line with the following format to the file systems registry file, <emphasis
1063 role="bold">/etc/fstab</emphasis>, for each partition (or logical volume created with the XLV volume manager) to be
1064 mounted on one of the directories created in the previous step.</para>
1066 <para>For an XFS partition or logical volume:</para>
1069 /dev/dsk/<replaceable>disk</replaceable> /vicep<replaceable>xx</replaceable> xfs rw,raw=/dev/rdsk/<replaceable>disk</replaceable> 0 0
1072 <para>For an EFS partition:</para>
1075 /dev/dsk/<replaceable>disk</replaceable> /vicep<replaceable>xx</replaceable> efs rw,raw=/dev/rdsk/<replaceable>disk</replaceable> 0 0
1078 <para>The following are examples of an entry for each file system type:</para>
1081 /dev/dsk/dks0d2s6 /vicepa xfs rw,raw=/dev/rdsk/dks0d2s6 0 0
1082 /dev/dsk/dks0d3s1 /vicepb efs rw,raw=/dev/rdsk/dks0d3s1 0 0
1087 <para>Create a file system on each partition that is to be mounted on a <emphasis
1088 role="bold">/vicep</emphasis><replaceable>xx</replaceable> directory. The following commands are probably appropriate,
1089 but consult the IRIX documentation for more information. In both cases, <replaceable>raw_device</replaceable> is a raw
1090 device name like <emphasis role="bold">/dev/rdsk/dks0d0s0</emphasis> for a single disk partition or <emphasis
1091 role="bold">/dev/rxlv/xlv0</emphasis> for a logical volume.</para>
1093 <para>For XFS file systems, include the indicated options to configure the partition or logical volume with inodes
1094 large enough to accommodate AFS-specific information:</para>
1097 # <emphasis role="bold">mkfs -t xfs -i size=512 -l size=4000b</emphasis> <replaceable>raw_device</replaceable>
1100 <para>For EFS file systems:</para>
1103 # <emphasis role="bold">mkfs -t efs</emphasis> <replaceable>raw_device</replaceable>
1108 <para>Mount each partition by issuing either the <emphasis role="bold">mount -a</emphasis> command to mount all
1109 partitions at once or the <emphasis role="bold">mount</emphasis> command to mount each partition in turn.</para>
1113 <para><emphasis role="bold">(Optional)</emphasis> If you have configured partitions or logical volumes to use XFS,
1114 issue the following command to verify that the inodes are configured properly (are large enough to accommodate
1115 AFS-specific information). If the configuration is correct, the command returns no output. Otherwise, it specifies the
1116 command to run in order to configure each partition or logical volume properly. <programlisting>
1117 # <emphasis role="bold">/usr/afs/bin/xfs_size_check</emphasis>
1118 </programlisting></para>
1122 <para>If the machine is to remain an AFS client, incorporate AFS into its authentication system, following the
1123 instructions in <link linkend="HDRWQ40">Enabling AFS Login on IRIX Systems</link>.</para>
1127 <para>Proceed to <link linkend="HDRWQ108">Starting Server Programs</link>.</para>
1129 </orderedlist></para>
1132 <sect3 id="HDRWQ106">
1133 <title>Getting Started on Linux Systems</title>
1136 <primary>file server machine, additional</primary>
1138 <secondary>fsck program</secondary>
1140 <tertiary>on Linux</tertiary>
1144 <primary>fsck program</primary>
1146 <secondary>on server machine after first</secondary>
1148 <tertiary>Linux</tertiary>
1151 <para>Begin by running the AFS initialization script to call the <emphasis role="bold">insmod</emphasis> program, which
1152 dynamically loads AFS modifications into the kernel. Then create partitions for storing AFS volumes. You do not need to
1153 replace the Linux <emphasis role="bold">fsck</emphasis> program. <orderedlist>
1155 <primary>incorporating AFS kernel extensions</primary>
1157 <secondary>server machine after first</secondary>
1159 <tertiary>Linux</tertiary>
1163 <primary>AFS kernel extensions</primary>
1165 <secondary>on server machine after first</secondary>
1167 <tertiary>Linux</tertiary>
1171 <primary>file server machine, additional</primary>
1173 <secondary>AFS kernel extensions</secondary>
1175 <tertiary>on Linux</tertiary>
1179 <primary>Linux</primary>
1181 <secondary>AFS kernel extensions</secondary>
1183 <tertiary>on add'l server machine</tertiary>
1187 <para>Mount the AFS CD-ROM for Linux on the local <emphasis role="bold">/cdrom</emphasis> directory. For instructions
1188 on mounting CD-ROMs (either locally or remotely via NFS), see your Linux documentation. Then change directory as
1189 indicated. <programlisting>
1190 # <emphasis role="bold">cd /cdrom/i386_linux22/root.client/usr/vice/etc</emphasis>
1191 </programlisting></para>
1195 <para>Copy the AFS kernel library files to the local <emphasis role="bold">/usr/vice/etc/modload</emphasis> directory.
1196 The filenames for the libraries have the format <emphasis
1197 role="bold">libafs-</emphasis><replaceable>version</replaceable><emphasis role="bold">.o</emphasis>, where
1198 <replaceable>version</replaceable> indicates the kernel build level. The string <emphasis role="bold">.mp</emphasis>
1199 in the <replaceable>version</replaceable> indicates that the file is appropriate for machines running a multiprocessor
1200 kernel. <programlisting>
1201 # <emphasis role="bold">cp -rp modload /usr/vice/etc</emphasis>
1202 </programlisting></para>
1206 <para>Copy the AFS initialization script to the local directory for initialization files (by convention, <emphasis
1207 role="bold">/etc/rc.d/init.d</emphasis> on Linux machines). Note the removal of the <emphasis
1208 role="bold">.rc</emphasis> extension as you copy the script. <programlisting>
1209 # <emphasis role="bold">cp -p afs.rc /etc/rc.d/init.d/afs</emphasis>
1210 </programlisting></para>
1214 <para>Run the AFS initialization script to load AFS extensions into the kernel. You can ignore any error messages
1215 about the inability to start the BOS Server or the Cache Manager or AFS client. <programlisting>
1216 # <emphasis role="bold">/etc/rc.d/init.d/afs start</emphasis>
1217 </programlisting> <indexterm>
1218 <primary>configuring</primary>
1220 <secondary>AFS server partition on server machine after first</secondary>
1222 <tertiary>Linux</tertiary>
1223 </indexterm> <indexterm>
1224 <primary>AFS server partition</primary>
1226 <secondary>configuring on server machine after first</secondary>
1228 <tertiary>Linux</tertiary>
1229 </indexterm> <indexterm>
1230 <primary>file server machine, additional</primary>
1232 <secondary>AFS server partition</secondary>
1234 <tertiary>on Linux</tertiary>
1235 </indexterm> <indexterm>
1236 <primary>Linux</primary>
1238 <secondary>AFS server partition</secondary>
1240 <tertiary>on add'l server machine</tertiary>
1245 <para>Create a directory called <emphasis role="bold">/vicep</emphasis><replaceable>xx</replaceable> for each AFS
1246 server partition you are configuring (there must be at least one). Repeat the command for each partition.
1248 # <emphasis role="bold">mkdir /vicep</emphasis><replaceable>xx</replaceable>
1249 </programlisting></para>
1253 <para>Add a line with the following format to the file systems registry file, <emphasis
1254 role="bold">/etc/fstab</emphasis>, for each directory just created. The entry maps the directory name to the disk
1255 partition to be mounted on it. <programlisting>
1256 /dev/<replaceable>disk</replaceable> /vicep<replaceable>xx</replaceable> ext2 defaults 0 2
1257 </programlisting></para>
1259 <para>The following is an example for the first partition being configured.</para>
1262 /dev/sda8 /vicepa ext2 defaults 0 2
1267 <para>Create a file system on each partition that is to be mounted at a <emphasis
1268 role="bold">/vicep</emphasis><replaceable>xx</replaceable> directory. The following command is probably appropriate,
1269 but consult the Linux documentation for more information. <programlisting>
1270 # <emphasis role="bold">mkfs -v /dev/</emphasis><replaceable>disk</replaceable>
1271 </programlisting></para>
1275 <para>Mount each partition by issuing either the <emphasis role="bold">mount -a</emphasis> command to mount all
1276 partitions at once or the <emphasis role="bold">mount</emphasis> command to mount each partition in turn.</para>
1280 <para>If the machine is to remain an AFS client, incorporate AFS into its authentication system, following the
1281 instructions in <link linkend="HDRWQ44">Enabling AFS Login on Linux Systems</link>.</para>
1285 <para>Proceed to <link linkend="HDRWQ108">Starting Server Programs</link>.</para>
1287 </orderedlist></para>
1290 <sect3 id="HDRWQ107">
1291 <title>Getting Started on Solaris Systems</title>
1293 <para>Begin by running the AFS initialization script to call the <emphasis role="bold">modload</emphasis> program, which
1294 dynamically loads AFS modifications into the kernel. Then configure partitions and replace the Solaris <emphasis
1295 role="bold">fsck</emphasis> program with a version that correctly handles AFS volumes. <orderedlist>
1297 <primary>incorporating AFS kernel extensions</primary>
1299 <secondary>server machine after first</secondary>
1301 <tertiary>Solaris</tertiary>
1305 <primary>AFS kernel extensions</primary>
1307 <secondary>on server machine after first</secondary>
1309 <tertiary>Solaris</tertiary>
1313 <primary>file server machine, additional</primary>
1315 <secondary>AFS kernel extensions</secondary>
1317 <tertiary>Solaris</tertiary>
1321 <primary>Solaris</primary>
1323 <secondary>AFS kernel extensions</secondary>
1325 <tertiary>on add'l server machine</tertiary>
1329 <para>Mount the AFS CD-ROM for Solaris on the <emphasis role="bold">/cdrom</emphasis> directory. For instructions on
1330 mounting CD-ROMs (either locally or remotely via NFS), see your Solaris documentation. Then change directory as
1331 indicated. <programlisting>
1332 # <emphasis role="bold">cd /cdrom/sun4x_56/root.client/usr/vice/etc</emphasis>
1333 </programlisting></para>
1337 <para>Copy the AFS initialization script to the local directory for initialization files (by convention, <emphasis
1338 role="bold">/etc/init.d</emphasis> on Solaris machines). Note the removal of the <emphasis role="bold">.rc</emphasis>
1339 extension as you copy the script. <programlisting>
1340 # <emphasis role="bold">cp -p afs.rc /etc/init.d/afs</emphasis>
1341 </programlisting></para>
1345 <para>Copy the appropriate AFS kernel library file to the local file <emphasis
1346 role="bold">/kernel/fs/afs</emphasis>.</para>
1348 <para>If the machine is running Solaris 2.6 or the 32-bit version of Solaris 7, its kernel supports NFS server
1349 functionality, and the <emphasis role="bold">nfsd</emphasis> process is running:</para>
1352 # <emphasis role="bold">cp -p modload/libafs.o /kernel/fs/afs</emphasis>
1355 <para>If the machine is running Solaris 2.6 or the 32-bit version of Solaris 7, and its kernel does not support NFS
1356 server functionality or the <emphasis role="bold">nfsd</emphasis> process is not running:</para>
1359 # <emphasis role="bold">cp -p modload/libafs.nonfs.o /kernel/fs/afs</emphasis>
1362 <para>If the machine is running the 64-bit version of Solaris 7, its kernel supports NFS server functionality, and the
1363 <emphasis role="bold">nfsd</emphasis> process is running:</para>
1366 # <emphasis role="bold">cp -p modload/libafs64.o /kernel/fs/sparcv9/afs</emphasis>
1369 <para>If the machine is running the 64-bit version of Solaris 7, and its kernel does not support NFS server
1370 functionality or the <emphasis role="bold">nfsd</emphasis> process is not running:</para>
1373 # <emphasis role="bold">cp -p modload/libafs64.nonfs.o /kernel/fs/sparcv9/afs</emphasis>
1378 <para>Run the AFS initialization script to load AFS modifications into the kernel. You can ignore any error messages
1379 about the inability to start the BOS Server or the Cache Manager or AFS client. <programlisting>
1380 # <emphasis role="bold">/etc/init.d/afs start</emphasis>
1381 </programlisting></para>
1383 <para>When an entry called <computeroutput>afs</computeroutput> does not already exist in the local <emphasis
1384 role="bold">/etc/name_to_sysnum</emphasis> file, the script automatically creates it and reboots the machine to start
1385 using the new version of the file. If this happens, log in again as the superuser <emphasis
1386 role="bold">root</emphasis> after the reboot and run the initialization script again. This time the required entry
1387 exists in the <emphasis role="bold">/etc/name_to_sysnum</emphasis> file, and the <emphasis
1388 role="bold">modload</emphasis> program runs.</para>
1391 login: <emphasis role="bold">root</emphasis>
1392 Password: <replaceable>root_password</replaceable>
1393 # <emphasis role="bold">/etc/init.d/afs start</emphasis>
1397 <primary>replacing fsck program</primary>
1399 <secondary>server machine after first</secondary>
1401 <tertiary>Solaris</tertiary>
1405 <primary>fsck program</primary>
1407 <secondary>on server machine after first</secondary>
1409 <tertiary>Solaris</tertiary>
1413 <primary>file server machine, additional</primary>
1415 <secondary>fsck program</secondary>
1417 <tertiary>on Solaris</tertiary>
1421 <primary>Solaris</primary>
1423 <secondary>fsck program</secondary>
1425 <tertiary>on add'l server machine</tertiary>
1430 <para>Create the <emphasis role="bold">/usr/lib/fs/afs</emphasis> directory to house the AFS-modified <emphasis
1431 role="bold">fsck</emphasis> program and related files. <programlisting>
1432 # <emphasis role="bold">mkdir /usr/lib/fs/afs</emphasis>
1433 # <emphasis role="bold">cd /usr/lib/fs/afs</emphasis>
1434 </programlisting></para>
1438 <para>Copy the <emphasis role="bold">vfsck</emphasis> binary to the newly created directory, changing the name as you
1439 do so. <programlisting>
1440 # <emphasis role="bold">cp /cdrom/sun4x_56/root.server/etc/vfsck fsck</emphasis>
1441 </programlisting></para>
1445 <para>Working in the <emphasis role="bold">/usr/lib/fs/afs</emphasis> directory, create the following links to Solaris
1446 libraries: <programlisting>
1447 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/clri</emphasis>
1448 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/df</emphasis>
1449 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/edquota</emphasis>
1450 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/ff</emphasis>
1451 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/fsdb</emphasis>
1452 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/fsirand</emphasis>
1453 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/fstyp</emphasis>
1454 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/labelit</emphasis>
1455 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/lockfs</emphasis>
1456 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/mkfs</emphasis>
1457 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/mount</emphasis>
1458 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/ncheck</emphasis>
1459 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/newfs</emphasis>
1460 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/quot</emphasis>
1461 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/quota</emphasis>
1462 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/quotaoff</emphasis>
1463 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/quotaon</emphasis>
1464 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/repquota</emphasis>
1465 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/tunefs</emphasis>
1466 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/ufsdump</emphasis>
1467 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/ufsrestore</emphasis>
1468 # <emphasis role="bold">ln -s /usr/lib/fs/ufs/volcopy</emphasis>
1469 </programlisting></para>
1473 <para>Append the following line to the end of the file <emphasis role="bold">/etc/dfs/fstypes</emphasis>.
1476 </programlisting></para>
1480 <para>Edit the <emphasis role="bold">/sbin/mountall</emphasis> file, making two changes. <itemizedlist>
1482 <para>Add an entry for AFS to the <computeroutput>case</computeroutput> statement for option 2, so that it reads
1483 as follows: <programlisting>
1485 ufs) foptions="-o p"
1487 afs) foptions="-o p"
1489 s5) foptions="-y -t /var/tmp/tmp$$ -D"
1493 </programlisting></para>
1497 <para>Edit the file so that all AFS and UFS partitions are checked in parallel. Replace the following section of
1498 code: <programlisting>
1499 # For fsck purposes, we make a distinction between ufs and
1500 # other file systems
1502 if [ "$fstype" = "ufs" ]; then
1503 ufs_fscklist="$ufs_fscklist $fsckdev"
1504 saveentry $fstype "$OPTIONS" $special $mountp
1507 </programlisting></para>
1509 <para>with the following section of code:</para>
1512 # For fsck purposes, we make a distinction between ufs/afs
1513 # and other file systems.
1515 if [ "$fstype" = "ufs" -o "$fstype" = "afs" ]; then
1516 ufs_fscklist="$ufs_fscklist $fsckdev"
1517 saveentry $fstype "$OPTIONS" $special $mountp
1522 </itemizedlist></para>
1525 <primary>configuring</primary>
1527 <secondary>AFS server partition on server machine after first</secondary>
1529 <tertiary>Solaris</tertiary>
1533 <primary>AFS server partition</primary>
1535 <secondary>configuring on server machine after first</secondary>
1537 <tertiary>Solaris</tertiary>
1541 <primary>file server machine, additional</primary>
1543 <secondary>AFS server partition</secondary>
1545 <tertiary>on Solaris</tertiary>
1549 <primary>Solaris</primary>
1551 <secondary>AFS server partition</secondary>
1553 <tertiary>on add'l server machine</tertiary>
1558 <para>Create a directory called <emphasis role="bold">/vicep</emphasis><replaceable>xx</replaceable> for each AFS
1559 server partition you are configuring (there must be at least one). Repeat the command for each partition.
1561 # <emphasis role="bold">mkdir /vicep</emphasis><replaceable>xx</replaceable>
1562 </programlisting></para>
1566 <para>Add a line with the following format to the file systems registry file, <emphasis
1567 role="bold">/etc/vfstab</emphasis>, for each partition to be mounted on a directory created in the previous step. Note
1568 the value <computeroutput>afs</computeroutput> in the fourth field, which tells Solaris to use the AFS-modified
1569 <emphasis role="bold">fsck</emphasis> program on this partition. <programlisting>
1570 /dev/dsk/<replaceable>disk</replaceable> /dev/rdsk/<replaceable>disk</replaceable> /vicep<replaceable>xx</replaceable> afs <replaceable>boot_order</replaceable> yes
1571 </programlisting></para>
1573 <para>The following is an example for the first partition being configured.</para>
1576 /dev/dsk/c0t6d0s1 /dev/rdsk/c0t6d0s1 /vicepa afs 3 yes
1581 <para>Create a file system on each partition that is to be mounted at a <emphasis
1582 role="bold">/vicep</emphasis><replaceable>xx</replaceable> directory. The following command is probably appropriate,
1583 but consult the Solaris documentation for more information. <programlisting>
1584 # <emphasis role="bold">newfs -v /dev/rdsk/</emphasis><replaceable>disk</replaceable>
1585 </programlisting></para>
1589 <para>Issue the <emphasis role="bold">mountall</emphasis> command to mount all partitions at once.</para>
1593 <para>If the machine is to remain an AFS client, incorporate AFS into its authentication system, following the
1594 instructions in <link linkend="HDRWQ49">Enabling AFS Login and Editing the File Systems Clean-up Script on Solaris
1595 Systems</link>.</para>
1599 <para>Proceed to <link linkend="HDRWQ108">Starting Server Programs</link>.</para>
1601 </orderedlist></para>
1604 <primary>file server machine, additional</primary>
1606 <secondary>server functionality</secondary>
1610 <primary>installing</primary>
1612 <secondary>server functionality</secondary>
1614 <tertiary>server machine after first</tertiary>
1619 <sect2 id="HDRWQ108">
1620 <title>Starting Server Programs</title>
1622 <para>In this section you initialize the BOS Server, the Update Server, the controller process for NTPD, and the <emphasis
1623 role="bold">fs</emphasis> process. You begin by copying the necessary server files to the local disk. <orderedlist>
1625 <primary>copying</primary>
1627 <secondary>server files to local disk</secondary>
1629 <tertiary>server machine after first</tertiary>
1633 <primary>CD-ROM</primary>
1635 <secondary>copying server files from</secondary>
1637 <tertiary>server machine after first</tertiary>
1641 <primary>file server machine, additional</primary>
1643 <secondary>copying</secondary>
1645 <tertiary>server files to local disk</tertiary>
1649 <para>Copy file server binaries to the local <emphasis role="bold">/usr/afs/bin</emphasis> directory. <itemizedlist>
1651 <para>On a machine of an existing system type, you can either load files from the AFS CD-ROM or use a remote file
1652 transfer protocol to copy files from an existing server machine of the same system type. To load from the CD-ROM,
1653 see the instructions just following for a machine of a new system type. If using a remote file transfer protocol,
1654 copy the complete contents of the existing server machine's <emphasis role="bold">/usr/afs/bin</emphasis>
1659 <para>On a machine of a new system type, you must use the following instructions to copy files from the AFS
1660 CD-ROM. <orderedlist>
1662 <para>On the local <emphasis role="bold">/cdrom</emphasis> directory, mount the AFS CD-ROM for this
1663 machine's system type, if it is not already. For instructions on mounting CD-ROMs (either locally or
1664 remotely via NFS), consult the operating system documentation.</para>
1668 <para>Copy files from the CD-ROM to the local <emphasis role="bold">/usr/afs</emphasis> directory.
1670 # <emphasis role="bold">cd /cdrom/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/root.server/usr/afs</emphasis>
1671 # <emphasis role="bold">cp -rp * /usr/afs</emphasis>
1672 </programlisting></para>
1674 </orderedlist></para>
1676 </itemizedlist></para>
1679 <primary>usr/afs/etc directory</primary>
1681 <secondary>server machine after first</secondary>
1685 <primary>file server machine, additional</primary>
1687 <secondary>/usr/afs/etc directory</secondary>
1691 <primary>creating</primary>
1693 <secondary>/usr/afs/etc directory</secondary>
1695 <tertiary>server machine after first</tertiary>
1699 <primary>creating</primary>
1701 <secondary>CellServDB file (server)</secondary>
1703 <tertiary>server machine after first</tertiary>
1707 <primary>UserList file</primary>
1709 <secondary>server machine after first</secondary>
1713 <primary>KeyFile file</primary>
1715 <secondary>server machine after first</secondary>
1719 <primary>CellServDB file (server)</primary>
1721 <secondary>creating</secondary>
1723 <tertiary>on server machine after first</tertiary>
1727 <primary>database server machine</primary>
1729 <secondary>entry in server CellServDB file</secondary>
1731 <tertiary>on server machine after first</tertiary>
1735 <primary>ThisCell file (server)</primary>
1737 <secondary>server machine after first</secondary>
1741 <primary>file server machine, additional</primary>
1743 <secondary>cell membership, defining</secondary>
1745 <tertiary>for server processes</tertiary>
1749 <primary>setting</primary>
1751 <secondary>cell name in server ThisCell file</secondary>
1753 <tertiary>server machine after first</tertiary>
1757 <primary>file server machine, additional</primary>
1759 <secondary>ThisCell file (server)</secondary>
1764 <para>Copy the contents of the <emphasis role="bold">/usr/afs/etc</emphasis> directory from an existing file server
1765 machine, using a remote file transfer protocol such as <emphasis role="bold">ftp</emphasis> or NFS. If you use a system
1766 control machine, it is best to copy the contents of its <emphasis role="bold">/usr/afs/etc</emphasis> directory. If you
1767 choose not to run a system control machine, copy the directory's contents from any existing file server machine.
1769 <primary>BOS Server</primary>
1771 <secondary>starting</secondary>
1773 <tertiary>server machine after first</tertiary>
1774 </indexterm> <indexterm>
1775 <primary>starting</primary>
1777 <secondary>BOS Server</secondary>
1779 <tertiary>server machine after first</tertiary>
1780 </indexterm> <indexterm>
1781 <primary>file server machine, additional</primary>
1783 <secondary>BOS Server</secondary>
1784 </indexterm> <indexterm>
1785 <primary>authorization checking (disabling)</primary>
1787 <secondary>server machine after first</secondary>
1788 </indexterm> <indexterm>
1789 <primary>disabling authorization checking</primary>
1791 <secondary>server machine after first</secondary>
1792 </indexterm> <indexterm>
1793 <primary>file server machine, additional</primary>
1795 <secondary>authorization checking (disabling)</secondary>
1800 <para>Change to the <emphasis role="bold">/usr/afs/bin</emphasis> directory and start the BOS Server (<emphasis
1801 role="bold">bosserver</emphasis> process). Include the <emphasis role="bold">-noauth</emphasis> flag to prevent the AFS
1802 processes from performing authorization checking. This is a grave compromise of security; finish the remaining
1803 instructions in this section in an uninterrupted pass. <programlisting>
1804 # <emphasis role="bold">cd /usr/afs/bin</emphasis>
1805 # <emphasis role="bold">./bosserver -noauth &</emphasis>
1806 </programlisting> <indexterm>
1807 <primary>BosConfig file</primary>
1809 <secondary>adding entries</secondary>
1811 <tertiary>server machine after first</tertiary>
1812 </indexterm> <indexterm>
1813 <primary>adding</primary>
1815 <secondary>entries to BosConfig file</secondary>
1817 <tertiary>server machine after first</tertiary>
1818 </indexterm> <indexterm>
1819 <primary>Update Server</primary>
1821 <secondary>starting client portion</secondary>
1822 </indexterm> <indexterm>
1823 <primary>upclient process</primary>
1824 </indexterm> <indexterm>
1825 <primary>starting</primary>
1827 <secondary>Update Server client portion</secondary>
1828 </indexterm> <indexterm>
1829 <primary>file server machine, additional</primary>
1831 <secondary>Update Server client portion</secondary>
1836 <para><anchor id="LIWQ109" />If you run a system control machine, create the <emphasis
1837 role="bold">upclientetc</emphasis> process as an instance of the client portion of the Update Server. It accepts updates
1838 of the common configuration files stored in the system control machine's <emphasis role="bold">/usr/afs/etc</emphasis>
1839 directory from the <emphasis role="bold">upserver</emphasis> process (server portion of the Update Server) running on
1840 that machine. The cell's first file server machine was installed as the system control machine in <link
1841 linkend="HDRWQ61">Starting the Server Portion of the Update Server</link>. (If you do not run a system control machine,
1842 you must update the contents of the <emphasis role="bold">/usr/afs/etc</emphasis> directory on each file server machine,
1843 using the appropriate <emphasis role="bold">bos</emphasis> commands.)</para>
1845 <para>By default, the Update Server performs updates every 300 seconds (five minutes). Use the <emphasis
1846 role="bold">-t</emphasis> argument to specify a different number of seconds. For the
1847 <replaceable>machine name</replaceable> argument, substitute the name of the machine you are installing. The
1848 command appears on multiple lines here only for legibility reasons.</para>
1851 # <emphasis role="bold">./bos create</emphasis> <<replaceable>machine name</replaceable>> <emphasis role="bold">upclientetc simple</emphasis> \
1852 <emphasis role="bold">"/usr/afs/bin/upclient</emphasis> <<replaceable>system control machine</replaceable>> \
1853 [<emphasis role="bold">-t</emphasis> <<replaceable>time</replaceable>>] <emphasis role="bold">/usr/afs/etc" -cell</emphasis> <<replaceable>cell name</replaceable>> <emphasis
1854 role="bold">-noauth</emphasis>
1858 <primary>Update Server</primary>
1860 <secondary>starting server portion</secondary>
1862 <tertiary>server machine after first</tertiary>
1866 <primary>starting</primary>
1868 <secondary>Update Server server portion</secondary>
1870 <tertiary>server machine after first</tertiary>
1874 <primary>file server machine, additional</primary>
1876 <secondary>Update Server server portion</secondary>
1881 <para><anchor id="LIWQ110" />Create an instance of the Update Server to handle distribution of the file server binaries
1882 stored in the <emphasis role="bold">/usr/afs/bin</emphasis> directory. <itemizedlist>
1884 <para>If this is the first file server machine of its AFS system type, create the <emphasis
1885 role="bold">upserver</emphasis> process as an instance of the server portion of the Update Server. It distributes
1886 its copy of the file server process binaries to the other file server machines of this system type that you
1887 install in future. Creating this process makes this machine the binary distribution machine for its type.
1889 # <emphasis role="bold">./bos create</emphasis> <<replaceable>machine name</replaceable>> <emphasis role="bold">upserver simple</emphasis> \
1890 <emphasis role="bold">"/usr/afs/bin/upserver -clear /usr/afs/bin"</emphasis> \
1891 <emphasis role="bold">-cell</emphasis> <<replaceable>cell name</replaceable>> <emphasis role="bold">-noauth</emphasis>
1892 </programlisting></para>
1896 <para>If this machine is an existing system type, create the <emphasis role="bold">upclientbin</emphasis> process
1897 as an instance of the client portion of the Update Server. It accepts updates of the AFS binaries from the
1898 <emphasis role="bold">upserver</emphasis> process running on the binary distribution machine for its system type.
1899 For distribution to work properly, the <emphasis role="bold">upserver</emphasis> process must already by running
1900 on that machine.</para>
1902 <para>Use the <emphasis role="bold">-clear</emphasis> argument to specify that the <emphasis
1903 role="bold">upclientbin</emphasis> process requests unencrypted transfer of the binaries in the <emphasis
1904 role="bold">/usr/afs/bin</emphasis> directory. Binaries are not sensitive and encrypting them is
1905 time-consuming.</para>
1907 <para>By default, the Update Server performs updates every 300 seconds (five minutes). Use the <emphasis
1908 role="bold">-t</emphasis> argument to specify an different number of seconds.</para>
1911 # <emphasis role="bold">./bos create</emphasis> <<replaceable>machine name</replaceable>> <emphasis role="bold">upclientbin simple</emphasis> \
1912 <emphasis role="bold">"/usr/afs/bin/upclient</emphasis> <<replaceable>binary distribution machine</replaceable>> \
1913 [<emphasis role="bold">-t</emphasis> <<replaceable>time</replaceable>>] <emphasis role="bold">-clear /usr/afs/bin" -cell</emphasis> <<replaceable>cell name</replaceable>> <emphasis
1914 role="bold">-noauth</emphasis>
1917 </itemizedlist></para>
1920 <primary>runntp process</primary>
1922 <secondary>server machine after first</secondary>
1926 <primary>starting</primary>
1928 <secondary>runntp process</secondary>
1930 <tertiary>server machine after first</tertiary>
1934 <primary>file server machine, additional</primary>
1936 <secondary>runntp process</secondary>
1940 <primary>NTPD</primary>
1942 <secondary>server machine after first</secondary>
1947 <para>Start the <emphasis role="bold">runntp</emphasis> process, which configures the Network Time Protocol Daemon
1948 (NTPD) to choose a database server machine chosen randomly from the local <emphasis
1949 role="bold">/usr/afs/etc/CellServDB</emphasis> file as its time source. In the standard configuration, the first
1950 database server machine installed in your cell refers to a time source outside the cell, and serves as the basis for
1951 clock synchronization on all server machines. <programlisting>
1952 # <emphasis role="bold">./bos create</emphasis> <<replaceable>machine name</replaceable>> <emphasis role="bold">runntp simple</emphasis> \
1953 <emphasis role="bold">/usr/afs/bin/runntp -cell</emphasis> <<replaceable>cell name</replaceable>> <emphasis
1954 role="bold">-noauth</emphasis>
1955 </programlisting></para>
1958 <para>Do not run the <emphasis role="bold">runntp</emphasis> process if NTPD or another time synchronization protocol
1959 is already running on the machine. Some versions of some operating systems run a time synchronization program by
1960 default, as detailed in the <emphasis>OpenAFS Release Notes</emphasis>.</para>
1962 <para>Attempting to run multiple instances of the NTPD causes an error. Running NTPD together with another time
1963 synchronization protocol is unnecessary and can cause instability in the clock setting.</para>
1967 <primary>File Server</primary>
1969 <secondary>server machine after first</secondary>
1973 <primary>starting</primary>
1975 <secondary>File Server</secondary>
1977 <tertiary>server machine after first</tertiary>
1981 <primary>file server machine, additional</primary>
1983 <secondary>File Server</secondary>
1987 <primary>Volume Server</primary>
1989 <secondary>server machine after first</secondary>
1993 <primary>starting</primary>
1995 <secondary>Volume Server</secondary>
1997 <tertiary>server machine after first</tertiary>
2001 <primary>file server machine, additional</primary>
2003 <secondary>Volume Server</secondary>
2007 <primary>Salvager (salvager process)</primary>
2009 <secondary>server machine after first</secondary>
2013 <primary>fs process</primary>
2015 <secondary>server machine after first</secondary>
2019 <primary>starting</primary>
2021 <secondary>fs process</secondary>
2023 <tertiary>server machine after first</tertiary>
2027 <primary>file server machine, additional</primary>
2029 <secondary>fs process</secondary>
2034 <para>Start the <emphasis role="bold">fs</emphasis> process, which binds together the File Server, Volume Server, and
2035 Salvager. <programlisting>
2036 # <emphasis role="bold">./bos create</emphasis> <<replaceable>machine name</replaceable>> <emphasis role="bold">fs fs</emphasis> \
2037 <emphasis role="bold">/usr/afs/bin/fileserver /usr/afs/bin/volserver</emphasis> \
2038 <emphasis role="bold">/usr/afs/bin/salvager -cell</emphasis> <<replaceable>cell name</replaceable>> <emphasis
2039 role="bold">-noauth</emphasis>
2040 </programlisting></para>
2042 </orderedlist></para>
2045 <primary>installing</primary>
2047 <secondary>client functionality</secondary>
2049 <tertiary>server machine after first</tertiary>
2053 <primary>file server machine, additional</primary>
2055 <secondary>client functionality</secondary>
2059 <sect2 id="HDRWQ111">
2060 <title>Installing Client Functionality</title>
2062 <para>If you want this machine to be a client as well as a server, follow the instructions in this section. Otherwise, skip to
2063 <link linkend="HDRWQ112">Completing the Installation</link>.</para>
2065 <para>Begin by loading the necessary client files to the local disk. Then create the necessary configuration files and start
2066 the Cache Manager. For more detailed explanation of the procedures involved, see the corresponding instructions in <link
2067 linkend="HDRWQ17">Installing the First AFS Machine</link> (in the sections following <link linkend="HDRWQ63">Overview:
2068 Installing Client Functionality</link>).</para>
2070 <para>If another AFS machine of this machine's system type exists, the AFS binaries are probably already accessible in your
2071 AFS filespace (the conventional location is <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2072 role="bold">/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/usr/afsws</emphasis>). If not, or if this is
2073 the first AFS machine of its type, copy the AFS binaries for this system type into an AFS volume by following the instructions
2074 in <link linkend="HDRWQ83">Storing AFS Binaries in AFS</link>. Because this machine is not yet an AFS client, you must perform
2075 the procedure on an existing AFS machine. However, remember to perform the final step (linking the local directory <emphasis
2076 role="bold">/usr/afsws</emphasis> to the appropriate location in the AFS file tree) on this machine itself. If you also want
2077 to create AFS volumes to house UNIX system binaries for the new system type, see <link linkend="HDRWQ88">Storing System
2078 Binaries in AFS</link>. <indexterm>
2079 <primary>CD-ROM</primary>
2081 <secondary>copying client files from</secondary>
2083 <tertiary>server machine after first</tertiary>
2084 </indexterm> <indexterm>
2085 <primary>file server machine, additional</primary>
2087 <secondary>copying</secondary>
2089 <tertiary>client files to local disk</tertiary>
2090 </indexterm> <indexterm>
2091 <primary>copying</primary>
2093 <secondary>client files to local disk</secondary>
2095 <tertiary>server machine after first</tertiary>
2096 </indexterm> <orderedlist>
2098 <para>Copy client binaries and files to the local disk. <itemizedlist>
2100 <para>On a machine of an existing system type, you can either load files from the AFS CD-ROM or use a remote file
2101 transfer protocol to copy files from an existing server machine of the same system type. To load from the CD-ROM,
2102 see the instructions just following for a machine of a new system type. If using a remote file transfer protocol,
2103 copy the complete contents of the existing client machine's <emphasis role="bold">/usr/vice/etc</emphasis>
2108 <para>On a machine of a new system type, you must use the following instructions to copy files from the AFS
2109 CD-ROM. <orderedlist>
2111 <para>On the local <emphasis role="bold">/cdrom</emphasis> directory, mount the AFS CD-ROM for this
2112 machine's system type, if it is not already. For instructions on mounting CD-ROMs (either locally or
2113 remotely via NFS), consult the operating system documentation.</para>
2117 <para>Copy files to the local <emphasis role="bold">/usr/vice/etc</emphasis> directory.</para>
2119 <para>This step places a copy of the AFS initialization script (and related files, if applicable) into the
2120 <emphasis role="bold">/usr/vice/etc</emphasis> directory. In the preceding instructions for incorporating
2121 AFS into the kernel, you copied the script directly to the operating system's conventional location for
2122 initialization files. When you incorporate AFS into the machine's startup sequence in a later step, you can
2123 choose to link the two files.</para>
2125 <para>On some system types that use a dynamic kernel loader program, you previously copied AFS library files
2126 into a subdirectory of the <emphasis role="bold">/usr/vice/etc</emphasis> directory. On other system types,
2127 you copied the appropriate AFS library file directly to the directory where the operating system accesses
2128 it. The following commands do not copy or recopy the AFS library files into the <emphasis
2129 role="bold">/usr/vice/etc</emphasis> directory, because on some system types the library files consume a
2130 large amount of space. If you want to copy them, add the <emphasis role="bold">-r</emphasis> flag to the
2131 first <emphasis role="bold">cp</emphasis> command and skip the second <emphasis role="bold">cp</emphasis>
2135 # <emphasis role="bold">cd /cdrom/</emphasis><replaceable>sysname</replaceable><emphasis role="bold">/root.client/usr/vice/etc</emphasis>
2136 # <emphasis role="bold">cp -p * /usr/vice/etc</emphasis>
2137 # <emphasis role="bold">cp -rp C /usr/vice/etc</emphasis>
2140 </orderedlist></para>
2142 </itemizedlist></para>
2145 <primary>cell name</primary>
2147 <secondary>setting in client ThisCell file</secondary>
2149 <tertiary>server machine after first</tertiary>
2153 <primary>cell name</primary>
2155 <secondary>setting in server ThisCell file</secondary>
2157 <tertiary>server machine after first</tertiary>
2161 <primary>setting</primary>
2163 <secondary>cell name in client ThisCell file</secondary>
2165 <tertiary>server machine after first</tertiary>
2169 <primary>file server machine, additional</primary>
2171 <secondary>ThisCell file (client)</secondary>
2175 <primary>file server machine, additional</primary>
2177 <secondary>cell membership, defining</secondary>
2179 <tertiary>for client processes</tertiary>
2183 <primary>ThisCell file (client)</primary>
2185 <secondary>server machine after first</secondary>
2190 <para>Change to the <emphasis role="bold">/usr/vice/etc</emphasis> directory and create the <emphasis
2191 role="bold">ThisCell</emphasis> file as a copy of the <emphasis role="bold">/usr/afs/etc/ThisCell</emphasis> file. You
2192 must first remove the symbolic link to the <emphasis role="bold">/usr/afs/etc/ThisCell</emphasis> file that the BOS
2193 Server created automatically in <link linkend="HDRWQ108">Starting Server Programs</link>. <programlisting>
2194 # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2195 # <emphasis role="bold">rm ThisCell</emphasis>
2196 # <emphasis role="bold">cp /usr/afs/etc/ThisCell ThisCell</emphasis>
2197 </programlisting></para>
2201 <para>Remove the symbolic link to the <emphasis role="bold">/usr/afs/etc/CellServDB</emphasis> file. <programlisting>
2202 # <emphasis role="bold">rm CellServDB</emphasis>
2203 </programlisting> <indexterm>
2204 <primary>database server machine</primary>
2206 <secondary>entry in client CellServDB file</secondary>
2208 <tertiary>on server machine after first</tertiary>
2209 </indexterm> <indexterm>
2210 <primary>CellServDB file (client)</primary>
2212 <secondary>creating</secondary>
2214 <tertiary>on server machine after first</tertiary>
2215 </indexterm> <indexterm>
2216 <primary>creating</primary>
2218 <secondary>CellServDB file (client)</secondary>
2220 <tertiary>server machine after first</tertiary>
2225 <para>Create the <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file. Use a network file transfer program
2226 such as <emphasis role="bold">ftp</emphasis> or NFS to copy it from one of the following sources, which are listed in
2227 decreasing order of preference: <itemizedlist>
2229 <para>Your cell's central <emphasis role="bold">CellServDB</emphasis> source file (the conventional location is
2230 <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
2231 role="bold">/common/etc/CellServDB</emphasis>)</para>
2235 <para>The global <emphasis role="bold">CellServDB</emphasis> file maintained by the AFS Product Support
2240 <para>An existing client machine in your cell</para>
2244 <para>The <emphasis role="bold">CellServDB.sample</emphasis> file included in the
2245 <replaceable>sysname</replaceable><emphasis role="bold">/root.client/usr/vice/etc</emphasis> directory of each AFS
2246 CD-ROM; add an entry for the local cell by following the instructions in <link linkend="HDRWQ66">Creating the
2247 Client CellServDB File</link></para>
2249 </itemizedlist></para>
2252 <primary>cache</primary>
2254 <secondary>configuring</secondary>
2256 <tertiary>server machine after first</tertiary>
2260 <primary>configuring</primary>
2262 <secondary>cache</secondary>
2264 <tertiary>server machine after first</tertiary>
2268 <primary>setting</primary>
2270 <secondary>cache size and location</secondary>
2272 <tertiary>server machine after first</tertiary>
2276 <primary>file server machine, additional</primary>
2278 <secondary>cache size and location</secondary>
2283 <para>Create the <emphasis role="bold">cacheinfo</emphasis> file for either a disk cache or a memory cache. For a
2284 discussion of the appropriate values to record in the file, see <link linkend="HDRWQ67">Configuring the
2285 Cache</link>.</para>
2287 <para>To configure a disk cache, issue the following commands. If you are devoting a partition exclusively to caching,
2288 as recommended, you must also configure it, make a file system on it, and mount it at the directory created in this
2292 # <emphasis role="bold">mkdir /usr/vice/cache</emphasis>
2293 # <emphasis role="bold">echo "/afs:/usr/vice/cache:</emphasis><replaceable>#blocks</replaceable><emphasis role="bold">" > cacheinfo</emphasis>
2296 <para>To configure a memory cache:</para>
2299 # <emphasis role="bold">echo "/afs:/usr/vice/cache:</emphasis><replaceable>#blocks</replaceable><emphasis role="bold">" > cacheinfo</emphasis>
2303 <primary>Cache Manager</primary>
2305 <secondary>server machine after first</secondary>
2309 <primary>configuring</primary>
2311 <secondary>Cache Manager</secondary>
2313 <tertiary>server machine after first</tertiary>
2317 <primary>file server machine, additional</primary>
2319 <secondary>Cache Manager</secondary>
2323 <primary>afs (/afs) directory</primary>
2325 <secondary>creating</secondary>
2327 <tertiary>server machine after first</tertiary>
2331 <primary>AFS initialization script</primary>
2333 <secondary>setting afsd parameters</secondary>
2335 <tertiary>server machine after first</tertiary>
2339 <primary>file server machine, additional</primary>
2341 <secondary>afsd command parameters</secondary>
2346 <para>Create the local directory on which to mount the AFS filespace, by convention <emphasis
2347 role="bold">/afs</emphasis>. If the directory already exists, verify that it is empty. <programlisting>
2348 # <emphasis role="bold">mkdir /afs</emphasis>
2349 </programlisting></para>
2353 <para>On AIX systems, add the following line to the <emphasis role="bold">/etc/vfs</emphasis> file. It enables AIX to
2354 unmount AFS correctly during shutdown. <programlisting>
2356 </programlisting></para>
2360 <para>On Linux systems, copy the <emphasis role="bold">afsd</emphasis> options file from the <emphasis
2361 role="bold">/usr/vice/etc</emphasis> directory to the <emphasis role="bold">/etc/sysconfig</emphasis> directory,
2362 removing the <emphasis role="bold">.conf</emphasis> extension as you do so. <programlisting>
2363 # <emphasis role="bold">cp /usr/vice/etc/afs.conf /etc/sysconfig/afs</emphasis>
2364 </programlisting></para>
2368 <para>Edit the machine's AFS initialization script or <emphasis role="bold">afsd</emphasis> options file to set
2369 appropriate values for <emphasis role="bold">afsd</emphasis> command parameters. The script resides in the indicated
2370 location on each system type: <itemizedlist>
2372 <para>On AIX systems, <emphasis role="bold">/etc/rc.afs</emphasis></para>
2376 <para>On HP-UX systems, <emphasis role="bold">/sbin/init.d/afs</emphasis></para>
2380 <para>On IRIX systems, <emphasis role="bold">/etc/init.d/afs</emphasis></para>
2384 <para>On Linux systems, <emphasis role="bold">/etc/sysconfig/afs</emphasis> (the <emphasis
2385 role="bold">afsd</emphasis> options file)</para>
2389 <para>On Solaris systems, <emphasis role="bold">/etc/init.d/afs</emphasis></para>
2391 </itemizedlist></para>
2393 <para>Use one of the methods described in <link linkend="HDRWQ70">Configuring the Cache Manager</link> to add the
2394 following flags to the <emphasis role="bold">afsd</emphasis> command line. If you intend for the machine to remain an
2395 AFS client, also set any performance-related arguments you wish. <itemizedlist>
2397 <para>Add the <emphasis role="bold">-nosettime</emphasis> flag, because this is a file server machine that is also
2402 <para>Add the <emphasis role="bold">-memcache</emphasis> flag if the machine is to use a memory cache.</para>
2406 <para>Add the <emphasis role="bold">-verbose</emphasis> flag to display a trace of the Cache Manager's
2407 initialization on the standard output stream.</para>
2409 </itemizedlist></para>
2413 <para>If appropriate, follow the instructions in <link linkend="HDRWQ83">Storing AFS Binaries in AFS</link> to copy the
2414 AFS binaries for this system type into an AFS volume. See the introduction to this section for further
2417 </orderedlist></para>
2420 <sect2 id="HDRWQ112">
2421 <title>Completing the Installation</title>
2423 <para>At this point you run the machine's AFS initialization script to verify that it correctly loads AFS modifications into
2424 the kernel and starts the BOS Server, which starts the other server processes. If you have installed client files, the script
2425 also starts the Cache Manager. If the script works correctly, perform the steps that incorporate it into the machine's startup
2426 and shutdown sequence. If there are problems during the initialization, attempt to resolve them. The AFS Product Support group
2427 can provide assistance if necessary.</para>
2429 <para>If the machine is configured as a client using a disk cache, it can take a while for the <emphasis
2430 role="bold">afsd</emphasis> program to create all of the <emphasis role="bold">V</emphasis><replaceable>n</replaceable> files
2431 in the cache directory. Messages on the console trace the initialization process. <orderedlist>
2433 <para>Issue the <emphasis role="bold">bos shutdown</emphasis> command to shut down the AFS server processes other than
2434 the BOS Server. Include the <emphasis role="bold">-wait</emphasis> flag to delay return of the command shell prompt
2435 until all processes shut down completely. <programlisting>
2436 # <emphasis role="bold">/usr/afs/bin/bos shutdown</emphasis> <<replaceable>machine name</replaceable>> <emphasis
2437 role="bold">-wait</emphasis>
2438 </programlisting></para>
2442 <para>Issue the <emphasis role="bold">ps</emphasis> command to learn the BOS Server's process ID number (PID), and then
2443 the <emphasis role="bold">kill</emphasis> command to stop the <emphasis role="bold">bosserver</emphasis> process.
2445 # <emphasis role="bold">ps</emphasis> <replaceable>appropriate_ps_options</replaceable> <emphasis role="bold">| grep bosserver</emphasis>
2446 # <emphasis role="bold">kill</emphasis> <replaceable>bosserver_PID</replaceable>
2447 </programlisting> <indexterm>
2448 <primary>AFS initialization script</primary>
2450 <secondary>adding to machine startup sequence</secondary>
2452 <tertiary>server machine after first</tertiary>
2453 </indexterm> <indexterm>
2454 <primary>AFS initialization script</primary>
2456 <secondary>running</secondary>
2458 <tertiary>server machine after first</tertiary>
2459 </indexterm> <indexterm>
2460 <primary>file server machine, additional</primary>
2462 <secondary>AFS initialization script</secondary>
2463 </indexterm> <indexterm>
2464 <primary>running AFS init. script</primary>
2466 <secondary>server machine after first</secondary>
2467 </indexterm> <indexterm>
2468 <primary>installing</primary>
2470 <secondary>AFS initialization script</secondary>
2472 <tertiary>server machine after first</tertiary>
2473 </indexterm> <indexterm>
2474 <primary>AIX</primary>
2476 <secondary>AFS initialization script</secondary>
2478 <tertiary>on add'l server machine</tertiary>
2483 <para>Run the AFS initialization script by issuing the appropriate commands for this system type.</para>
2485 <para><emphasis role="bold">On AIX systems:</emphasis> <orderedlist>
2487 <para>Reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>.
2489 # <emphasis role="bold">cd /</emphasis>
2490 # <emphasis role="bold">shutdown -r now</emphasis>
2491 login: <emphasis role="bold">root</emphasis>
2492 Password: <replaceable>root_password</replaceable>
2493 </programlisting></para>
2497 <para>Run the AFS initialization script. <programlisting>
2498 # <emphasis role="bold">/etc/rc.afs</emphasis>
2499 </programlisting></para>
2503 <para>Edit the AIX initialization file, <emphasis role="bold">/etc/inittab</emphasis>, adding the following line
2504 to invoke the AFS initialization script. Place it just after the line that starts NFS daemons. <programlisting>
2505 rcafs:2:wait:/etc/rc.afs > /dev/console 2>&1 # Start AFS services
2506 </programlisting></para>
2510 <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2511 <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc</emphasis> directories. If you want
2512 to avoid potential confusion by guaranteeing that they are always the same, create a link between them. You can
2513 always retrieve the original script from the AFS CD-ROM if necessary. <programlisting>
2514 # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2515 # <emphasis role="bold">rm rc.afs</emphasis>
2516 # <emphasis role="bold">ln -s /etc/rc.afs</emphasis>
2517 </programlisting></para>
2521 <para>Proceed to Step <link linkend="LIWQ113">4</link>.</para>
2523 </orderedlist></para>
2526 <primary>HP-UX</primary>
2528 <secondary>AFS initialization script</secondary>
2530 <tertiary>on add'l server machine</tertiary>
2533 <para><emphasis role="bold">On HP-UX systems:</emphasis> <orderedlist>
2535 <para>Run the AFS initialization script. <programlisting>
2536 # <emphasis role="bold">/sbin/init.d/afs start</emphasis>
2537 </programlisting></para>
2541 <para>Change to the <emphasis role="bold">/sbin/init.d</emphasis> directory and issue the <emphasis role="bold">ln
2542 -s</emphasis> command to create symbolic links that incorporate the AFS initialization script into the HP-UX
2543 startup and shutdown sequence. <programlisting>
2544 # <emphasis role="bold">cd /sbin/init.d</emphasis>
2545 # <emphasis role="bold">ln -s ../init.d/afs /sbin/rc2.d/S460afs</emphasis>
2546 # <emphasis role="bold">ln -s ../init.d/afs /sbin/rc2.d/K800afs</emphasis>
2547 </programlisting></para>
2551 <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2552 <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/sbin/init.d</emphasis> directories. If
2553 you want to avoid potential confusion by guaranteeing that they are always the same, create a link between them.
2554 You can always retrieve the original script from the AFS CD-ROM if necessary. <programlisting>
2555 # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2556 # <emphasis role="bold">rm afs.rc</emphasis>
2557 # <emphasis role="bold">ln -s /sbin/init.d/afs afs.rc</emphasis>
2558 </programlisting></para>
2562 <para>Proceed to Step <link linkend="LIWQ113">4</link>.</para>
2564 </orderedlist></para>
2567 <primary>IRIX</primary>
2569 <secondary>AFS initialization script</secondary>
2571 <tertiary>on add'l server machine</tertiary>
2575 <primary>afsclient variable (IRIX)</primary>
2577 <secondary>server machine after first</secondary>
2581 <primary>variables</primary>
2583 <secondary>afsclient (IRIX)</secondary>
2585 <tertiary>server machine after first</tertiary>
2589 <primary>IRIX</primary>
2591 <secondary>afsclient variable</secondary>
2593 <tertiary>server machine after first</tertiary>
2597 <primary>afsserver variable (IRIX)</primary>
2599 <secondary>server machine after first</secondary>
2603 <primary>variables</primary>
2605 <secondary>afsserver (IRIX)</secondary>
2607 <tertiary>server machine after first</tertiary>
2611 <primary>IRIX</primary>
2613 <secondary>afsserver variable</secondary>
2615 <tertiary>server machine after first</tertiary>
2618 <para><emphasis role="bold">On IRIX systems:</emphasis> <orderedlist>
2620 <para>If you have configured the machine to use the <emphasis role="bold">ml</emphasis> dynamic loader program,
2621 reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>. <programlisting>
2622 # <emphasis role="bold">cd /</emphasis>
2623 # <emphasis role="bold">shutdown -i6 -g0 -y</emphasis>
2624 login: <emphasis role="bold">root</emphasis>
2625 Password: <replaceable>root_password</replaceable>
2626 </programlisting></para>
2630 <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to activate the <emphasis
2631 role="bold">afsserver</emphasis> configuration variable. <programlisting>
2632 # <emphasis role="bold">/etc/chkconfig -f afsserver on</emphasis>
2633 </programlisting></para>
2635 <para>If you have configured this machine as an AFS client and want to it remain one, also issue the <emphasis
2636 role="bold">chkconfig</emphasis> command to activate the <emphasis role="bold">afsclient</emphasis> configuration
2640 # <emphasis role="bold">/etc/chkconfig -f afsclient on</emphasis>
2645 <para>Run the AFS initialization script. <programlisting>
2646 # <emphasis role="bold">/etc/init.d/afs start</emphasis>
2647 </programlisting></para>
2651 <para>Change to the <emphasis role="bold">/etc/init.d</emphasis> directory and issue the <emphasis role="bold">ln
2652 -s</emphasis> command to create symbolic links that incorporate the AFS initialization script into the IRIX
2653 startup and shutdown sequence. <programlisting>
2654 # <emphasis role="bold">cd /etc/init.d</emphasis>
2655 # <emphasis role="bold">ln -s ../init.d/afs /etc/rc2.d/S35afs</emphasis>
2656 # <emphasis role="bold">ln -s ../init.d/afs /etc/rc0.d/K35afs</emphasis>
2657 </programlisting></para>
2661 <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2662 <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/init.d</emphasis> directories. If
2663 you want to avoid potential confusion by guaranteeing that they are always the same, create a link between them.
2664 You can always retrieve the original script from the AFS CD-ROM if necessary. <programlisting>
2665 # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2666 # <emphasis role="bold">rm afs.rc</emphasis>
2667 # <emphasis role="bold">ln -s /etc/init.d/afs afs.rc</emphasis>
2668 </programlisting></para>
2672 <para>Proceed to Step <link linkend="LIWQ113">4</link>.</para>
2674 </orderedlist></para>
2677 <primary>Linux</primary>
2679 <secondary>AFS initialization script</secondary>
2681 <tertiary>on add'l server machine</tertiary>
2684 <para><emphasis role="bold">On Linux systems:</emphasis> <orderedlist>
2686 <para>Reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>.
2688 # <emphasis role="bold">cd /</emphasis>
2689 # <emphasis role="bold">shutdown -r now</emphasis>
2690 login: <emphasis role="bold">root</emphasis>
2691 Password: <replaceable>root_password</replaceable>
2692 </programlisting></para>
2696 <para>Run the AFS initialization script. <programlisting>
2697 # <emphasis role="bold">/etc/rc.d/init.d/afs start</emphasis>
2698 </programlisting></para>
2702 <para>Issue the <emphasis role="bold">chkconfig</emphasis> command to activate the <emphasis
2703 role="bold">afs</emphasis> configuration variable. Based on the instruction in the AFS initialization file that
2704 begins with the string <computeroutput>#chkconfig</computeroutput>, the command automatically creates the symbolic
2705 links that incorporate the script into the Linux startup and shutdown sequence. <programlisting>
2706 # <emphasis role="bold">/sbin/chkconfig --add afs</emphasis>
2707 </programlisting></para>
2711 <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2712 <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/rc.d/init.d</emphasis> directories,
2713 and copies of the <emphasis role="bold">afsd</emphasis> options file in both the <emphasis
2714 role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/sysconfig</emphasis> directories. If you want
2715 to avoid potential confusion by guaranteeing that the two copies of each file are always the same, create a link
2716 between them. You can always retrieve the original script or options file from the AFS CD-ROM if necessary.
2718 # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2719 # <emphasis role="bold">rm afs.rc afs.conf</emphasis>
2720 # <emphasis role="bold">ln -s /etc/rc.d/init.d/afs afs.rc</emphasis>
2721 # <emphasis role="bold">ln -s /etc/sysconfig/afs afs.conf</emphasis>
2722 </programlisting></para>
2726 <para>Proceed to Step <link linkend="LIWQ113">4</link>.</para>
2728 </orderedlist></para>
2731 <primary>Solaris</primary>
2733 <secondary>AFS initialization script</secondary>
2735 <tertiary>on add'l server machine</tertiary>
2738 <para><emphasis role="bold">On Solaris systems:</emphasis> <orderedlist>
2740 <para>Reboot the machine and log in again as the local superuser <emphasis role="bold">root</emphasis>.
2742 # <emphasis role="bold">cd /</emphasis>
2743 # <emphasis role="bold">shutdown -i6 -g0 -y</emphasis>
2744 login: <emphasis role="bold">root</emphasis>
2745 Password: <replaceable>root_password</replaceable>
2746 </programlisting></para>
2750 <para>Run the AFS initialization script. <programlisting>
2751 # <emphasis role="bold">/etc/init.d/afs start</emphasis>
2752 </programlisting></para>
2756 <para>Change to the <emphasis role="bold">/etc/init.d</emphasis> directory and issue the <emphasis role="bold">ln
2757 -s</emphasis> command to create symbolic links that incorporate the AFS initialization script into the Solaris
2758 startup and shutdown sequence. <programlisting>
2759 # <emphasis role="bold">cd /etc/init.d</emphasis>
2760 # <emphasis role="bold">ln -s ../init.d/afs /etc/rc3.d/S99afs</emphasis>
2761 # <emphasis role="bold">ln -s ../init.d/afs /etc/rc0.d/K66afs</emphasis>
2762 </programlisting></para>
2766 <para><emphasis role="bold">(Optional)</emphasis> There are now copies of the AFS initialization file in both the
2767 <emphasis role="bold">/usr/vice/etc</emphasis> and <emphasis role="bold">/etc/init.d</emphasis> directories. If
2768 you want to avoid potential confusion by guaranteeing that they are always the same, create a link between them.
2769 You can always retrieve the original script from the AFS CD-ROM if necessary. <programlisting>
2770 # <emphasis role="bold">cd /usr/vice/etc</emphasis>
2771 # <emphasis role="bold">rm afs.rc</emphasis>
2772 # <emphasis role="bold">ln -s /etc/init.d/afs afs.rc</emphasis>
2773 </programlisting></para>
2775 </orderedlist></para>
2779 <para><anchor id="LIWQ113" />Verify that <emphasis role="bold">/usr/afs</emphasis> and its subdirectories on the new
2780 file server machine meet the ownership and mode bit requirements outlined in <link linkend="HDRWQ96">Protecting
2781 Sensitive AFS Directories</link>. If necessary, use the <emphasis role="bold">chmod</emphasis> command to correct the
2786 <para>To configure this machine as a database server machine, proceed to <link linkend="HDRWQ114">Installing Database
2787 Server Functionality</link>.</para>
2789 </orderedlist></para>
2792 <primary>database server machine</primary>
2794 <secondary>requirements for installation</secondary>
2798 <primary>requirements</primary>
2800 <secondary>database server machine</secondary>
2805 <sect1 id="HDRWQ114">
2806 <title>Installing Database Server Functionality</title>
2808 <para>This section explains how to install database server functionality. Database server machines have two defining
2809 characteristics. First, they run the Authentication Server, Protection Server, and Volume Location (VL) Server processes. They
2810 also run the Backup Server if the cell uses the AFS Backup System, as is assumed in these instructions. Second, they appear in
2811 the <emphasis role="bold">CellServDB</emphasis> file of every machine in the cell (and of client machines in foreign cells, if
2812 they are to access files in this cell).</para>
2814 <para>Note the following requirements for database server machines. <itemizedlist>
2816 <para>In the conventional configuration, database server machines also serve as file server machines (run the File Server,
2817 Volume Server and Salvager processes). If you choose not to run file server functionality on a database server machine,
2818 then the kernel does not have to incorporate AFS modifications, but the local <emphasis role="bold">/usr/afs</emphasis>
2819 directory must house most of the standard files and subdirectories. In particular, the <emphasis
2820 role="bold">/usr/afs/etc/KeyFile</emphasis> file must contain the same keys as all other server machines in the cell. If
2821 you run a system control machine, run the <emphasis role="bold">upclientetc</emphasis> process on every database server
2822 machine other than the system control machine; if you do not run a system control machine, use the <emphasis
2823 role="bold">bos addkey</emphasis> command as instructed in the chapter in the <emphasis>OpenAFS Administration
2824 Guide</emphasis> about maintaining server encryption keys.</para>
2826 <para>The instructions in this section assume that the machine on which you are installing database server functionality
2827 is already a file server machine. Contact the AFS Product Support group to learn how to install database server
2828 functionality on a non-file server machine.</para>
2832 <para>During the installation of database server functionality, you must restart all of the database server machines to
2833 force the election of a new Ubik coordinator (synchronization site) for each database server process. This can cause a
2834 system outage, which usually lasts less than 5 minutes.</para>
2838 <para>Updating the kernel memory list of database server machines on each client machine is generally the most
2839 time-consuming part of installing a new database server machine. It is, however, crucial for correct functioning in your
2840 cell. Incorrect knowledge of your cell's database server machines can prevent your users from authenticating, accessing
2841 files, and issuing AFS commands.</para>
2843 <para>You update a client's kernel memory list by changing the <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis>
2844 file and then either rebooting or issuing the <emphasis role="bold">fs newcell</emphasis> command. For instructions, see
2845 the chapter in the <emphasis>OpenAFS Administration Guide</emphasis> about administering client machines.</para>
2847 <para>The point at which you update your clients' knowledge of database server machines depends on which of the database
2848 server machines has the lowest IP address. The following instructions indicate the appropriate place to update your client
2849 machines in either case. <itemizedlist>
2851 <para>If the new database server machine has a lower IP address than any existing database server machine, update
2852 the <emphasis role="bold">CellServDB</emphasis> file on every client machine before restarting the database server
2853 processes. If you do not, users can become unable to update (write to) any of the AFS databases. This is because the
2854 machine with the lowest IP address is usually elected as the Ubik coordinator, and only the Coordinator accepts
2855 database writes. On client machines that do not have the new list of database server machines, the Cache Manager
2856 cannot locate the new coordinator. (Be aware that if clients contact the new coordinator before it is actually in
2857 service, they experience a timeout before contacting another database server machine. This is a minor, and
2858 temporary, problem compared to being unable to write to the database.)</para>
2862 <para>If the new database server machine does not have the lowest IP address of any database server machine, then it
2863 is better to update clients after restarting the database server processes. Client machines do not start using the
2864 new database server machine until you update their kernel memory list, but that does not usually cause timeouts or
2865 update problems (because the new machine is not likely to become the coordinator).</para>
2867 </itemizedlist></para>
2869 </itemizedlist></para>
2872 <primary>overview</primary>
2874 <secondary>installing additional database server machine</secondary>
2877 <sect2 id="Header_110">
2878 <title>Summary of Procedures</title>
2880 <para>To install a database server machine, perform the following procedures. <orderedlist>
2882 <para>Install the <emphasis role="bold">bos</emphasis> suite of commands locally, as a precaution</para>
2886 <para>Add the new machine to the <emphasis role="bold">/usr/afs/etc/CellServDB</emphasis> file on existing file server
2891 <para>Update your cell's central <emphasis role="bold">CellServDB</emphasis> source file and the file you make available
2892 to foreign cells</para>
2896 <para>Update every client machine's <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file and kernel memory
2897 list of database server machines</para>
2901 <para>Start the database server processes (Authentication Server, Backup Server, Protection Server, and Volume Location
2906 <para>Restart the database server processes on every database server machine</para>
2910 <para>Notify the AFS Product Support group that you have installed a new database server machine</para>
2912 </orderedlist></para>
2915 <primary>database server machine</primary>
2917 <secondary>installing</secondary>
2919 <tertiary>additional</tertiary>
2923 <primary>instructions</primary>
2925 <secondary>database server machine, installing additional</secondary>
2929 <primary>installing</primary>
2931 <secondary>database server machine</secondary>
2933 <tertiary>additional</tertiary>
2937 <sect2 id="Header_111">
2938 <title>Instructions</title>
2941 <para>It is assumed that your PATH environment variable includes the directory that houses the AFS command binaries. If not,
2942 you possibly need to precede the command names with the appropriate pathname.</para>
2947 <para>You can perform the following instructions on either a server or client machine. Login as an AFS administrator who
2948 is listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file on all server machines. <programlisting>
2949 % <emphasis role="bold">klog</emphasis> <replaceable>admin_user</replaceable>
2950 Password: <replaceable>admin_password</replaceable>
2951 </programlisting></para>
2955 <para>If you are working on a client machine configured in the conventional manner, the <emphasis
2956 role="bold">bos</emphasis> command suite resides in the <emphasis role="bold">/usr/afsws/bin</emphasis> directory, a
2957 symbolic link to an AFS directory. An error during installation can potentially block access to AFS, in which case it is
2958 helpful to have a copy of the <emphasis role="bold">bos</emphasis> binary on the local disk. This step is not necessary if
2959 you are working on a server machine, where the binary resides in the local <emphasis role="bold">/usr/afs/bin</emphasis>
2960 directory. <programlisting>
2961 % <emphasis role="bold">cp /usr/afsws/bin/bos /tmp</emphasis>
2962 </programlisting> <indexterm>
2963 <primary>bos commands</primary>
2965 <secondary>addhost</secondary>
2966 </indexterm> <indexterm>
2967 <primary>commands</primary>
2969 <secondary>bos addhost</secondary>
2970 </indexterm> <indexterm>
2971 <primary>database server machine</primary>
2973 <secondary>entry in server CellServDB file</secondary>
2975 <tertiary>for new db-server machine</tertiary>
2976 </indexterm> <indexterm>
2977 <primary>CellServDB file (server)</primary>
2979 <secondary>adding entry for new db-server machine</secondary>
2980 </indexterm> <indexterm>
2981 <primary>adding</primary>
2983 <secondary>new db-server machine to CellServDB files</secondary>
2988 <para><anchor id="LIWQ115" />Issue the <emphasis role="bold">bos addhost</emphasis> command to add the new database server
2989 machine to the <emphasis role="bold">/usr/afs/etc/CellServDB</emphasis> file on existing server machines (as well as the
2990 new database server machine itself).</para>
2992 <para>Substitute the new database server machine's fully-qualified hostname for the <replaceable>host name</replaceable>
2993 argument. If you run a system control machine, substitute its fully-qualified hostname for the
2994 <replaceable>machine name</replaceable> argument. If you do not run a system control machine, repeat the <emphasis
2995 role="bold">bos addhost</emphasis> command once for each server machine in your cell (including the new database server
2996 machine itself), by substituting each one's fully-qualified hostname for the <replaceable>machine name</replaceable>
2997 argument in turn.</para>
3000 % <emphasis role="bold">bos addhost</emphasis> <<replaceable>machine name</replaceable>> <<replaceable>host name</replaceable>>
3003 <para>If you run a system control machine, wait for the Update Server to distribute the new <emphasis
3004 role="bold">CellServDB</emphasis> file, which takes up to five minutes by default. If you are issuing individual <emphasis
3005 role="bold">bos addhost</emphasis> commands, attempt to issue all of them within five minutes.</para>
3008 <para>It is best to maintain a one-to-one mapping between hostnames and IP addresses on a multihomed database server
3009 machine (the conventional configuration for any AFS machine). The BOS Server uses the <emphasis
3010 role="bold">gethostbyname( )</emphasis> routine to obtain the IP address associated with the <replaceable>host
3011 name</replaceable> argument. If there is more than one address, the BOS Server records in the <emphasis
3012 role="bold">CellServDB</emphasis> entry the one that appears first in the list of addresses returned by the routine. The
3013 routine possibly returns addresses in a different order on different machines, which can create inconsistency.</para>
3018 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">bos listhosts</emphasis> command on each
3019 server machine to verify that the new database server machine appears in its <emphasis role="bold">CellServDB</emphasis>
3020 file. <programlisting>
3021 % <emphasis role="bold">bos listhosts</emphasis> <<replaceable>machine name</replaceable>>
3022 </programlisting></para>
3026 <para><anchor id="LIWQ116" />Add the new database server machine to your cell's central <emphasis
3027 role="bold">CellServDB</emphasis> source file, if you use one. The standard location is <emphasis
3028 role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
3029 role="bold">/common/etc/CellServDB</emphasis>.</para>
3031 <para>If you are willing to make your cell accessible to users in foreign cells, add the new database server machine to
3032 the file that lists your cell's database server machines. The conventional location is <emphasis
3033 role="bold">/afs/</emphasis><replaceable>cellname</replaceable><emphasis
3034 role="bold">/service/etc/CellServDB.local</emphasis>. <indexterm>
3035 <primary>database server machine</primary>
3037 <secondary>entry in client CellServDB file</secondary>
3039 <tertiary>for new db-server machine</tertiary>
3040 </indexterm> <indexterm>
3041 <primary>CellServDB file (client)</primary>
3043 <secondary>adding entry</secondary>
3045 <tertiary>for new db-server machine</tertiary>
3046 </indexterm> <indexterm>
3047 <primary>client machine</primary>
3049 <secondary>CellServDB file</secondary>
3051 <tertiary>adding entry</tertiary>
3056 <para><anchor id="LIWQ117" />If this machine's IP address is lower than any existing database server machine's, update
3057 every client machine's <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file and kernel memory list to include
3058 this machine. (If this machine's IP address is not the lowest, it is acceptable to wait until Step <link
3059 linkend="LIWQ123">12</link>.)</para>
3061 <para>There are several ways to update the <emphasis role="bold">CellServDB</emphasis> file on client machines, as
3062 detailed in the chapter of the <emphasis>OpenAFS Administration Guide</emphasis> about administering client machines. One
3063 option is to copy over the central update source (which you updated in Step <link linkend="LIWQ116">5</link>), with or
3064 without using the <emphasis role="bold">package</emphasis> program. To update the machine's kernel memory list, you can
3065 either reboot after changing the <emphasis role="bold">CellServDB</emphasis> file or issue the <emphasis role="bold">fs
3066 newcell</emphasis> command. <indexterm>
3067 <primary>Authentication Server</primary>
3069 <secondary>starting</secondary>
3071 <tertiary>new db-server machine</tertiary>
3072 </indexterm> <indexterm>
3073 <primary>starting</primary>
3075 <secondary>Authentication Server</secondary>
3077 <tertiary>new db-server machine</tertiary>
3078 </indexterm> <indexterm>
3079 <primary>database server machine</primary>