sshfs
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 (
dmg
) (pkg
) from http://osxfuse.github.io - Open OSXFuse
dmg
, run installer - Download SSHFS (
pkg
) from from http://osxfuse.github.io - Run SSHFS installer
pkg
- Create a folder to access the remote filesystems (aka a mount point):
mkdir /sshfs/
Mounting remote filesystems with sshfs
sshfs username@remotesystem:/full/path/to/directory /mount/point
For example, sshfs meyer@schl15:/nfs/userdocs/ps/meyer /sshfs
would use
schl15
as a host to access the directory /nfs/userdocs/ps/meyer
(in other
words, that user's NFS home directory).
On Linux, if you don't have root or sudo access, you can mount sshfs via a directory in your home directory. Just remember to specify the PATH to the directory. You will need the fuse-sshfs package installed.
OS X (Mac) helpful hints
An example of mounting from OSX on your local system is as follows -
sudo mkdir -p /sshfs/userdocs
sudo chown -R $USER /sshfs
/usr/local/bin/sshfs oconnor@xtal200.harvard.edu:/nfs/userdocs /sshfs/userdocs -o volname=userdocs,reconnect,ServerAliveInterval=15,ServerAliveCountMax=3,idmap=user,auto_xattr,dev,suid,defer_permissions,noappledouble,noapplexattr,IdentityFile=$HOME/.ssh/sshfs-id_rsa
Basically, your local user needs to own the destination $PATH. We mount one complete filesystem from the remote site(avoids local Apple Finder issues). We give the volume a name (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.
Unmounting remote filesystems
On occasion the mount may become stuck or unresponsive you can force unmount via -
diskutil umount force /sshfs/userdocs
Using helper script
There is 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 /Users/Shared/
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/sshfs* /Users/Shared/
First run use sudo to create /nfs mount points.
sudo sshfs-helper.sh
The script will create a file in your home folder called .sshfs-mounts
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
oconnor@sshfs.sbgrid.org /nfs/userdocs /nfs/userdocs
jo232@transfer.o2.hms.harvard.edu /home/myfolder /nfs/o2home
For additional folders you must create the destination folder like - mkdir /nfs/o2home
After it is working you can add a shortcut into your dock by navigating to /Users/Shared/ on your Mac open /Users/Shared
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.