UNPKG

arch-wiki-md-repo

Version:

All arch-wiki articles in markdown format, updated every two days.

68 lines (42 loc) 3.18 kB
[Shfs](http://shfs.sourceforge.net/) is a simple and easy to use Linux kernel module which allows you to mount remote filesystems using a plain shell (ssh) connection. When using shfs, you can access all remote files just like the local ones, only the access is governed through the transport security of ssh. **Note:** The FUSE-based [SSHFS](/index.php/SSHFS "SSHFS") is much more widely used, as shfs has not been updated since 2004. ## Contents * [1 Why SHFS?](#Why_SHFS.3F) * [2 Installation](#Installation) * [3 Configuration](#Configuration) * [3.1 /etc/fstab](#.2Fetc.2Ffstab) * [4 See Also](#See_Also) * [5 External Links](#External_Links) ## Why SHFS? Shfs supports some nice features: * file cache for access speedup * perl and shell code for the remote (server) side * could preserve uid/gid (root connection) * number of remote host platforms (Linux, Solaris, Cygwin, ...) * arbitrary command used for connection (instead of ssh) * persistent connection (reconnect after ssh dies) If these features cannot convince you, I probably cannot either. Yet, consider: the only thing you need on the server is a sshd running - and you can mount your filesystem from **anywhere** in a **secure** way. ## Installation In order to use shfs it needs to be installed and configured on the client side, NOT on the server side! Server only needs to have working sshd running. [Install](/index.php/Install "Install") the [shfs-utils](https://www.archlinux.org/packages/?name=shfs-utils) package. If you run a custom kernel, use [ABS](/index.php/ABS "ABS") to compile it yourself. ## Configuration If you want to use shfsmount as mortal user, you will have to `chmod +s /usr/bin/shfsmount` and `chmod + /usr/bin/shfsumount`. However it is much more comfortable to put your mount options into `/etc/fstab` - this is what mine looks like: ``` remoteuser@Server:/data /mnt/data shfs rw,noauto,uid=localuser,persistent 0 0 remoteuser@Server:/crap /mnt/crap shfs rw,noauto,uid=localuser,persistent 0 0 remoteuser@Server:/backup /mnt/backup shfs rw,noauto,uid=localuser,persistent 0 0 remoteuser@Server:/home /mnt/home shfs rw,noauto,uid=localuser,persistent 0 0 ``` Soon you will get tired typing passwords and once you do, you might consider [Using SSH Keys](/index.php/Using_SSH_Keys "Using SSH Keys"). Btw, if you are a paranoid bastard, like I am, and do not run ssh on port 22 on your server, you will need to complete your option list with `port=<portnumber>`. ### /etc/fstab To add an entry for an shfs volume in your fstab, add a line of the format: ``` userid@remoteMachine:/remoteDirectory /home/userid/remoteDirectory shfs rw,user,noauto 0 0 ``` (Came from [Ubuntu Forums](http://ubuntuforums.org/archive/index.php/t-30332.html)). ## See Also * [SSHFS](/index.php/SSHFS "SSHFS") - A more up-to-date, FUSE-based implementation of an SSH-based filesystem. ## External Links * [http://shfs.sourceforge.net/](http://shfs.sourceforge.net/) for a supposed to be complete reference. * [http://www.openssh.com/](http://www.openssh.com/) for a really complete reference ;)