在 LVM 中交换分区?

Lev*_*ite 31 partition swap lvm system-installation

我想知道将交换分区放入逻辑卷组是否有任何缺点(例如性能),还是与将其作为单独的主/逻辑分区“完全相同”?

我喜欢这样一个事实,即它可以在必要时轻松调整大小,但不确定可能的缺点。

应用案例:CentOS 7 Webserver。

HBr*_*ijn 47

当然,主要目标首先不是需要使用交换......

主要是在系统还很新鲜时创建交换 LVM 卷,这与创建交换文件时相同,因为交换空间在连续时性能最佳,或者使用lvcreate -C选项强制执行。您不希望构成逻辑卷的实际磁盘块在整个磁盘上碎片化。出于这个原因,也应该避免调整交换卷的大小(经常)。

作为 Linux 内核的主要开发人员之一,Andrew Morton

内核在交换时生成交换偏移量 -> 磁盘块的映射,然后使用该映射直接针对底层磁盘队列执行交换 I/O,绕过所有缓存、元数据和文件系统代码。

这也绕过了所有 LVM 代码,交换直接进入磁盘。因此,从性能角度来看,交换分区、交换文件或 LVM 卷没有区别。

  • 很好的答案,谢谢详细解释!“`这也绕过了所有 LVM 代码,交换直接进入磁盘。`”,正是我正在寻找的!关于调整大小问题:出于这个原因,在安装后使用 -C 选项重新创建交换卷以确保它/保持连续是否有意义?像`lvcreate -C y -L 10G VolGroup -n swap`(参考:http://blog.zelut.org/2009/03/10/force-contiguous-extents-in-lvm/) (14认同)
  • 从未注意到`-C` 开关,感谢您指出这一点! (5认同)