在CentOS系統中,swapper(交換空間)是用于在物理內存不足時將部分數據轉移到硬盤空間中的一種機制。它類似于Windows中的虛擬內存,旨在擴展系統內存、增強系統穩定性以及提高系統性能。
使用 free -h
命令可以查看系統的交換空間使用情況。例如:
total used free shared buff/cache available
Mem: 7.7Gi 1.2Gi 1.3Gi 334Mi 3.9Gi 3.1Gi
Swap: 2.0Gi 0B 2.0Gi
其中,Swap一行的 used
列顯示了swap分區的使用情況。
創建交換文件:
使用 dd
命令創建一個指定大小的swap文件,例如創建一個4GB的swap文件:
sudo dd if=/dev/zero of=/swapfile bs=1G count=4
然后使用 mkswap
命令格式化該文件為swap空間,并使用 swapon
命令掛載它:
sudo mkswap /swapfile
sudo swapon /swapfile
配置開機自動掛載:
為了在系統重啟后自動掛載swap文件,需要將其添加到 /etc/fstab
文件中:
echo "/swapfile swap swap defaults 0 0" | sudo tee -a /etc/fstab
調整swap分區優先級(可選):
可以使用 sysctl
命令來查看當前的 swappiness
數值,并修改它以調整系統使用swap分區的傾向:
sudo sysctl vm.swappiness=10
為了使這個設置永久生效,需要將相應的行添加到 /etc/sysctl.conf
文件中:
vm.swappiness = 10
然后運行 sudo sysctl -p
使更改生效。
調整內核參數:
vm.swappiness
值可以減少系統對swap的依賴。vm.dirty_ratio
和 vm.dirty_background_ratio
可以減少磁盤I/O操作,從而降低swap的使用。優化應用程序配置:
監控和預警:
增加物理內存:
禁用不必要的swap:
swapoff
命令禁用不再使用的swap分區。通過上述方法,可以有效地管理CentOS系統的swapper資源占用,確保系統在高負載下仍能保持穩定和高效運行。