有没有办法在 SMB 请求时将文件从一个设备动态移动到另一个设备?

有没有办法在 SMB 请求时将文件从一个设备动态移动到另一个设备?

我正在尝试找出一种方法,当用户通过 SMB 请求文件时,将文件从传统 HDD 动态移动到 SSD

因此,用户浏览服务器,在选择文件时,它会将文件移动到 SSD,并允许用户通过 SSD 传输/流式传输该文件以提高速度。如果这也可以以另一种方式工作,直接写入 SSD,然后刷新到 HDD,那就太好了。

谢谢

答案1

因此,用户可以浏览服务器,并在选择文件时将其移动到 SSD,并允许用户通过 SSD 传输/流式传输该文件以提高速度。

这只会为重复请求。第一次请求文件时,显然仍然必须从 HDD 读取,并且如果它是从 HDD 直接传输到网络,还是从 HDD 传输到 SSD 再从那里传输到网络,则不会有太大区别……

话虽如此,确实有各种系统可以实现这一点(取决于操作系统)。它们可以在操作系统级别实现(用于本地和 SMB 访问)或仅通过网络服务实现。

搜索“SSD 缓存”或“分层存储”(不同的东西,但给出类似的结果)。例如:

  • Linux 有缓存,它在分区级别上起作用。(您必须将 HDD 分区重新格式化为 bcache 设备;据称可以进行实时转换,但我不知道它是否有效。)
  • Windows Server 具有“分层存储空间”。
  • ZFS 显然仍有开发人员致力于“持久性 L2ARC”。(已​​经支持使用 SSD 作为缓存,但似乎每次启动时都会重置。)
  • 各种较大的 NAS 系统通常有自己的实现。

相关内容