Linux swap
swap 分区通常被称为交换分区📦️,这是一块特殊的硬盘空间,即当实际内存不够用的时候,操作系统会从内存中取出一部分暂时不用的📑数据,放在交换分区中,🔎从而为当前运行的程序腾出足够的内存空间。
🛰️检查 Swap 分区
检查你的系统是否已经有 Swap 分区:
swapon -s
# 或者
free -m
如果没有返回结果或者
free -m
中Swap
一列数值是0
,则表示你的系统没有 Swap 分区。
⛵️创建 SWAP 分区
使用
fallocate
创建一个 2GB 大小的 Swap 分区
fallocate -l 2G /swapfile
如果这个命令无法使用,请安装
util-linux
包
apt install util-linux
设置这个文件的权限
chmod 600 /swapfile
激活 SWAP 分区
mkswap /swapfile
swapon /swapfile
此时,你可以使用 swapon -s
或 free -m
命令查看 Swap 分区是否已经激活。
🚤设置开机自启
编辑 /etc/fstab
这个文件,加入下面的内容即可:
echo "/swapfile swap swap defaults 0 0" >> /etc/fstab
使用 free -m
命令查看 Swap 分区是否正确
🚁调整系统内核 Swappiness 值
Swapiness 是 Linux 内核的一个属性,定义了系统使用交换空间的频率,Swapiness 的值在 0 到 100 之间 (默认是 60),一个低的值会使内核尽可能地避免交换,而一个高的值会使内核更积极地使用交换空间。
这个值默认是 60
,我们可以使用 cat /proc/sys/vm/swappiness
命令查看当前值
改成 100
:
echo "vm.swappiness=100" >> /etc/sysctl.conf
sysctl -p
⏳️关闭 Swap
停用 Swap 分区
swapoff -v /swapfile
然后检查 /etc/fstab
,删除 /swapfile swap swap defaults 0 0
这一行。
最后删除 /swapfile
这个文件:
rm /swapfile