SSHFS(SSH Filesystem)是一个基于FUSE的文件系统客户端,用于通过SSH连接远程目录。SSHFS使用的是SFTP协议,它是SSH的一个子系统,在大多数SSH服务器上默认启用

简介

SSHFS(SSH Filesystem)是一个基于FUSE的文件系统客户端,用于通过SSH连接远程目录。SSHFS使用的是SFTP协议,它是SSH的一个子系统,在大多数SSH服务器上默认启用

与其他网络文件系统(如NFS和Samba)相比,SSHFS的优势在于它不需要在服务器端进行任何额外的配置。要使用SSHFS,您只需要SSH访问远程服务器。

系统环境

Cetnos7.7

Windows10

安装​Centos​​安装SSHFS

[root@localhost ~]# yum -y install epel-release && yum -y install sshfs

Windows10安装SSHFS

需要安装最新版本的WinFsp和SSHFS-Win,

在Centos中挂载远程文件系统

SSHFS使用格式:

sshfs [user@]host:[dir] mountpoint [options]

如果没有指定远程目录,默认会连接用户的家目录。

例如,远程主机需要访问root的家目录,在这里使用root用户远程访问。挂载点这里使用/mnt文件夹。

[root@localhost ~]# sshfs root@192.168.0.105: /mnt
root@192.168.0.105's password:

使用SSHFS文件系统远程挂载目录_文件系统

系统将提示您输入用户密码。为了避免每次装载远程目录时键入密码,可以生成SSH密钥并设置无密码登录。

如果需要开机自动挂载,可以在/etc/fstab文件中添加:

[root@localhost ~]# echo 'root@192.168.0.105:/Shares /mnt fuse.sshfs defaults 0 0'>> /etc/fstab

前提是需要设置无密码登录,不然开机不能挂载。

卸载远程文件系统

[root@localhost ~]# fusermount -u /mnt/
或者
[root@localhost ~]# umount /mnt

在Windows10中挂载远程文件系统

默认添加的远程目录是用户的家目录。

右键此电脑 - 映射网络驱动器

使用SSHFS文件系统远程挂载目录_客户端_02

使用SSHFS文件系统远程挂载目录_客户端_03

如果需要远程挂载根目录,可以如下操作:

使用SSHFS文件系统远程挂载目录_客户端_04

使用SSHFS文件系统远程挂载目录_服务器_05

总结

由于SSHFS使用SSH协议,所以服务器和客户端之间传输的所有数据都必须加密和解密。与NFS相比,这会导致性能略有下降,并且客户端和服务器上的CPU使用率更高。sshfs可以临时用来访问远程文件。