Linux:交换文件放在哪里

Linux:交换文件放在哪里

关于在 Linux 上将交换文件放在哪里,有什么约定吗?

我通常只是在中创建它们/var/swapfile,但这在层次结构中似乎有点太高了。

答案1

据我所知,文件系统层次结构标准中没有定义位置。

因为 /var 用于存放经常更改的文件,所以我认为将其放在这里是可以的。但请记住,如果您使用平面文件交换而不是分区,请考虑为 /var 使用快速文件系统。

答案2

传统方法是有一个专门用于交换的分区。如果你使用文件,则由你自行决定,但Malte 的建议文件系统很重要,这是一件好事。

答案3

只是想补充一下马耳他迦勒的答案,以及优秀的参考保罗:

人们经常提到使用交换分区而不是交换文件。您必须看到,交换文件的主要问题不是性能(内核会处理这个问题),而是需要传染性的非稀疏磁盘空间。因此,最好在创建底层文件系统后立即创建所有交换文件。一旦文件系统投入使用,文件碎片就会散落在各处,很难获得一些连续的空间。然而,相比之下,分区并没有提供任何更好的东西:它保证是一个连续的空间,但您也必须在早期创建它,而且以后更改它会非常麻烦。

另外,还要解决将交换文件放在哪里这个主要问题。就像交换分区一样,交换文件的内容本质上是高度机密的,因此建议使用加密。就像整个分区的情况一样,其中大部分是 LVM 卷卢克斯实践中,交换文件应该放在 LUKS 加密设备之上的文件系统上。你必须记住,存在各种问题在加密交换上处于休眠状态。另外,不要忘记访问权限。就像您不希望有人读取或写入您的内存一样,保护交换文件也是必不可少的。可能最好的地方是只有 root 才能访问的目录内。(例如/var/swap/swapfile01_8G

如前所述,在系统使用后创建交换文件可能会有问题。因此,在后来发现需要更多交换后,使用这种方法进行扩展可能不可行。另一方面,在总交换空间由多个交换文件组成的情况下进行缩减将很容易。因此,可能值得分配更多的交换空间明智地,并分成多个文件,因为如果您稍后确认它确实太大,可以很容易地缩减它。(看在上帝的份上,购买更多的磁盘空间吧)

答案4

如果您想镜像 Windows 场景,请尝试/。如果您想在多操作系统环境中共享文件,请尝试将其放在分区上/home

相关内容