fstab 交换条目中“挂载选项”列中“sw”的含义

fstab 交换条目中“挂载选项”列中“sw”的含义

在我的 /etc/fstab 文件中,我有一个交换条目,如下所示:

/root/swap swap swap sw 0 0

我有其他机器,而且我在网上看到有时他们会设置默认或 xfs 或其他选项。然后,我有点困惑“sw”的含义和用途,以及哪个是放置在那里的最佳选择以及原因。

答案1

fstab我的系统上的手册

第四个字段fs_mntops描述与文件系统关联的安装选项。它的格式为逗号分隔的选项列表。它至少包含挂载类型(见fs_type下文)以及适合文件系统类型的任何其他选项。 [...]

如果fs_type是“rw”、“rq”或“ro”,则在该字段中给出名称的文件系统fs_file通常以读写或只读方式安装在指定的特殊文件上。 如果 是“sw”,则在系统重新启动过程结束时fs_type通过命令将特殊文件用作交换空间。swapon(8)

所以基本上,sw用于告诉swapon(或swapctl在我的系统上)这是用作交换空间的有效候选者,它将作为系统启动例程的一部分添加。

手册描述swapctl -A

此选项导致swapctl读取/etc/fstab文件中的设备和具有“sw”类型的文件,并将所有这些条目添加为交换设备。如果未配置交换设备,swapctl将退出并显示错误代码。

那是在 OpenBSD 上。上乌班图Linux我有权访问的系统,但sw出于某种原因,两本手册都没有提到作为交换的安装选项。

答案2

至少对于 Linux 来说,从网络上看,这似乎是“货物崇拜”的一个例子。我看到的证据表明这个选项实际上没有必要或没有意义,但你需要在那里放一些东西,因为fstab文件语法需要它。您可以轻松找到人们使用defaultsand 甚至只是pri=1或其他任何内容的示例,而忽略了defaultsand sw

swapon需要查看挂载选项来检查它是否是交换是没有意义的,因为swapon已经可以通过查看文件系统类型来看到它是交换。当然有一些用于修改行为的交换挂载选项,如 中所述man swapon,但sw不是其中之一。所以证据表明它是一个占位符,并且foobar和占位符一样好

当然,如果不查看源代码,我无法完全确定这一点。

相关的 Debian 错误报告抱怨了这个确切的问题: mount: swapon(8) 缺乏对 sw 和默认选项的解释

相关内容