如何创建Linux的swap交换分区文件的方法步骤
Swap简介
Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。
如何创建Swap文件
1. 创建一个用于交换的文件
?1 | sudo fallocate -l 1G /swapfile |
如果faillocate未安装或者您收到错误消息,fallocate failed: Operation not supported则可以使用以下命令创建交换文件:
?1 | sudo dd if = /dev/zero of= /swapfile bs=1024 count=1048576 |
2. 设置正确的权限
只有 root 用户才能写入和读取交换文件,要设置正确的权限类型:
?1 | sudo chmod 600 /swapfile |
3. 设置Linux交换区
使用该 mkswap 实用程序将文件设置为Linux交换区域:
?1 | sudo mkswap /swapfile |
4. 启用交换
使用以下命令激活交换文件:
?1 | sudo swapon /swapfile |
要使更改永久打开/etc/fstab文件并附加以下行:
?1 | /swapfile swap swap defaults 0 0 |
5. 验证交换状态
要验证交换是否处于活动状态,我们可以使用swapon或free命令,如下所示:
?1 | sudo swapon --show |
输出
?1 2 | NAME TYPE SIZE USED PRIO /swapfile file 1024M 507.4M -1 |
1 | sudo free -h |
输出
?1 2 3 | total used free shared buff/cache available Mem: 488M 158M 83M 2.3M 246M 217M Swap: 1.0G 506M 517M |
如何调整swappiness
Swappiness是一个Linux内核属性,用于定义系统使用交换空间的频率。Swappiness可以具有0到100之间的值。较低的值将使内核尽可能避免交换,而较高的值将使内核更积极地使用交换空间。
默认的swappiness值为60.您可以通过键入以下命令来检查当前的swappiness值:
?1 | cat /proc/sys/vm/swappiness |
输出
60
虽然桌面可以使用60的swappiness值,但对于生产服务器,您可能需要设置较低的值。
例如,要将swappiness值设置为10,请键入:
?1 | sudo sysctl vm.swappiness=10 |
要使此参数在重新引导后保持不变,请将以下行附加到该/etc/sysctl.conf文件:
?1 | vm.swappiness=10 |
最佳swappiness值取决于您的系统工作负载以及内存的使用方式。您应该以小增量调整此参数以查找最佳值。
如何删除交换文件
如果出于任何原因要停用并删除交换文件,请按照下列步骤操作:
1. 首先,使用以下命令停用交换:
?1 | sudo swapoff - v /swapfile |
2. 删除交换文件条目/swapfile swap swap defaults 0 0从/etc/fstab文件。
3. 最后删除实际的swapfile文件:
?1 | sudo rm /swapfile |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://segmentfault.com/a/1190000018370324
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。