良好的文件系统可以有效地管理空间

良好的文件系统可以有效地管理空间

快速提问:有没有一个文件系统可以让我

  1. 自动“调整大小”(向上或向下)分区,
  2. 在多个设备之间共享一个分区,并且
  3. 确保某些内容仅发送到一台设备而不发送到另一台设备?

语境: 我有两个驱动器:一个我信任的大 HDD (1 TB),以及一个我不信任的非常小的 SSD (24 GB)(即它可能随时被破坏,但这不应损坏 HDD 上的数据)。为了简单起见,假设我只有两个文件夹:

  • /nix将包含系统:我不介意丢失此分区,因此我希望尽可能将其保留在 SSD 上,以便快速启动新应用程序。但“/nix”可能包含超过 24 GB 的数据,因此它也需要部分位于 HDD 上。

  • /home将包含数据:它包含我不想放在 SSD 上的有价值的数据,以确保在 SSD 损坏的情况下我不会丢失它们。

现在,我创建了 3 个 LVM 分区(物理卷):HDD 上的两个分区 ( hdda, hddb),SDD 上的一个分区 ( sdda),并且我创建了两个 LWM 组卷,一个包含hdda + sdda(用于 ext4 分区/nix),另一个包含包含hddb(对于 ext4 分区/home)。但问题是 的总大小/nix + /home总是接近最大可用大小,因此当我需要更多内存时/home,我需要缩小/nix。而且缩小分区也不是很实用,因为它需要从 Live CD 启动,并且需要时间......

我看到非常强大的 ZFS(甚至允许压缩!)可以自动为我“调整”分区大小,但不幸的是我找不到如何说“将 /home 分区保留在 HDD 中,并将 /nix 分区保留在 HDD 中”如果可能的话,SDD”。

是否有更好的文件系统允许这样做(压缩也很好),或者以这种方式使用 ZFS 的方法?

谢谢!

答案1

只需使用 2 个旋转磁盘制作一个大 LV,并将 SSD 添加为 lvmcache。

http://man7.org/linux/man-pages/man7/lvmcache.7.html

其他选项;

Btrfs、SeaweedFS

https://en.m.wikipedia.org/wiki/Comparison_of_file_systems

https://en.m.wikipedia.org/wiki/Comparison_of_distributed_file_systems

相关内容