图形用户界面

图形用户界面

我在学校的许多电脑上使用 Ubuntu 12.04(我是一名教师,也是首席技术员)。我使用 Clonezilla 大量克隆台式机和笔记本电脑。我想在电脑之间轻松共享磁盘映像,以便备份。

我尝试使用 Samba 通过无线网络共享,确实成功了,但传输 3GB 以上数据时速度非常慢。通过有线网络传输速度快得多,但仍然有连接问题。如果我错了,请纠正我,但我明白samba 基于 Windows 标准,并且 SSH 更适合 Linux。到目前为止,我对 samba 的体验并不好。

NFS 似乎比 samba 具有更多功能。我认为这是 Mac OS 默认使用的。

因此,我的问题是:在两台 Ubuntu 机器之间共享文件的最佳 GUI 方式是什么,其优先级按降序排列如下:

  1. 速度
  2. 免费和开源
  3. 轻松设置
  4. 兼容Windows和Mac OS

答案1

你说得对,SMB 最初来自 Windows。但现在它也适用于 Linux 和 Mac。

由于速度很重要,您必须记住:SSH 对于连接到 Unix/Linux 和网络的一切来说都是一件好事,但与 NFS、FTP 或 SMB 相比,它确实很慢。

NFS 是最快的,但它没有加密。如果你不能完全信任你的网络,请不要使用任何未加密的协议(另请参阅此问答)。NFS 也适用于 Windows 和 Mac,但设置起来可能需要一些工作。

SMB 在 Windows、Linux 和 Mac 上应该很容易设置,而且与 SSH 相比,它的速度仍然相当快。但同样的安全警告也适用于 SMB(请参阅此问答)。

一些类似的问题在这里讨论

目前还存在许多有关不同网络协议速度的基准测试。

答案2

NFS 易于设置、快速且易于使用,但并非为安全性而设计(纯文本文件传输)。您可能需要了解 sshfs,它可用于创建与 NFS 类似但更安全的挂载点,并且根据我自己的简单测试,其性能与 NFS 类似。sshfs 可用于本地访问您可以通过网络访问另一个运行有 SSH 服务器的系统上的任何文件夹。此外,sshfs 在用户空间中运行,因此您无需以 root 身份进行设置。

让其中任何一个在 Windows 上运行可能都有挑战性,但都可以在 Mac 上运行。

我一直觉得 SMB 协议很笨重,所以我很少使用它,但我知道 Samba 的实现很可靠。我无法评价它的性能或易用性。

答案3

流行的文件托管协议有以下几种:NFS、SMB、SFTP、FTPS、WebDAV。

将文件托管服务按二维进行分类:

  • 服务范围
  • 数据的合法所有权

从服务范围维度上,分为

  • 局域网服务
  • 互联网服务

从数据所有权维度来看,分为

  • 公共服务
  • 私人服务

私人服务意味着用户拥有服务器的地址。

私人服务 公共服务
局域网服务 Synology NAS;AWS EFS;
互联网服务 AWS S3;阿里巴巴OSS; OneDrive;iCloud;

应该使用哪种协议取决于您提供的文件托管服务类别。

公共互联网服务

  • SMB 和 NFS 不支持无限传输缓冲区或无限滑动窗口,因此它们在高延迟网络(例如 Internet)上性能不佳。
  • FTPS 不支持范围读取。它可以指定读取操作的起始字节,但不能指定结束字节。因此当您通过 FTPS 观看流式视频时,播放器必须缓冲整个文件,这可能会超出内存。
  • SFTP 是基于 SSH 而非 TLS 构建的,因此客户端无法通过操作系统内置的 CA 自动验证服务器身份。作为服务提供商,您无法保证用户连接到的是您的正版服务器,而不是黑客的服务器。

所以,唯一的选择就是 WebDAV。

私人互联网服务

  • SMB 和 NFS 不支持无限传输缓冲区或无限滑动窗口,因此它们在高延迟网络(例如 Internet)上性能不佳。
  • FTPS 不支持范围读取。它可以指定读取操作的起始字节,但不能指定结束字节。因此当您通过 FTPS 观看流式视频时,播放器必须缓冲整个文件,这可能会超出内存。
  • WebDAV 可以范围读取,但不能范围写入。

所以,SFTP是最佳选择。

专用局域网服务

  • FTPS 不支持范围读取。它可以指定读取操作的起始字节,但不能指定结束字节。因此当您通过 FTPS 观看流式视频时,播放器必须缓冲整个文件,这可能会超出内存。
  • WebDAV 可以范围读取,但不能范围写入。
  • 最流行的 SFTP 版本(v3)无法锁定服务器上的文件。

所以,SMB/NFS 是最佳选择。

图形用户界面

每个协议在任何操作系统上都可以有一个 GUI,因为您可以将其安装到目录并使用本机文件管理器应用程序访问它。

相关内容