当物理内存即将耗尽时,Linux 就会用到 sawp 分区,swap 类似于 wiondows 下的虚拟内存一样。当 swap 也耗尽时,这个时候 linux 会遵循内核机制,随机会杀掉一些占用内存资源较高的内存,所以一般就需要去扩容。
一般扩容 swap 有两种方法,第一种单独挂载一块盘然后进行分区,分区的时候选择类型为 swap 即可。另外一种是采用文件来扩展swap,无需挂盘,相对来说比较方便。本次演示用文件系统来扩容,用文件系统去扩展 swap 的好处就是无需再单独加盘和挂盘,大多数情况下会选择这种方案。
检查系统当前交换内存
free -hm
查看大小为 4G,那么我们将它扩展 2G。
解决方式也很简单, 就是增加一个交换分区
1. 创建分区文件, 大小64G
dd if=/dev/zero of=/swapfile bs=1M count=65535
2. 生成 swap 文件系统(执行该条命令后,可以看到生成了一个swapfile文件)
mkswap /swapfile
3. 激活 swap 文件
swapon /swapfile
扩展成功,可以使用free -hm来对比前后swap文件大小。
扩展后,如果需要卸载该swap分区的话,则可以将扩展的这部分 swap 分区删掉。
关闭swap文件:
swapoff /swapfile
最后删除文件即可。