您的位置:首页 > 运维架构 > Linux

Redhat Enterprise Linux securely mount remote Linux / UNIX directory or file system using SSHFS

2010-08-17 12:05 501 查看
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[/code] 
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[/code] 
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

摘自:http://www.cyberciti.biz/tips/rhel-centos-mounting-remote-filesystem-using-sshfs.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐