php技术博客

记录php相关学习知识及开发示例、疑难问题等

linux查看添加删除swap分区详解

一般情况为内存不够,或者临时部分情况下,内存不足。可以设置虚拟内存,一般设置不超过真实内存的2倍。对于内存很充裕的情况下,设置虚拟内存作用不大。虚拟内存与真实内存性能上还是存在一定的差距,如果内存确实缺的比较多,建议还是升级硬件的好。

1、查看当前swap情况

free -m 或 swapon -s 命令


2、添加swap分区步骤

(1)、使用dd命令创建swap交换文件

dd if=/dev/zero of=/var/swapfile bs=1M count=2048

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)10242=2097152=2G。(dd命令里的单位M表示1024*1024,k表示1024)。回车后,会执行2g的读写操作,系统会卡一段时间,耐心等待执行结果。

(2)、执行完毕,对交换文件格式化并转换为swap分区:

mkswap  /var/swapfile

(3)、挂载并激活分区:

swapon   /var/swapfile  

执行以上命令可能会出现:“不安全的权限 0644,建议使用 0600”类似提示,不要紧张,实际上已经激活了,可以忽略提示,也可以听从系统的建议修改下权限:

chmod -R 0600 /var/swapfile

这时候可以用 free –h 或 swapon –s命令查看新swap分区是否正常添加并激活使用。

(4)、修改 fstab 配置,设置开机自动挂载该分区:

vim    /etc/fstab  

在fstab文件末尾追加如下内容后:wq!保存即可:

/var/swapfile swap swap defaults 0 0


3、删除swap分区

(1)、先停止运行的swap分区

swapoff /var/swapfile

(2)、删除swap分区对应的路径

swapoff /var/swapfile

(3)、删除或注释掉之前我们在/etc/fstab文件中追加的开机自动挂载内容

/var/swapfile swap swap defaults 0 0