买了一个新的 SSD,不想磨损,但我仍然想用它的一部分与旧 HDD 一起存储数据文件

买了一个新的 SSD,不想磨损,但我仍然想用它的一部分与旧 HDD 一起存储数据文件

我为我的笔记本电脑购买了一块新的 250GB 三星 850 EVO SSD,我想将其用作主存储设备,同时将旧的但仍能运行的 250GB 7500 RPM HDD 与适配器托架一起放在以前的 DVD 托架中。

目前,HDD 只有一个大的 ext4 分区,其中包含操作系统、应用程序和数据文件。我想使用 HDD 来存储数据,但我不想因此而错过 SSD 速度提升的机会。

我想将 SSD 上 50GB 甚至更小的分​​区与 HDD 上的分区合并,以便访问最多、修改最少的文件自动移动到 SSD。

我看过类似的缓存埃南切奥缓存,但它们似乎不是我想要的,因为(如果我错了请纠正我):

  • 从可用空间量中减去缓存分区占用的空间。
  • 缓存会加快对最常访问的文件的访问速度,而不管这些文件的修改频率是否最低,这违背了不想磨损 SSD 的目标。

以上是否正确,或者缓存(这两个中的哪一个?)可以帮助我实现目标?如果以上是正确的,您是否知道任何其他可行的解决方案?

联合文件系统, 喜欢覆盖文件系统,这能帮上忙吗?如果你监控硬盘上访问次数最多的文件(atime每天跟踪它们),并找出其中修改次数最少的文件(跟踪它们的mtime),理论上你可以将这些文件移动到固态硬盘,释放硬盘上的空间,而联合文件系统可以让这一切对用户透明。

这有用吗?

答案1

根据您要完成的任务,您有以下几种选择:

  • 使用bcache 你可以吃蛋糕,但不能保留它。

    是的,您为缓存预留的空间量将是就像交换文件的反面一样:您指定的量将从磁盘空间总量中“扣除”,并提供给内存子系统,用作其他硬盘的缓冲区。
    要控制哪些文件会被缓存,请使用类似vmtouch微调缓存bcache

  • 使用 LVM: 你可以保留蛋糕,但不能吃掉它。

    您可以使用逻辑卷管理器创建一个包含 SSD 和 HDD 的卷,从而创建一个/home包含两者空间的大卷,但是:

    1. 您将无法控制哪些文件存储在 SSD 上,哪些文件存储在 HDD 上
    2. 如果丢失两个驱动器中的一个,您将丢失所有数据,并且需要从备份恢复!
  • 使用手动系统: 您将能够保留蛋糕并吃掉它。

    将驱动器划分为单独的文件系统:放在/SSD 和/homeHDD 上。除此之外,您还应将所有要快速传输的文件放入其中/media/FastData,并将原始文件符号链接到/media/FastData 当且仅当这些文件位于您的/home(否则它们已经驻留在 SSD 上了)

注1:我有一个小型 SSD 和一个大型 HDD,因此我使用另一个系统:/在 SSD 上和/home在 HDD 上,不必进一步优化......
笔记2:联合文件系统不会比手动系统给您提供更多帮助......
注3: 以下是一些避免 SSD 磨损的技巧从第 4 点开始

相关内容