準(zhǔn)備工作
首先,檢查你的系統(tǒng)是否已經(jīng)有 Swap 分區(qū):
swapon -s
或
free -m
如果沒(méi)有返回結(jié)果或者 free -m 中 Swap 一列數(shù)值是 0,則表示你的系統(tǒng)沒(méi)有 Swap 分區(qū)。
創(chuàng)建 SWAP 分區(qū)
我們可以使用 fallocate 命令創(chuàng)建一個(gè) 1GB 大小的 Swap 分區(qū):
fallocate -l 1G /swapfile
如果這個(gè)命令無(wú)法使用,請(qǐng)安裝 util-linux 包:
apt install util-linux
然后設(shè)置這個(gè)文件的權(quán)限:
chmod 600 /swapfile
然后激活 SWAP 分區(qū)
mkswap /swapfile
swapon /swapfile
此時(shí),你可以使用 swapon -s 或 free -m 命令查看 Swap 分區(qū)是否已經(jīng)激活。
設(shè)置開(kāi)機(jī)自啟
我們需要編輯 /etc/fstab 這個(gè)文件,加入下面的內(nèi)容即可:
echo “/swapfile swap swap defaults 0 0” >> /etc/fstab
大功告成,使用 free -m 命令查看 Swap 分區(qū)是否正確:
調(diào)整系統(tǒng)內(nèi)核 Swappiness 值
Swapiness 是 Linux 內(nèi)核的一個(gè)屬性,定義了系統(tǒng)使用交換空間的頻率,Swapiness 的值在 0 到 100 之間 (默認(rèn)是 60),一個(gè)低的值會(huì)使內(nèi)核盡可能地避免交換,而一個(gè)高的值會(huì)使內(nèi)核更積極地使用交換空間。
這個(gè)值默認(rèn)是 60,我們可以使用 cat /proc/sys/vm/swappiness 命令查看當(dāng)前值。
一般我們可以給他改成 10:
echo “vm.swappiness=10” >> /etc/sysctl.conf
然后使用 sysctl -p 命令使其生效。
關(guān)閉 Swap
有時(shí)候我們需要關(guān)閉 Swap 分區(qū),可以使用下面的命令:
首先,停用 Swap 分區(qū):
swapoff -v /swapfile
然后檢查 /etc/fstab,刪除 /swapfile swap swap defaults 0 0 這一行。
最后刪除 /swapfile 這個(gè)文件:
rm /swapfile