IP Address: 54.147.142.16



本文的主要目的是逐步演示如何使用SSHFS通过SSH连接远程Linux文件系统,这对于Linux系统管理员来说显得十分有用,因为这样可以通过一台Linux主要访问多个Linux系统的文件。这对于近期发威的GFW来说也不失为一种解决办法,通过可以使用的VPS,将原本不能访问的VPS文件挂载到可以使用的VPS上来,算是文件再利用的一个方案。

在开始演示之前,我们首先需要了解一下SSHFS以及它是如何工作的。

什么是SSHFS

SSHFS是(Secure SHell FileSystem)首字母简写,其软件允许用户通过SSH文件传输协议(SFTP)加载远程文件系统。SFTP是一套安全的文件传输协议,提供文件接入、文件传输以及文件管理的各种功能。由于SFTP在文件传输时是加密传输的,于是产生了SSHFS工具,它利用内核FUSE (Filesystem in Userspace)功能,让无权限用户也可以访问远程目录。

本文将逐步演示如何安装SSHFS客户端,并使用该客户端连接远程目录并进行挂载。

一、安装SSHFS客户端

主流的Linux发行版默认没有安装SSHFS客户端,这就需要通过如下命令进行安装,如果未找到软件,则在系统中添加epel 软件库。

# yum install sshfs
# dnf install sshfs              [On Fedora 22+]
$ sudo apt-get install sshfs     [On Debian/Ubuntu]

二、创建SSHFS加载目录

SSHFS安装成功后,就可以在本机创建一个连接远程目录的挂载点,也就是挂载目录:

# mkdir /mnt/daehub

三、通过SSHFS挂载远程目录

挂载点创建完成后,就可以使用SSHFS来挂载远程目录了。注意挂载时最好使用root用户,以免出现不必要的权限问题。远程目录和挂载目录根据实际情况自动修改为正确值,remoteuser用户以及远程Linux主机地址根据实际值修改:

# sshfs remoteuser@x.x.x.x:/home/remoteuser/ /mnt/daehub
$ sudo sshfs -o allow_other remoteuser@x.x.x.x:/home/remoteuser/ /mnt/daehub    [On Debian/Ubuntu]

如果远程主机配置了SSH密钥认证,则使用如下命令指定密钥文件:

# sshfs -o IdentityFile=~/.ssh/id_rsa remoteuser@x.x.x.x:/home/remoteuser/ /mnt/daehub
$ sudo sshfs -o allow_other,IdentityFile=~/.ssh/id_rsa remoteuser@x.x.x.x:/home/tecmint/ /mnt/daehub   [On Debian/Ubuntu]

四、测试远程目录挂载是否成功

现在,就可能进行挂载目录查看是否挂载成功了:

# cd /mnt/daehub
# ls

确认挂载点的确是远程目录,文件也是远程目录文件后,就表示SSHFS已经成功将远程目录挂载到系统了。

五、使用df 命令查看挂载信息

如果使用df -hT命令,就可以查看详细的挂载信息,示意图如下:

标红部分就是挂载的远程目录,现在就可以象访问本地目录一样来使用远程目录了。是不是很方便呢。

六、卸载远程目录

如果不需要使用远程目录了,则使用如下命令卸载远程目录,就象卸载本地文件一样:

# unmount /mnt/daehub

以上就是文章的全部内容,希望大家在对付GFW时觉得有用哦。

发表评论

电子邮件地址不会被公开。 必填项已用*标注