LVM 将物理卷划分为 PE,PE 是可写入的最小数据单位,这意味着具有 4Mb PE 的 PV 上的 3Mb 文件仍将占用 4Mb。对我来说,这听起来与标准分区中的块组的概念非常相似,标准分区中的块组由扇区的整数倍组成。那么我的理解正确吗?
答案1
LVM 将物理卷划分为 PE,PE 是可写入的最小数据单位
这是关于 LVM 本身内元数据管理的分配单元。它与顶部文件系统如何读取和写入数据无关。它的工作原理就像单扇区分辨率下的任何其他块设备一样。
这与传统的分区相同。虽然可以肯定的是,技术上允许您将它们放在任何扇区偏移上,实际上您可能希望遵循 MiB 对齐规则,因此您可以考虑将传统分区的 PE 大小设置为 1MiB。但这并不能阻止您读取/写入 4 KiB 或 512 字节扇区。
即使您将 PE 大小设置为更大的值(例如 128M 或 1G),这也意味着您将无法创建小于 128M 或 1G(1 个 PE)的 LV,并且所有 LV 的大小将是 PE 的倍数。对于文件系统本身来说,没有任何改变。
您还可以随时更改 PE 大小,前提是所有 LV 都与新的 PE 大小对齐。
当您使用快照、精简卷或 pvmove 时,PE 大小具有更大的实际影响。 LVM 将为快照克隆整个 PE,或为精简卷分配/释放整个 PE,或为 pvmove 一次镜像一个 PE。
因此,PE 大小会影响特定 LVM 操作的性能。但这又是 LVM 在内部处理事情的方式。如果您很少更改 LVM 元数据,那么这几乎没有关系。
如果有疑问,请坚持使用默认设置,不必担心。
这意味着具有 4Mb PE 的 PV 上的 3Mb 文件仍将占用 4Mb。
所以这是一个是和否。如果您有一个精简卷,仅在需要/写入时分配 PE,那么是的,如果您在某处写入 3MB 文件,并且您有 128M 的 PE,那么该 3MB 文件将在引号中“使用 128M 的空间”。
但它不会占用它,另外 125M 仍然是文件系统中的“空闲空间”,因此同一 PE 中还有足够的空间容纳其他 3M 文件。
另一方面,如果您使用很小的 PE 大小,您可能会在 LVM 层上遇到极端碎片。所以PE也不一定越小越好。