Linux配置交換空間(Swap)解決內(nèi)存不足的具體教程
前言
在 CentOS 系統(tǒng)中,交換空間(Swap)用于在物理內(nèi)存不足時(shí),臨時(shí)將部分?jǐn)?shù)據(jù)存儲(chǔ)到硬盤(pán)上,以釋放內(nèi)存供其他進(jìn)程使用。合理配置交換空間可以提升系統(tǒng)的穩(wěn)定性和性能。
1. 檢查當(dāng)前交換空間
首先,使用 free -h 命令查看當(dāng)前系統(tǒng)的交換空間使用情況:
free -h
如果輸出中沒(méi)有顯示交換空間,說(shuō)明當(dāng)前未配置交換空間。

2. 創(chuàng)建交換文件
在 CentOS 中,您可以通過(guò)創(chuàng)建交換文件來(lái)添加交換空間。假設(shè)您希望創(chuàng)建一個(gè) 2GB 的交換文件,執(zhí)行以下命令:
sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
這將創(chuàng)建一個(gè)名為 /swapfile 的 2GB 大小的文件。
交換空間大小建議
通常,交換空間的大小應(yīng)根據(jù)物理內(nèi)存來(lái)配置。常見(jiàn)的配置建議如下:
物理內(nèi)存 ≤ 4GB:交換空間通常配置為物理內(nèi)存的兩倍,所以 4GB 內(nèi)存的服務(wù)器應(yīng)該配置 8GB 的交換空間。
物理內(nèi)存 > 4GB:交換空間一般配置為物理內(nèi)存大小加上 2GB,例如 8GB 內(nèi)存的服務(wù)器可以配置 10GB 的交換空間。
3. 設(shè)置文件權(quán)限
為確保交換文件的安全性,設(shè)置文件權(quán)限:
sudo chmod 600 /swapfile
4. 將文件設(shè)置為交換空間
使用 mkswap 命令將文件設(shè)置為交換空間:
sudo mkswap /swapfile
5. 啟用交換空間
啟用剛剛創(chuàng)建的交換空間:
sudo swapon /swapfile
6. 驗(yàn)證交換空間
再次使用 free -h 命令確認(rèn)交換空間已成功添加。

7. 設(shè)置開(kāi)機(jī)自動(dòng)掛載
為了在系統(tǒng)重啟后自動(dòng)啟用交換空間,需要將其添加到 /etc/fstab 文件中:
echo '/swapfile swap swap defaults 0 0' | sudo tee -a /etc/fstab

8. 調(diào)整交換空間使用策略(可選)
vm.swappiness 參數(shù)控制內(nèi)核將內(nèi)存頁(yè)交換到交換空間的傾向,取值范圍為 0 到 100,默認(rèn) 60。值越低,表示內(nèi)核傾向于保留數(shù)據(jù)在內(nèi)存中,只有在內(nèi)存緊張時(shí)才使用交換空間。
查看當(dāng)前值:
cat /proc/sys/vm/swappiness
要臨時(shí)修改該值(例如設(shè)置為 30):
sudo sysctl vm.swappiness=30
要永久修改,請(qǐng)編輯 /etc/sysctl.conf 文件,添加或修改以下行:
vm.swappiness=30
然后,應(yīng)用更改:
sudo sysctl -p

注意事項(xiàng)
- 交換空間大小:根據(jù)系統(tǒng)的物理內(nèi)存大小,合理配置交換空間。一般建議交換空間大小為物理內(nèi)存的 1 到 2 倍,但對(duì)于內(nèi)存較大的系統(tǒng),交換空間可以適當(dāng)減少。
- 性能影響:頻繁使用交換空間可能會(huì)導(dǎo)致系統(tǒng)性能下降,因?yàn)橛脖P(pán)的讀寫(xiě)速度遠(yuǎn)低于內(nèi)存。
- 交換分區(qū)與交換文件:交換分區(qū)通常性能更好,但交換文件更靈活,易于調(diào)整大小。根據(jù)實(shí)際需求選擇合適的方式。
以上就是Linux配置交換空間(Swap)解決內(nèi)存不足的具體教程的詳細(xì)內(nèi)容,更多關(guān)于Linux交換空間解決內(nèi)存不足的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
apache2.2 支持.net 3.5的設(shè)置方法
一直在為asp.net程序的打包發(fā)布頭疼,甚至想過(guò)把程序裝好放到vware里!但為什么一直沒(méi)有想到apache這位大哥呢?!以至今天才google apache+asp.net。2009-10-10
CentOS7更換YUM源為國(guó)內(nèi)源的操作步驟
由于CentOS7默認(rèn)的yum源是國(guó)外的,導(dǎo)致我們使用yum下載軟件的下載速度不是很理想,這時(shí)候我們就需要將yum源更換成國(guó)內(nèi)的源,所以 本文指導(dǎo)CentOS7更換國(guó)內(nèi)YUM源(阿里云、清華等)以提升下載速度,需要的朋友可以參考下2025-05-05
centos把網(wǎng)卡名稱(chēng)修改為eth0的方法
本篇文章主要介紹了centos把網(wǎng)卡名稱(chēng)修改為eth0,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02
Ubuntu設(shè)置開(kāi)機(jī)自動(dòng)掛載所有格式硬盤(pán)分區(qū)
原來(lái)那么簡(jiǎn)單,安裝下面的東東,運(yùn)行,設(shè)置,搞定!2008-09-09
使用腳本實(shí)現(xiàn)故障時(shí)自動(dòng)重啟Apache
這篇文章主要介紹了使用腳本實(shí)現(xiàn)故障時(shí)自動(dòng)重啟Apache,需要的朋友可以參考下2014-12-12

