SHFS(SSH 文件系统)是一款功能强大的工具,它允许用户通过 SSH 挂载远程文件系统,从而提供一种安全便捷的方式来访问远程文件,就像访问本地文件一样。本文将引导您完成使用 SSHFS 挂载远程文件系统的过程,为精通 IT 的客户和系统管理员提供高效管理远程文件的实用解决方案。

什么是 SSHFS?

SSHFS 利用广泛用于安全远程访问的 SSH 协议在本地和远程文件系统之间建立无缝连接。通过在本地计算机上安装远程目录,您可以使用熟悉的本地工具和应用程序与远程文件进行交互,从而简化工作流程并提高工作效率。  

如何使用SSHFS通过SSH挂载远程文件系统?

使用 SSHFS 的好处

使用 SSHFS 有几个好处:  

  • 安全性:它使用 SSH 进行安全通信,确保您的数据在传输过程中被加密。 
  • 方便:访问远程文件就像在本地机器上一样,从而更容易处理远程数据。 
  • 灵活性:它可以在各种操作系统上使用,包括 Linux、macOS 和 Windows。 

SSHFS 的先决条件

在开始使用 SSHFS 通过 SSH 挂载远程文件系统之前,需要满足一些先决条件。确保满足这些要求将有助于您避免常见问题并简化设置过程。  

SSHFS 的系统要求

首先,您需要:  

  • Linux、macOS 或 Windows 计算机:SSHFS 与所有主流操作系统兼容。每个系统都有自己的安装 SSHFS 的方法,将在下一节中介绍。 
  • FUSE(用户空间中的文件系统):SSHFS 依赖 FUSE 运行。大多数 Linux 发行版都预装了 FUSE。对于 macOS 和 Windows,您需要单独安装 FUSE。 

SSH 访问远程服务器

您必须具有要挂载的远程服务器的  SSH 访问权限。这包括:

  • 远程计算机上运行的 SSH 服务器:确保远程计算机上已安装并运行 SSH 服务器。大多数 Linux 服务器默认安装了 SSH。 
  • 用户权限:您用于通过 SSH 连接的用户帐户必须具有访问要挂载的目录所需的权限。 
  • SSH 密钥:为了更加安全、便捷的连接,建议设置基于 SSH 密钥的身份验证。这样就无需在每次连接时输入密码。 

对于管理多台服务器或需要可靠远程访问的用户,萤光云提供一系列可轻松集成的VPS和专用服务器方案。借助萤光云强大的基础设施,您可以确保高性能和安全访问远程文件系统。 

满足这些先决条件后,您就可以在系统上安装 SSHFS 了。下一节将指导您完成各种操作系统的安装过程。 

您说得对,我应该更清楚地说明在哪里运行这些命令以及 sudo 的使用。我将用这些说明更新此部分。以下是修订后的版本: 

如何安装 SSHFS(Linux、Windows、macOS)

要使用 SSHFS,您需要在本地计算机上安装它。安装过程因操作系统而异。以下是如何在一些流行的操作系统上安装 SSHFS: 

在 Linux 上安装 SSHFS

对于 Linux 系统,打开终端执行这些命令。您需要使用“sudo”,它允许您以超级用户权限运行命令。使用“sudo”时,系统会提示您输入密码。 

Ubuntu 和 Debian

在 Ubuntu、Debian 及其衍生产品上,使用apt 包管理器安装 SSHFS : 

sudo apt update
sudo apt install sshfs

Fedora 和 CentOS

对于 Fedora、CentOS 和其他基于 Red Hat 的发行版,请使用 dnf 包管理器: 

sudo dnf install fuse-sshfs

Arch Linux

Arch Linux 用户可以使用 pacman 包管理器安装 SSHFS: 

sudo pacman -S sshfs

在 macOS 上安装 SSHFS

对于 macOS 用户,打开终端并使用Homebrew安装 SSHFS: 

brew install sshfs

请注意,在 macOS 上,您还需要安装FUSE for macOS,它是 SSHFS 的依赖项。 

在 Windows 上安装 SSHFS

对于 Windows 用户,您需要使用PowerShell安装 SSHFS。右键单击 PowerShell 图标并选择“以管理员身份运行”以确保您拥有必要的权限。 

  1. 安装 WinFsp:WinFsp 提供 SSHFS 所需的 FUSE 功能: 
winget install -e --id "WinFsp.WinFsp"
  1. 安装 SSHFS-Win:SSHFS-Win 是 SSHFS 到 Windows 的最小移植: 
winget install -e --id "SSHFS-Win.SSHFS-Win" 

验证安装 

安装后,您可以通过检查版本来验证 SSHFS 是否正确安装。在终端 (Linux/macOS) 或 PowerShell (Windows) 中,运行: 

sshfs --version

此命令应显示系统上安装的 SSHFS 的版本号。 

现在,SSHFS 已安装在本地计算机上,您可以开始挂载远程目录了。在下一节中,我们将介绍使用 SSHFS 挂载远程文件系统的基本方法。 

SSHFS 的基本用法

在系统上安装 SSHFS 后,即可开始使用它来挂载远程目录。本节将介绍 SSHFS 的基本用法,包括命令语法、挂载远程目录以及卸载它。 

SSHFS 命令的语法

SSHFS命令的基本语法如下: 

sshfs [user@]hostname:[remote_directory] [local_mount_point] [options] 
  • [user@]hostname:远程机器的 SSH 用户和主机名。如果省略用户名,系统将使用当前本地用户名。
  • [remote_directory]:您想要挂载的远程机器上的目录。 
  • [local_mount_point]:将远程目录挂载到本地目录。
  • [options]:用于定制 SSHFS 行为的附加选项。 

挂载远程目录

要挂载远程目录,请按照以下步骤操作: 

  • 创建本地挂载点:首先,在本地机器上创建一个目录来挂载远程目录。例如: 
mkdir ~/remote_mount 
  • 挂载远程目录:使用 SSHFS 命令将远程目录挂载到本地挂载点。 
    例如,要将远程服务器 example.com 上的 /var/www 目录以用户 username 的身份挂载到本地目录 ~/remote_mount,请运行: 
 sshfs username@example.com:/var/www ~/remote_mount 

如果您设置了基于 SSH 密钥的身份验证,则无需输入密码。否则,系统将提示您输入 SSH 密码。

  • 验证挂载:通过列出本地挂载点的内容来验证您是否已挂载远程目录。
ls ~/remote_mount 

您应该看到远程 /var/www 目录的内容。 

卸载远程目录 

完成远程目录的操作后,您可以fusermount在 Linux 或 macOS 上使用 命令将其卸载。在 Windows 上,使用 命令umount卸载目录。

在 Linux 和 macOS 上卸载 

fusermount -u ~/remote_mount 

Windows 卸载

umount ~/remote_mount 

卸载远程目录将断开 SSHFS 会话并释放系统资源。 

高级 SSHFS 选项 

虽然 SSHFS 的基本用法很简单,但有几个高级选项可以增强其功能和性能。本节将介绍设置权限、配置连接选项以及将 SSHFS 与不同端口一起使用。 

设置权限

默认情况下,使用远程系统的权限挂载远程目录。但是,您可以使用挂载选项修改这些权限: 

  • 允许其他用户:要允许本地系统上的其他用户访问已挂载的目录,请使用 -o allow_other 选项: 
sshfs user@remote:/path/to/remote ~/local_mount -o allow_other 
  • 设置 UID 和 GID:要为已挂载的文件设置特定的用户和组 ID,请使用 uid 和 gid 选项: 
sshfs user@remote:/path/to/remote ~/local_mount -o uid=1000,gid=1000 

配置连接选项 

SSHFS 允许您微调连接以获得更好的性能或安全性: 

  • 压缩:启用压缩可以潜在地提高慢速连接的性能: 
sshfs user@remote:/path/to/remote ~/local_mount -o compression=yes 
  • 保持活动:为了防止连接超时,请使用 ServerAliveInterval 选项: 
sshfs user@remote:/path/to/remote ~/local_mount -o ServerAliveInterval=15 
  • 缓存:调整缓存行为以获得更好的性能: 
sshfs user@remote:/path/to/remote ~/local_mount -o cache=yes,cache_timeout=115200 

使用不同端口的 SSHFS 

如果您的 SSH 服务器在非标准端口上运行,您可以使用 -p 选项指定它: 

sshfs -p 2222 user@remote:/path/to/remote ~/local_mount 

此命令连接到在端口 2222 上运行的 SSH 服务器。 

组合选项 

您可以在单个命令中组合多个选项。例如: 

sshfs user@remote:/path/to/remote ~/local_mount -o allow_other,compression=yes,ServerAliveInterval=15,port=2222 

此命令挂载远程目录,允许其他用户访问它,启用压缩,设置保持活动间隔,并连接到非标准 SSH 端口。 

结论 

SSHFS(SSH 文件系统)提供了一种强大而安全的工具,可让您通过 SSH 挂载远程文件系统,从而无缝访问远程文件,就像将它们存储在本地一样。本指南引导您完成设置和使用 SSHFS 的基本步骤,从安装到故障排除。  

SSHFS 要点 

  • 安装:您可以在各种操作系统上安装 SSHFS,包括 Linux、macOS 和 Windows,确保广泛的兼容性。
  • 基本用法:使用简单的命令,您可以挂载和卸载远程目录,从而轻松访问远程数据。 
  • 高级选项:使用权限、连接设置和端口配置选项自定义您的 SSHFS 设置,以增强功能和性能。 
  • 故障排除:解决连接问题、权限错误和性能瓶颈等常见问题,以确保顺利运行。 

通过将 SSHFS 集成到您的工作流程中,您可以安全高效地管理远程文件,从而提高工作效率并简化任务。无论您是系统管理员还是 IT 专家用户,SSHFS 都可以提供灵活的远程文件访问解决方案。 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐