如何创建Linux交换文件?Linux交换文件最新创建方法

举报
斜月吟风 发表于 2025/04/02 13:50:17 2025/04/02
【摘要】 Swap是Linux上的分配空间,该处被保留为虚拟内存。 当Linux服务器运行内存时,可以将非活动进程移动到虚拟内存中以便在工作存储器中为活动进程进行空间。此功能默认情况下未打开,但可以通过分配交换文件来打开。交换文件上的性能与交换分区的性能非常类似。但是,在不重新分区的情况下更容易控制交换大小。通过调整系统的SWAPPAPPINES值,还可以激励服务器依赖交换空间。由于我们的VPS和专用...

Swap是Linux上的分配空间,该处被保留为虚拟内存。 当Linux服务器运行内存时,可以将非活动进程移动到虚拟内存中以便在工作存储器中为活动进程进行空间。

此功能默认情况下未打开,但可以通过分配交换文件来打开。交换文件上的性能与交换分区的性能非常类似。但是,在不重新分区的情况下更容易控制交换大小。通过调整系统的SWAPPAPPINES值,还可以激励服务器依赖交换空间。

由于我们的VPS和专用服务器默认提供root用户,因此所有命令均假定以root用户身份运行:

如何在Linux中创建交换文件?

以下是将通过创建交换文件以及如何修改Swappiness Value的步骤。 例如,将1GB交换交换到服务器,请按照本指南执行以下操作:

第一步:要使用Fallocate或DD创建要用于交换的文件:

用fallocate创建交换文件
fallocate -l 1G /myswap
-l选项允许您设置长度,在此示例中为1 GB
或者,您可以使用dd创建一个空白的1GB文件:
dd if=/dev/zero of=/myswap count=1024 bs=1MiB

第二步: 确保交换文件权限:

chmod 600 /myswap
格式化文件以进行交换。
mkswap /myswap

第三步: 将文件作为交换文件添加到系统中。

swapon /myswap

第四步: 将此行添加到/ etc / fstab的末尾,使更改永久性。

/myswap none swap sw 0 0

第五步: 要更改swappiness值,请编辑/etc/sysctl.conf并添加以下行。

vm.swappiness=10
从10开始,并根据需要增加。 交换的典型默认值是60。数字越大(最多100),交换使用的频率就越高。

影响性能的快速影响取决于如何使用内存,因此实验找到最佳值。 在0处,只有在系统完全从内存中运行时将仅使用交换文件。 更高的值让系统交换空闲进程,以允许系统释放磁盘缓存的内存,可能会提高整体系统性能。

第六步: 检查交换文件是否已创建。

swapon -s
重新启动服务器,以确保更改生效。
在大多数情况下,您只需要以root用户身份访问交换分区。
dd if=/dev/zero of=/myswap count=1024 bs=1MiB 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 2.15831 s, 497 MB/s

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。