HeadlinesBriefing favicon HeadlinesBriefing.com

NixOS上Swap、ZRAM、Zswap和休眠指南

Hacker News •
×

我从我的非显而易见NixOS配置文章中提取了这部分内容,单独成文。注意:我将参加Nix Con 2026,如果你也去,打个招呼吧!哦不,我要讨论swap、zram、zswap……

是否使用swap一直是网上的长期争论。当人们将服务器的建议与工作站的建议混为一谈时,对话常常变得混乱。就我而言,我将专注于台式机和笔记本电脑。我使用swap是因为我喜欢“挂起后休眠”,或者在KDE设置中的“待机后休眠”。这首先会进行ACPI S3挂起到RAM,然后经过一段延迟后进入S4休眠。要使用休眠,你需要swap来将系统状态保存到磁盘。

关于swap文件与swap分区也存在争论。在UEFI系统上,休眠启动时详细信息会保存到EFI变量中。我在台式机上设置了一个简单的swap分区。我在笔记本电脑上设置了LUKS加密和一个swap文件。好消息是,一段时间以来,NixOS已经理解了swap文件上休眠的细微差别,并且能够处理偏移量的计算。

我当前的配置很简单:boot.zswap.enable = true; boot.kernel.sysctl."vm.swappiness" = 100。Chris Down建议使用带磁盘备份swap的zswap。Swappiness控制交换和文件系统分页的相对成本,因此取决于你的具体硬件。目前,100对我的SSD来说效果很好。

关键实体:人物:Chris Down

FAQ:SSD推荐使用的swappiness值是多少?

Chris Down建议,在SSD系统上,swappiness值为100效果很好,但他指出仅凭直觉调整并非易事,建议测试不同的值。