🚀 作者主頁: 有來技術
🔥 開源項目: youlai-mall ︱vue3-element-admin︱youlai-boot︱vue-uniapp-template
🌺 倉庫主頁: GitCode︱ Gitee ︱ Github
💖 歡迎點贊 👍 收藏 ?評論 📝 如有錯誤敬請糾正!
目錄
- 前言
- 1. 🔍 檢查當前交換空間
- 2. 📂 創建交換文件
- 3. 🔐 設置文件權限
- 4. ?? 將文件設置為交換空間
- 5. ?? 啟用交換空間
- 6. ? 驗證交換空間
- 7. 🔄 設置開機自動掛載
- 8. ?? 調整交換空間使用策略(可選)
- 注意事項
前言
在 CentOS 系統中,交換空間(Swap)用于在物理內存不足時,臨時將部分數據存儲到硬盤上,以釋放內存供其他進程使用。合理配置交換空間可以提升系統的穩定性和性能。
1. 🔍 檢查當前交換空間
首先,使用 free -h
命令查看當前系統的交換空間使用情況:
free -h
如果輸出中沒有顯示交換空間,說明當前未配置交換空間。
2. 📂 創建交換文件
在 CentOS 中,您可以通過創建交換文件來添加交換空間。假設您希望創建一個 2GB 的交換文件,執行以下命令:
sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
這將創建一個名為 /swapfile
的 2GB 大小的文件。
交換空間大小建議
通常,交換空間的大小應根據物理內存來配置。常見的配置建議如下:
物理內存 ≤ 4GB:交換空間通常配置為物理內存的兩倍,所以 4GB 內存的服務器應該配置 8GB 的交換空間。
物理內存 > 4GB:交換空間一般配置為物理內存大小加上 2GB,例如 8GB 內存的服務器可以配置 10GB 的交換空間。
3. 🔐 設置文件權限
為確保交換文件的安全性,設置文件權限:
sudo chmod 600 /swapfile
4. ?? 將文件設置為交換空間
使用 mkswap
命令將文件設置為交換空間:
sudo mkswap /swapfile
5. ?? 啟用交換空間
啟用剛剛創建的交換空間:
sudo swapon /swapfile
6. ? 驗證交換空間
再次使用 free -h
命令確認交換空間已成功添加。
7. 🔄 設置開機自動掛載
為了在系統重啟后自動啟用交換空間,需要將其添加到 /etc/fstab
文件中:
echo '/swapfile swap swap defaults 0 0' | sudo tee -a /etc/fstab
8. ?? 調整交換空間使用策略(可選)
vm.swappiness
參數控制內核將內存頁交換到交換空間的傾向,取值范圍為 0 到 100,默認 60。值越低,表示內核傾向于保留數據在內存中,只有在內存緊張時才使用交換空間。
查看當前值:
cat /proc/sys/vm/swappiness
要臨時修改該值(例如設置為 30):
sudo sysctl vm.swappiness=30
要永久修改,請編輯 /etc/sysctl.conf
文件,添加或修改以下行:
vm.swappiness=30
然后,應用更改:
sudo sysctl -p
注意事項
- 交換空間大小:根據系統的物理內存大小,合理配置交換空間。一般建議交換空間大小為物理內存的 1 到 2 倍,但對于內存較大的系統,交換空間可以適當減少。
- 性能影響:頻繁使用交換空間可能會導致系統性能下降,因為硬盤的讀寫速度遠低于內存。
- 交換分區與交換文件:交換分區通常性能更好,但交換文件更靈活,易于調整大小。根據實際需求選擇合適的方式。