设备管理的 SMR 硬盘的控制器是否会检测格式(例如 ExFat)并开始使用空的 shindle 进行写入?
我将 Time Machine 加密备份到外部 SMR 驱动器,最近了解到了这项技术。由于驱动器的控制器只能看到加密数据,我认为它无法检测驱动器何时清空,这也解释了驱动器容量达到 3TB 后备份速度为何只有 5MB/s 的糟糕表现。
USB 2 SATA 控制器不使用 uasp,因此未将 TRIM 暴露给操作系统。而且 OSX 无论如何也会忽略它。
因此,当我将数据复制到另一个驱动器时,我想知道当我无法将 TRIM 发送到控制器时如何重置性能。
我的想法是,驱动器的控制器也许也可以检测格式化,但数据加密时则不行。如果不行,我认为有以下选择:
- 使用控制器检测到的文件系统格式化驱动器(我尝试使用 ExFAT,因为驱动器附带此文件系统)
- ATA 安全删除(需要 2 天才能触发,并且任何 Linux 文档都指出通过 USB2Sata 控制器执行此操作是不明智的)
- 用零覆盖。也许控制器也在这里检测到一种模式,并标记一个完整的 shindle 以供垃圾收集。
不幸的是,设备管理的理念是用户不需要考虑驱动器如何处理数据。但是当您想要重置性能时,如果没有关于内部功能的更多详细信息(似乎也受到 IP 保护),就无法做到这一点。
所以我的想法是,也许社区已经确定了 SMR 驱动器的行为,并且可以给出有帮助的观点。
此外,未来可以采取哪些措施来改善这种情况?我想到以下几点:
- 保持 FAT32/ExFAT 格式并在容器(如 Sparsebundle)中处理加密,以防控制器可以查看简单的文件系统结构或检测写入模式
- 通过仅对 80% 的驱动器进行分区来保留可用磁盘空间(就像旧版的 SSD 一样,为控制器提供一些余地来重组 shindle,并避免磁盘被填满并造成碎片)
- 不要讨厌 SMR,但要处理好它的优点和缺点,使用支持 TRIM 的控制器并启用它
- 也许只将此类驱动器用于以 128MB 压缩卷写入的备份