如何使用SSHFS通过SSH挂载远程目录

linux

SSHFS(SSH文件系统)是基于FUSE的文件系统客户端,用于通过SSH连接安装远程目录。SSHFS使用的是SFTP协议,它是SSH的子系统,大多数SSH服务器默认情况下启用该协议。

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

由于SSHFS使用SFTP,因此必须对服务器和客户端之间传输的所有数据进行加密和解密。与NFS相比,这导致性能略有下降,并且客户端和服务器上的CPU使用率更高。

本教程将向您展示如何在Linux,macOS和Windows上安装SSHFS客户端以及如何挂载远程目录。

安装SSHFS

SSHFS软件包可用于所有主要操作系统,并且安装非常简单。

在Ubuntu和Debian上安装SSHFS

SSHFS可从默认的Ubuntu和Debian存储库中获得。通过输入以下内容更新软件包索引并安装sshfs客户端:

sudo apt update

sudo apt install sshfs

在CentOS上安装SSHFS

在CentOS和其他Red Hat衍生产品上,运行以下命令来安装sshfs:

sudo yum install sshfs

在macOS上安装SSHFS

macOS用户可以通过从osxfuse站点或通过Homebrew 下载FUSE和SSHFS软件包来安装SSHFS客户端:

brew cask install osxfusebrew install sshfs

在Windows上安装SSHFS

Windows用户需要安装两个软件包WinFsp和SSHFS-Win。

  • WinFsp。
  • SSHFS-Win。

挂载远程文件系统

以下说明适用于所有Linux发行版和macOS。

要挂载远程目录,SSH用户需要能够访问它。SSHFS mount命令采用以下形式:

sshfs [[email protected]]host:[remote_directory] mountpoint [options]

sshfs命令将读取SSH配置文件并使用每个主机的设置。如果未指定远程目录,则默认为远程用户主目录。

例如,要在IP地址为“ 192.168.121.121”的远程主机上挂载名为“ myfreax”的用户的主目录,请首先创建一个目录作为挂载点,该目录可以是您想要的任何位置:

mkdir ~/myfreaxremote

然后使用sshfs命令挂载远程目录:

sshfs [email protected]:/home/myfreax /home/myfreax/myfreaxremote

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

现在,您可以与本地文件相同的方式与位于远程服务器上的目录和文件进行交互。例如,您可以编辑,删除,重命名或创建新文件和目录。

如果要永久挂载远程目录,则需要编辑本地计算机的/etc/fstab文件,并添加一个新的挂载条目。这样,当系统启动时,它将自动安装远程目录。

要通过SSHFS从挂载远程目录/etc/fstab,请使用fuse.sshfs作为文件系统类型。

/etc/fstab

[email protected]:/remote/dir  /local/mountpoint  fuse.sshfs  defaults  0  0

创建持久性挂载时,请确保您可以使用基于SSH密钥的身份验证连接远程主机。

在Windows上挂载远程文件系统

Windows用户可以使用Windows资源管理器将网络驱动器映射到SSH服务器上的远程目录。

打开Windows资源管理器,右键单击“此PC”,然后选择“映射网络驱动器”。选择要安装的驱动器,然后在“文件夹”字段中以以下格式输入远程用户,服务器和路径:

\\sshfs\[email protected][\PATH]

在撰写本文时,SSHFS-Win不支持基于密钥的身份验证,因此需要将远程ssh服务器配置为接受基于密码的身份验证。

有关更多详细信息,请参阅SSHFS-Win手册。

卸载远程文件系统

要分离已挂载的文件系统,请使用umountfusermount命令,然后使用已挂载文件系统的目录(挂载点):

fusermount -u /local/mountpoint
umount /local/mountpoint

结论

在本指南中,您学习了如何使用SSHFS通过SSH挂载远程目录。当您要使用本地计算机应用程序与远程文件进行交互时,此功能很有用。

有关sshfs选项的完整列表,请man sshfs在终端中键入。

您可能还想通过设置SFTP Chroot Jail环境并更改默认的SSH端口来限制用户对其主目录的访问,从而为服务器添加额外的安全性。

如果您有任何问题或反馈,请随时发表评论。

以上是 如何使用SSHFS通过SSH挂载远程目录 的全部内容, 来源链接: utcz.com/z/507006.html

回到顶部