Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo


Tree [857d63] sshfs_2_4 /

File Date Author Commit
compat 2006-01-20 Miklos Szeredi Miklos Szeredi [d2a3ed] fix
.gitignore 2011-01-25 Miklos Szeredi Miklos Szeredi [6d5e12] Fix cleanup when ssh connection is terminated.
AUTHORS 2004-12-04 Miklos Szeredi Miklos Szeredi [7fb3a0] *** empty log message ***
COPYING 2011-07-01 Miklos Szeredi Miklos Szeredi [6c1968] Update COPYING
ChangeLog 2012-03-08 Miklos Szeredi Miklos Szeredi [857d63] Released 2.4
Makefile.am 2008-04-23 Miklos Szeredi Miklos Szeredi [b1748d] Add manual page
NEWS 2011-07-01 Miklos Szeredi Miklos Szeredi [49203e] Released 2.3
README 2006-01-09 Miklos Szeredi Miklos Szeredi [95116f] doc update
cache.c 2012-02-08 Miklos Szeredi Miklos Szeredi [c5949f] fix unused but set variables
cache.h 2008-05-06 Miklos Szeredi Miklos Szeredi [4b28b1] Fix bug in caching which could cause file corru...
configure.ac 2012-03-08 Miklos Szeredi Miklos Szeredi [857d63] Released 2.4
generate-faq.sh 2006-08-18 Miklos Szeredi Miklos Szeredi [b917f9] *** empty log message ***
sshfs.1 2012-02-08 Chris Wolfe Chris Wolfe [b3af91] Add slave option to run sftp over stdin and stdout
sshfs.c 2012-02-17 Mike Kelly Mike Kelly [4dc106] make sure idmap files aren't writable by others
sshnodelay.c 2007-12-10 Miklos Szeredi Miklos Szeredi [37b408] change indenting

Read Me


This is a filesystem client based on the SSH File Transfer Protocol.
Since most SSH servers already support this protocol it is very easy
to set up: i.e. on the server side there's nothing to do.  On the
client side mounting the filesystem is as easy as logging into the
server with ssh.

The idea of sshfs was taken from the SSHFS filesystem distributed with
LUFS, which I found very useful.  There were some limitations of that
codebase, so I rewrote it.  Features of this implementation are:

  - Based on FUSE (the best userspace filesystem framework for Linux ;)

  - Multithreading: more than one request can be on it's way to the

  - Allowing large reads (max 64k)

  - Caching directory contents

  - Reconnect on failure

Latest version

The latest version and more information can be found on


How to mount a filesystem

Once sshfs is installed (see next section) running it is very simple:

  sshfs hostname: mountpoint

Note, that it's recommended to run it as user, not as root.  For this
to work the mountpoint must be owned by the user.  If the username is
different on the host you are connecting to, then use the
"username@host:" form.  If you need to enter a password sshfs will ask
for it (actually it just runs ssh which ask for the password if
needed).  You can also specify a directory after the ":".  The default
is the home directory.

Also many ssh options can be specified (see the manual pages for
sftp(1) and ssh_config(5)), including the remote port number

To unmount the filesystem:

  fusermount -u moutpoint


First you need to download FUSE 2.2 or later from:


You also need to install the devel package for glib2.0.  After
installing FUSE, compile sshfs the usual way:

  make install (as root)

And you are ready to go.

If checking out from CVS for the first time also do 'autoreconf -i'
before doing './configure'.