Mounting AFS on macOS

Mounting AFS on macOS can be a bit messy and is very poorly supported. In general it is preferred to access AFS via LxPlus and move your files to your local computer with scp. If you want to try mounting AFS anyway, there are two ways to proceed: using FUSE, or using OpenAFS.

Tested on macOS Sierra (10.12.6) and Catalina (10.15.4).

Using OpenAFS

So far, it is not possible to install OpenAFS on macOS High Sierra (10.13). More importantly, when upgrading macOS to version 10.13 it is extremely important to deinstall OpenAFS completely before making the upgrade, to avoid a never-ending loop of kernel-panics which are due to the AFS local cache being converted to the new Apple File System (APFS).

Installers can be downloaded from:

These are not officially supported, but third-party binaries provided by Sine Nomine (more information at https://wiki.openafs.org/archive/BinaryThirdParty/). Older versions of macOS are officially supported and can be downloaded from http://www.openafs.org/macos.html.

Update Auristor has installers for later versions of macOS:

This seems to work on Catalina, however, do not upgrade macOS without deinstalling OpenAFS (which is then named Auristor) first to avoid disk crashes.

During the installation, when asked for the local cell this is cern.ch. Give the installation permissions in System Preferences when needed. After installation, a reboot is needed. Luckily macOS comes with Kerberos pre-installed, so that's all. If you want to access protected paths, you'll have to login with Kerberos:

$ kinit user@CERN.CH     # get kerberos ticket
$ aklog                  # login to AFS cell

There is an OpenAFS/Auristor preference pane in your system preferences in which you can change the cell (not needed), auto-renew Kerberos tickets, and let OpenAFS start at boot.

Using FUSE and SSHFS

FUSE for mac and the SSHFS plugin can be downloaded from http://osxfuse.github.com. Alternatively, both can be installed using macports:

$ sudo port install osxfuse ; sudo port install sshfs

Verifying if OSXFUSE is installed can be done in the preferences pane, while checking if SSHFS is installed can be done by typing

$ sshfs  -h

in the terminal. To mount the filesystem we have first to create a folder to hold its location. Normally all disks are mounted in /Volumes/, however, from macOS 10.12 one needs to have root permissions to write to this location. But this is not really a problem, as a volume can be mounted at any location, so your home folder will do fine. Mounting the volume is then done by:

$ mkdir ~/DISK_NAME
$ sshfs USER@lxplus.cern.ch:AFSPATH  ~/DISK_NAME -ovolname=DISK_NAME

This can be simplified by making an alias in .bash_profile. Unmounting the volume is done in the usual way in Finder (clicking the unmount icon to the right of the volume). If for some reason unmounting does not work, the volume can be forcefully ejected by typing

$ diskutil unmountDisk force ~/DISK_NAME

If you want to automatically mount the drive on startup, have a look at:

http://superuser.com/questions/134140/mount-an-sshfs-via-macfuse-at-boot.

-- Main.FrederikVanDerVeken - 2020-04-01

Edit | Attach | Watch | Print version | History: r3 < r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r3 - 2020-04-01 - FrederikVanDerVeken
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    ABPComputing All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback