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
