SSHFS allows you mount remote SLAC Unix storage onto your local desktop or laptop. You can use SSHFS from anywhere (eg, home or remote network).
Authentication is done using your SLAC Unix username and password.
SSHFS uses the SFTP protocol and SSH authentication. See https://github.com/libfuse/sshfs for more information. Whilst it is fine for general access, it is not recommended for large data transfers or big files.
You can use sshfs on Mac and Linux operating systems.
Installation
CentOS 7
sudo yum install sshfs
this will install the fuse-sshfs RPM which comes from the EPEL software repository (Extra Packages for Enterprise Linux).
The fuse-sshfs dependencies, fuse and fuse-libs, come from the CentOS base software repository.
Mac OS
You will need to first install FUSE for macOS. There is also a link for sshfs on the same webpage.
Usage
Generally, you define the remote server that has access to the filesystem that you are interested in, and 'mount' that to a local directory on your local desktop or laptop:
# Example: mount all SLAC NFS on your desktop/laptop mkdir -p ~/sshfs/nfs sshfs $USER@dtn01.slac.stanford.edu:/nfs ~/sshfs/nfs # Example: mount all SLAC AFS on your desktop/laptop mkdir -p ~/sshfs/afs/slac sshfs $USER@dtn01.slac.stanford.edu:/afs/slac.stanford.edu ~/sshfs/afs/slac
Make sure $USER is your SLAC Unix username. If your local desktop or laptop username is different, replace $USER with your SLAC Unix username.
Then on your local desktop/laptop, you should be able to see your remote files on as if it's on your local filesystem.
cd ~/sshfs/nfs/slac cd ~/sshfs/nfs/farm cd ~/sshfs/afs/slac
To unmount when you are finished:
cd # move outside the mount point /bin/fusermount -u ~/sshfs/nfs # CentOS 7 /sbin/umount ~/sshfs/nfs # MacOS cd # move outside the mount point /bin/fusermount -u ~/sshfs/afs/slac # CentOS 7 /sbin/umount ~/sshfs/afs/slac # MacOS
Additional Notes:
- For RHEL 6 and CentOS 6, you may need to add your username to the local fuse group in the /etc/group file, or else use sudo with the sshfs and fusermount commands.
- If you use SSHFS to mount remote SLAC AFS space, be aware that the AFS token you get during authentication lasts for 25 hours.
See also
https://confluence.slac.stanford.edu/display/SCSPub/Samba+Unix+Storage+Access
https://mountainduck.io/
https://cyberduck.io/
2 Comments
Kuktae Kim
Hi Karl,
Thank you for the information. It is really useful. I have one question.
If I use SSHFS to mount remote SLAC AFS space and the AFS token lasts for only 25 hours, does that mean I have to remount the remote server every 25 hours?
Karl Amrhein
If you wanted to have a valid AFS token, then yes you would need to do that. After 25 hours your AFS token will expire. The mount will still work, and you can still access AFS files which don't have restrictive ACLs (eg, world readable). There might be some mechanism to automatically renew the AFS token using krenew, but I don't know how that would interact or work with sshfs, so a remount would be the recommended thing to do.