linux swap操作
一、简介
Linux 中的 Swap 交换分区就是 Windows 中的虚拟内存,将Linux系统服务器中的物理硬盘空间虚拟化成内存使用,以解决内存不够的问题
二、新建Swap分区
- 新建分区前,需要先关闭分区,如果无法关闭 Swap 分区,那可能是因为物理内存当前用量 + Swap 分区当前用量已经超过了物理内存的总大小,我们可以先重启服务器,在机器刚启动的时候关闭 Swap 分区。
# 查看内存情况
free -h
# 关闭Swap分区
swapoff -a
# 创建一个4G的文件,/var/swapfile是文件位置,bs*count 是文件大小
dd if=/dev/zero of=/var/swapfile bs=1M count=4096
# 格式化为交换分区文件
mkswap /var/swapfile
# 启用交换分区文件
swapon /var/swapfile
# 设置开机启动
echo '/var/swapfile swap swap defaults 0 0' >> /etc/fstab
# 查看内存情况
free -h
# 查看swap是否正确
# swapon -s
# 刷新swap
# swapoff -a && swapon -a
三、删除swap分区
# 停止swap分区
swapoff /var/swapfile
# 删除分区文件
rm -f /var/swapfile
# 编辑/fstab文件删除掉自动挂载Swap的设置
vim /etc/fstab
四、修改swappiness参数
swappiness值在0到100之间。swappiness=0的时候表示最大限度使用物理内存,然后才是swap空间
# 查看配置
cat /proc/sys/vm/swappiness
或
sysctl vm.swappiness
# 临时设置swappiness值
sysctl vm.swappiness=30
# 设置开机启动
vim /etc/sysctl.conf
# 在文件最后附加以下内容
vm.swappiness=30