Setting up sshfs on OS X (Mac) systems
Installation requires administrative privileges.
Prior to installing, you should make sure that password-less-ssh is configured correctly between the local system and the remote system.
- Download OSXFuse (
pkg) from http://osxfuse.github.io
- Open OSXFuse
dmg, run installer
- Download SSHFS (
pkg) from from http://osxfuse.github.io
- Run SSHFS installer
- Create a folder to access the remote filesystems (aka a mount point):
Mounting remote filesystems with sshfs
sshfs username@remotesystem:/full/path/to/directory /mount/point
sshfs meyer@schl15:/nfs/userdocs/ps/meyer ~/userdocs/home would use
schl15 as a host to access the directory
/nfs/userdocs/ps/meyer (in other
words, that user's NFS home directory).
You should mount sshfs via a directory in your home directory. Just remember to specify the PATH to the directory.
OS X (Mac) helpful hints
As of OSX 10.15 Catilina we are not recommending to create mounts in the root path or / of the file system.
An example of mounting from OSX on your local system is as follows -
mkdir ~/userdocs /usr/local/bin/sshfs firstname.lastname@example.org:/nfs/userdocs /Users/oconnor/userdocs -o volname=userdocs,reconnect,ServerAliveInterval=15,ServerAliveCountMax=3,idmap=user,auto_xattr,dev,suid,defer_permissions,noappledouble,noapplexattr
You should mount one complete filesystem from the remote site, so this would be anything listed in /nfs for example. This avoids local Apple Finder issues. We give the volume a name
volname=userdocs (shows mount point on your desktop), add some additional options for server connections, etc. If you are using an password-less-ssh you would add it's path to the IdentityFile paramater - adding
,IdentityFile=$HOME/.ssh/id_rsa to the end of the line.
Unmounting remote filesystems
On occasion the mount may become stuck or unresponsive you can force unmount via -
diskutil umount force /Users/oconnor/userdocs
Using helper script
We created a 'helper' script available that can be used with sshfs_nfs.app for mac to automount at login. The app is simply a wrapper for sshfs-helper.sh and assumes the script exists in your home folder.
If the mounts become stuck just rerun to reattach shares.
scp $USER@xtal200.harvard.edu:/net/cronus/cmcd1/arc/shared/sshfs-helper.sh .
or copy the whole set -
rsync -rlptD $USER@xtal200.harvard.edu:/net/cronus/cmcd1/arc/shared/sbgrid-sshfsfiles.zip .
The script will create a file in your home folder called
You can add or change any number of mounts that sshfs-helper.sh -
To open -
open .sshfs_mounts then edit in textedit.app.
An example -
#USER@HOST REMOTE_FOLDER LOCAL_FOLDER | empty local folder must exist
email@example.com /nfs/userdocs /Users/oconnor/userdocs
firstname.lastname@example.org /home/myfolder /Users/oconnor/o2home
After it is working you can add a shortcut into your dock by navigating to your home folder on your Mac
open ~ and then dragging the sshfs_nfs.app into your dock. If you need to reconnect to the shares just press the app and it will connect or reconnect.