Debian系統中的swapper(交換空間)是一個重要的內存管理工具,它在物理內存不足時,將一部分內存頁交換到磁盤上,以保護系統不被內存耗盡的情況所崩潰。以下是使用swapper解決內存不足的一些方法:
創建swap文件:使用 fallocate 命令創建一個指定大小的交換文件,例如:
sudo fallocate -l 2G /swapfile
設置交換文件的權限:
sudo chmod 600 /swapfile
將文件格式化為交換空間:
sudo mkswap /swapfile
啟用交換文件:
sudo swapon /swapfile
使交換文件在系統重啟后自動掛載:編輯 /etc/fstab 文件,添加如下行:
/swapfile none swap sw 0 0
調整swap空間大小:如果需要調整swap的大小,可以刪除現有的交換文件,然后重復上述步驟,指定所需的新大小。
調整swappiness值:swappiness值決定了系統使用交換空間的頻率。值較低(如10)會使系統更傾向于使用物理內存,而不是交換空間。值較高(如60或更高)則表示系統會更頻繁地使用交換空間。
查看當前的swappiness值:
cat /proc/sys/vm/swappiness
臨時更改swappiness值:
sudo sysctl vm.swappiness=10
永久更改,編輯 /etc/sysctl.conf 文件并添加或修改以下行:
vm.swappiness=10
然后應用更改:
sudo sysctl -p
free -h 命令查看swap的使用情況。swapon --showfree -h 命令查看swap的詳細信息。臨時關閉swap:
sudo swapoff -a
持久化關閉swap:編輯 /etc/fstab 文件,將swap分區掛載相關的行加上注釋符號 # 即可。
請注意,關閉swap分區可能會影響系統的性能和穩定性,特別是在內存資源緊張的情況下。在執行任何可能影響swap的操作之前,請確保了解其潛在影響,并在必要時備份重要數據。