There were 5 steps/stages to installing AFS 3.4. 1) Rework package input file in /afs/alm/wsadmin. 2) Add AIX 4.1 volumes for @sys split at /afs/alm/rs_aix41. 3) Prepare afs code for installation in /afs/alm/rs_aix41/usr/afsws/root.client. 4) Add to /local/lib/afs/maketar and run it, building the tar'd, afs software install image in /local/lib/afs/afsclient-34beta.tar. 5) Rework install-time script, /tmp/setupnet. 6) Rework boot-time stuff, rc.afs. 7) Try everything out on maple. ------------------------------------------------------------------------------------- Step 1) Rework package input file in /afs/alm/wsadmin. Modify the src/Makefile. Add rs_aix41 lines wherever there were rs_aix32 lines (13 places). Remove rt_aix221 references (7 places) & rs_aix31 references (13 places). Modify the lib/rs_aix41.* files, patterning them after the lib/rs_aix32.* files. lib/rs_aix41.AFS - Remove extra /var/vice/etc/dkload/rc.afsd.med line. lib/rs_aix41.afsr - Make empty for now 'till I investigate the afsr commands. lib/rs_aix41.net - Remove the /usr/sbin stuff that kept gated, named, etc. updated and the /etc/gated.almrcf & /etc/named.almrcf lines. lib/rs_aix41.prods - Unchanged. cd src make - to create new files (e.g. src/minimal.rs_aix41). make install - to move updated files from src directory into etc directory. ------------------------------------------------------------------------------------ Step 2) Add AIX 4.1 AFS volumes for @sys split at /afs/alm/rs_aix41. Tom made rs_aix41, rs_aix41.local, rs_aix41.usr, and rs_aix41.usr.afsws, making the r/w copy on Aspen and replicating it twice on Ash & Redwood. The commands he used for each were *similar* to (I didn't write them down) vos create aspen vicepa rs_aix41 fs mkmount /afs/alm/rs_aix41 fs setquota /afs/alm/rs_aix41 5000 Then, to replicate them, vos addsite -server ash -partition vicepa -id #rs_aix41 vos release -id #rs_aix41 Break the link from /afs/alm/rs_aix41 to rs_aix32. Put links 1 level down. cd /afs/.almaden.ibm.com mkdir rs_aix41 cd rs_aix41 ln -s ../rs_aix32/arcusr arcuser (Actually, Tom didn't do it quite this way.) ln -s ../rs_aix32/contrib contrib (He removed some stuff and made the links at) ln -s ../rs_aix32/local local (the local level, 1 level lower.) mkdir usr ------------------------------------------------------------------------------------ Step 3) Prepare afs code for installation in /afs/alm/rs_aix41/usr/afsws. Tom already had already created a rs_aix41.usr.afsws AFS volume, mounted at (where else?) afs/alm/rs_aix41/usr/afsws, and replicated it across Aspen, Ash, & Redwood. He also had already copied the AFS 3.4 beta code from /afs/alm/rcf/afstape/3.4beta/rs_aix41 into /afs/alm/rs_aix41/usr/afsws via cd /afs/alm/rs_aix41/usr up -v /afs/alm/rcf/afstape/3.4beta/rs_aix41 afsws and set the ACL's and owners via cd afsws find . -type d -print | xargs fs sa -acl system:anyuser read \ system:authuser none system:administrators all -dir and chown -R root.system . The /afs/alm/rs_aix41/usr/afsws/root.client directory is used to install afs onto another machine via a tar file. One sets up this directory as if it was the target's / directory. Make local mods to root.client. This is all done from a machine with AFS already installed, klog admin cd /afs/.almaden.ibm.com/rs_aix41/usr/afsws/root.client mvdir usr var chown bin.bin var cp -p /usr/afsws/root.client/.package . mkdir etc chmod 755 etc *** In 3.2 it was supposed to be 775, but it actually had 755 *** In 4.1, 755 is correct cp -p /afs/alm/rcf/afstape/3.4beta/rs_aix41/etc/package etc cp -p /usr/afsws/root.client/etc/rc.afs etc and removing the "export MALLOCTYPE=3.1" and the gfsinstall of nfs lines. chown -R root.system etc cd var/vice mkdir cache chmod 700 cache *** The 3.2 stuff was set to 755, but 700 is correct chown root.system cache cd etc rm CellServDB.sample cp -p /afs/alm/common/etc/CellServDB . cp -p /afs/alm/common/etc/ThisCell . cp -p /usr/afsws/root.client/var/vice/etc/cacheinfo . cp -p ../../../../bin/bos . To insure the bos & fs commands are in cp -p ../../../../bin/fs . /var/vice/etc on the target's machine. Also had to cd dkload and chmod 755 rc.* (they were all 444). ------------------------------------------------------------------------------------ Step 4) Build the tar'd, afs software install image. The afs install image today is in /local/lib/afs, aka /afs/alm/@sys/local/lib/afs. That install image was built with the local/lib/afs/maketar script. Looks like all I need to do is run /local/lib/afs/maketar after adding these lines dest=/afs/.almaden.ibm.com/rs_aix41/local/lib/afs cd /afs/.almaden.ibm.com/rs_aix41/usr/afsws/root.client /bin/tar -cvdf $dest/afsclient-34-beta.tar ./usr/vice ./.package ./etc/* That'll write the afs software install image into /local/lib/afs/afsclient-34beta.tar. ------------------------------------------------------------------------------------ Step 5) Rework install-time scripts /tmp/setupnet and /local/lib/afs/afsinstall. What I propose is instead of hiding a script in /tmp when a mksysb image is installed, I instead put the function of setupnet in a NIM script that will get allocated to a machine along with the lpp_source and spot, e.g. nim -o allocate -a lpp_source=lpp1 -a spot=spot1 nim_script=postinstall jasper. Also, instead of having a separate afsinstall script that we have to tftp over before running, I'll incorporate that function into postinstall. Also, instead of tftp-ing the tar'd afs install image over from oak, I'll let the nim master nfs mount it. (I think nim already nfs-mounts the script, doesn't it? If so, then if the tar'd afs install images is in the same directory, I don't have to do anything else special. Verify with an echo $0 or pwd > save or ls -al > save.) The functions we need in this postinstall nim script are 1) If root doesn't have a password, then add one. 2) Fix up default gateway with (see nim book, page 5-14) chdev -l inet0 -a route=net,-netmask,255.255.255.0,0, 3) ------------------------------------------------------------------------------------ Step 9) Install afsr commands. See /local/lib/alminst/scripts/afsrinst.