welcome: please sign in

Revision 4 as of 2007-11-12 18:14:01

Clear message
Edit

MemberManual / TransferringFiles / OpenAFS / Fedora

This is the chapter of the MemberManual that describes how to install the OpenAFS client on RedHat Fedora.

TableOfContents

Packages to Install and Build

Download the [http://www.openafs.org/release/latest.html OpenAFS source RPM] for your version of Fedora. This will have a filename like openafs-1.4.4-fc6.2.src.rpm. Build this package on your machine with the rpmbuild command, such as this one (please alter as necessary):

sudo rpmbuild --rebuild --target=i686 openafs-1.4.4-fc6.2.src.rpm

Note: You will need to have the kernel-headers package installed for this to work.

If the build completed successfully, you should see some lines that say "Wrote: " towards the end of the output. To install the new created package, use rpm:

rpm -ivh packagename"

Note: should you install a new kernel, you'll have to repeat this part of the process!

Now, install the openafs-1.4.4-fc6.2.i386.rpm, openafs-client-1.4.4-fc6.2.i386.rpm, and openafs-krb5-1.4.4-fc6.2.i386.rpm, or the newest stable packages for your platform.

Configuration

Rebuilding the OpenAFS Module

You will have to rebuild the source RPM every time your kernel is updated. If you followed the steps above, the source rpm should have been installed in /usr/src/redhat/SRPMS/. Use the rpmbuild command above to build this. This resulting RPM file will be put in an appropriate directory under /usr/src/redhat/RPMS if the build is successful. It will contain the name of the running kernel. Install this RPM, and start the OpenAFS client:

/etc/init.d/openafs-client start

If you're lazy you may want to script the process of creating a new OpenAFS module each time you install a new kernel. Here is a script that worked on a Fedora 7 system. It rebuilds the source RPM, installs it, and starts the OpenAFS daemon. The author notes that it hasn't been well tested as it was wrote very quickly, so feel free to make it more robust if desired:

# Re-builds the openafs modules for the currently running kernel.
# Should work on Fedora systems.
# This has not been broadly tested, written Tue Jun  5 11:30:35 EDT 2007
# by Justin S. Leitgeb [leitgebj AT hcoop -- NOSPAM -- net].

OPENAFS_SRPM="/usr/src/redhat/SRPMS/openafs-1.4.4-fc6.2.src.rpm"

if [ -a  $OPENAFS_SRPM ] ; then
    echo SRPM $OPENAFS_SRPM exists, starting rebuild. ;
    rpmbuild --rebuild --target=i686 $OPENAFS_SRPM
    
    # Figure out what the filename should be for the new RPM based on
    # running kernel version, then install it.
    kernel_name_for_afs=`uname -r | sed 's/-/_/'`

    # Not a pretty command but it worked for me... we'll see if it does in the future.
    new_afs_rpm=`find /usr/src/redhat/RPMS/ -type f | grep openafs | grep $kernel_name_for_afs | grep kernel | head -1`
    
    rpm -ivh $new_afs_rpm

    echo Re-starting openafs client...
    /etc/init.d/openafs-client start
fi

Troubleshooting

If you get an error like "aklog: unable to obtain tokens for cell hcoop.net (status: 11862790)" it may mean that your router is blocking SRV requests. If you're running djbdns locally (used by lots of operating systems for embedded devices, such as OpenWrt), make sure that the line filterwin2k is commented out in /etc/dnsmasq.conf, or whatever the configuration file is on your machine.

Read MemberManual/ShellAccess/TroubleshootingKerberos for more.