Redhat Enterprise Linux securely mount remote Linux / UNIX directory or file system using SSHFS
You can easily mount remote server file system or your own home directory using special sshfs and fuse tools.
FUSE - Filesystem in Userspace
FUSE is a Linux kernel module also available for FreeBSD, OpenSolaris and Mac OS X that allows non-privileged users to create their own file systems without the need to write any kernel code. This is achieved by running the file system code in user space, while the FUSE module only provides a "bridge" to the actual kernel interfaces. FUSE was officially merged into the mainstream Linux kernel tree in kernel version 2.6.14.
You need to use SSHFS to access to a remote filesystem through SSH or even you can use Gmail account to store files.
Following instructions are tested on CentOS, Fedora Core and RHEL 4/5 only. But instructions should work with any other Linux distro without a problem.
Step # 1: Download and Install FUSE
Visit fuse home page and download latest source code tar ball. Use wget command to download fuse package:
# wget http://superb-west.dl.sourceforge.net/sourceforge/fuse/fuse-2.6.5.tar.gz
Untar source code:
# tar -zxvf fuse-2.6.5.tar.gz
Compile and Install fuse:
# cd fuse-2.6.5
# ./configure
# make
# make install
Step # 2: Configure Fuse shared libraries loading
You need to configure dynamic linker run time bindings using ldconfig command so that sshfs command can load shared libraries such as libfuse.so.2:
# vi /etc/ld.so.conf.d/fuse.conf
Append following path:
/usr/local/lib
Run ldconfig:
# ldconfig
Step # 3: Install sshfs
Now fuse is loaded and ready to use. Now you need sshfs to access and mount file system using ssh. Visit sshfs home page and download latest source code tar ball. Use wget command to download fuse package:
# wget http://easynews.dl.sourceforge.net/sourceforge/fuse/sshfs-fuse-1.7.tar.gz
Untar source code:
# tar -zxvf sshfs-fuse-1.7.tar.gz
Compile and Install fuse:
# cd sshfs-fuse-1.7
# ./configure
# make
# make install
Mounting your remote filesystem
Now you have working setup, all you need to do is mount a filesystem under Linux. First create a mount point:
# mkdir /mnt/remote
Now mount a remote server filesystem using sshfs command:
# sshfs vivek@rock.nixcraft.in: /mnt/remote
Where,
- sshfs : SSHFS is a command name
- vivek@rock.nixcraft.in: - vivek is ssh username and rock.nixcraft.in is my remote ssh server.
- /mnt/remote : a local mount point
When promoted supply vivek (ssh user) password. Make sure you replace username and hostname as per your requirements.
Now you can access your filesystem securely using Internet or your LAN/WAN:
# cd /mnt/remote
# ls
# cp -a /ftpdata . &
To unmount file system just type:
# fusermount -u /mnt/remote
or
# umount /mnt/remote
Further readings:
- Visit the official FUSE website
- Refer the man page of sshfs
Want to stay up to date with the latest Linux tips, news and announcements? Subscribe to our free e-mail newsletter or full RSS feed to get all updates.
You can Email this page to a friend.
You may also be interested in...
- Best Linux / UNIX Posts of 2007: Part ~ III
- Mounting with an alternative superblock
- Download of the day CentOS 5 CD / DVD ISO
- CentOS 4 / Redhat Enterprise Linux 4 iSCSI Installation and Configuration ( iscsi initiators )
- Chroot in OpenSSH / SFTP Feature Added To OpenSSH
Discussion on This Article:
Leave a Reply
We encourage your comments, and suggestions. But please stay on topic, be polite, and avoid spam. Thank you very much for stopping by our site!
Tags: fedora core, kernel code, kernel tree, kernel version, linux distro, linux kernel, privileged users, redhat file sharing, redhat share directory, remote server, source code tar, ssh file sharing, ssh mount, sshfs ~ Last updated on: December 18, 2007



I didn’t know that RedHat/CentOS didn’t include Fuse/SSHFS.
In Debian, we do things simply as:
`apt-get install sshfs fuse-utils`
sshfs host:/mount/point /mount/point
Ritehs
Another option is to install fuse RPMs via the ATrpms repository:
http://atrpms.net/
Then you can install the fuse-sshfs RPM from Fedora Core 6:
ftp://mirror.switch.ch/mirror/fedora/linux/extras/6/i386/fuse-sshfs-1.7-2.fc6.i386.rpm
sshfs is nice, but I experienced problems when working with cvs on a mounted filesystem over sshfs. CVS just refused to work with something like “unable to get working directory” or something similar.
what is the recommended way for this to operate in true user (aka w/o root permissions) or autofs type mode? I’d rather not suid fusermount
it is very good but i want more detail to configure
in redhat 5 edition ……………
venkatakrishnan,
This is more than sufficient to install and use the sshfs. Do you have any problem?