In Linux like operating systems, we can securely mount a remote file system over ssh protocol using sshfs command. SSHFS stands for Secure SHell FileSystem. SSHFS enables us to mount the remote file system and interact with remote directories and files on a local machine.

On the local computer where the SSHFS is mounted, the implementation makes use of the FUSE (File system in Userspace) kernel module. The practical effect of this is that the end-user can seamlessly interact with remote files being securely served over SSH just as if they were local files on his/her computer. On the remote computer, the SFTP subsystem of SSH is used.

Installation of SSHFS on CentOS/RHEL/Fedora

As sshfs package is not available in the default repositories, so first enable the epel repository and then use yum command to install sshfs.

# wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm
# yum install sshfs

Installation of SSHFS on Ubuntu

$ sudo apt-get install sshfs

Mount the Remote File System using the below command.

Syntax:

# sshfs [[email protected]]host:[dir] mountpoint

Example:

# sshfs [email protected]:/  /home/thegeekdiary/

In the above command we are mounting ”/” file system of remote host(mail9.nsitmail.com) on local the folder (/home/thegeekdiary). Verify the whether remote filesystem is mounted or not using command (df -hT).

sshfs installation on Linux

Permanently Mount Remote Filesystem

When we mount the remote filesystem using sshfs, and for some reason if your local machine gets rebooted, then after reboot remote filesystem will not be available, so to permanently mount the remote filesystem, add the below entries in the /etc/fstab file.

[email protected]:/  /home/thegeekdiary/   fuse defaults 0 0

Now run below command to reflect the changes of fstab file:

To Umount the Remote File system, use Below command:

# umount /home/thegeekdiary

OR

# fusermount -u mountpoint