我有一个包含 2 个物理卷的卷组
- 7200rpm 硬盘上为 400g
- SSD 上 250 克。我可以确保先使用SSD/仅在SSD满时才使用HDD吗?请注意,我将仅在 HDD 上设置 var 和 temp,并在 SSD 上设置 boot(和 efi)。为了实现这一点,我总共将有四个逻辑卷:/、/boot、efi、/temp 和 var
感谢您的帮助。我正在安装 arch linux 并使用 lvm 2
答案1
如果你同时制作SSD和HDD(或它们上面的分区)LVM物理卷,将它们放在同一个卷组中,然后开始创建逻辑卷,那么LVM将首先填充其中一个物理卷,然后它将启动在另一张上。我不知道它首先开始填充哪个物理卷——但这实际上并不重要。
如果你想将特定的物理卷放在SSD上,只需将SSD和HDD放在不同的卷组中,并将逻辑卷放在你想要的卷组上即可。
但我怀疑这不是你想要的。如果你想文件先去SSD,等SSD满了再用HDD,LVM帮不了你。 LVM 对文件系统一无所知。它不知道卷的哪个部分用于存储文件(文件内容或元数据)以及哪个部分当前不包含有用信息。
文件系统知道存储的哪些部分包含有用的数据。但大多数文件系统将底层卷视为单个、统一的事物。他们不知道存储的一个部分比另一部分更快,即使他们知道他们也不支持移动块以支持最快的部分。
Btrfs比大多数文件系统更复杂,它包括支持多种设备。但我认为即使 Btrfs 也没有符合你想要的模式。
常见的配置是将 SSD 设置为 HDD 的缓存。在此配置中,卷与 HDD 一样大,并且 SSD 包含也存在于 HDD 上的数据或至少在 HDD 上保留了空间。在 Linux 中,这可以通过缓存,和很多事情一样Arch wiki 有很好的解释。使用 bcache,您可以将根文件系统放在 HDD 上,并使 SDD 成为该分区的缓存。
有关分区方案的一些注意事项:
- 分开
/var
没有/
多大意义。 /boot
并且/efi
不需要太快,因此可以将它们隐藏在硬盘上。您不需要单独的/boot
UEFI。/tmp
通常是一个 tmpfs,位于 RAM/swap 中,而不是磁盘上的文件系统。- 你忘了交换。交换应该单独在 SSD 上,因为它需要速度快。