洛杉矶MC机房 高速低价18元起

DIYVM

关于CentOS7下swap分区创建(添加),删除以及相关配置

提示:如果官网是英文页面,建议使用谷歌浏览器能同步翻译页面。点击下载【谷歌浏览器最新绿色便携版】
注意:部分文章发布时间较长,可能存在未知因素,购买时建议在本站搜索商家名称,先充分了解商家动态。
交流:唯一投稿邮箱:hostvps@88.com。

小叨下背景:笔者的服务器内存只有1g,少得可怜。之前使用apache,不堪忍受其过量的内存消耗,网站卡得想哭,数据库也不断地崩,无奈投入nginx的怀抱并且已经喜欢上了nginx,具体请看上文《CentOS7部署轻量级web服务器nginx+php》。然而过了几个月后数据库还是继续崩,经查询mysql日志还是因为内存吃不消,折腾几番发现mysql自身就不是省油的灯,一度占用了500M的内存——我捂住嘴巴不让自己哭出来,还顺便来了段Bbox。这两天我那谁一直在折腾RedHat安装Oracle数据,该数据库有一项要求就是需要一定空间的swap分区。虽然早有耳闻swap分区,而且笔者经常折腾windows下的虚拟内存(swap和虚拟内存是类似概念),却很惭愧一直没想到这个办法,于是——进入今天的主题:在添加swap分区之前我们可以了解下当前系统swap是否存在以及使用情况,可用:free -h 或 swapon -s了解硬盘使用情况(一般/dev/vda1为挂载硬盘):df -hal1.添加swap分区使用dd命令创建名为swapfile 的swap交换文件(文件名和目录任意): dd if=/dev/zero of=/var/swapfile bs=1024 count=2097152或 dd if=/dev/zero of=/var/swapfile bs=1024 count=2048k 科普:if(即输入文件,input file),of(即输出文件,output file)。dev/zero是Linux的一种特殊字符设备(输入设备),可以用来创建一个指定长度用于初始化的空文件,如临时交换文件,该设备无穷尽地提供0,可以提供任何你需要的数目。 bs=1024  :单位数据块(block)同时读入/输出的块字节大小为1024  个字节即1KB,bs(即block size)。count=2048000  :数据块(block)数量为2048000 ,即2048000个1KB。可以计算swap分区的容量为:1KB *2097152=1KB *1024(k)*1024*2=2097152=2G。(dd命令里的单位M表示1024*1024,k表示1024)。回车后,会执行2g的读写操作,系统会卡一段时间,耐心等待执行结果。执行完毕,对交换文件格式化并转换为swap分区:mkswap /var/swapfile挂载并激活分区:swapon /var/swapfile执行以上命令可能会出现:“不安全的权限 0644,建议使用 0600”类似提示,不要紧张,实际上已经激活了,可以忽略提示,也可以听从系统的建议修改下权限:chmod -R 0600 /var/swapfile这时候可以用 free -h 或 swapon -s命令查看新swap分区是否正常添加并激活使用。修改 fstab 配置,设置开机自动挂载该分区: vim /etc/fstab在fstab文件末尾追加如下内容后:wq!保存即可:/var/swapfile   swap  swap  defaults  0  0或直接对fstab进行echo追加:echo “/var/swapfile swap swap defaults 0 0” >> /etc/fstab2.删除某swap分区先停止正在使用swap分区:swapoff /var/swapfile删除swap分区文件rm -rf /var/swapfile删除或注释掉我们之前在fstab文件里追加的开机自动挂载配置内容:/var/swapfile   swap  swap  defaults  0  03.更改Swap配置(进阶级)swappiness值(0-100),系统对swap分区的依赖程度,越高则越倾向于使用swap分区。当然,高度依赖swap会造成物理内存远未使用完,就使用swap分区,我们知道swap分区性能远不如物理内存,这反而降低了系统性能,违背了我们创建swap分区的初衷。我们希望在物理内存即将满荷时再使用swap,这就决定了swappiness值一般为10-60为宜,固态硬盘可以偏高些。查看当前的swappiness数值:cat /proc/sys/vm/swappiness 修改swappiness值,这里以50为例。sysctl vm.swappiness=50 若希望vm.swappiness=50永久生效,则需要修改sysctl配置文件,直接echo追加配置内容,重启系统后即可生效:echo “vm.swappiness = 50” >> /etc/sysctl.conf

About 贝壳

【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。

 收藏 (0) 打赏

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

本文链接:贝壳主机网 » 关于CentOS7下swap分区创建(添加),删除以及相关配置

分享到: 生成海报
香港/美国/国内高速VPS
切换注册

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活