交換分區的功能就是在內存不夠的情況下,操作系統先把內存中暫時不用的數據,存到硬盤的交換空間,
騰出內存來讓別的程序運行,和Windows的虛擬內存(pagefile.sys)的作用是一樣的。
2、關于swap交換分區的設置
一種流行的、以訛傳訛的說法是,安裝linux系統時,交換分區swap的大小應該是內存的兩倍。
也就是說,如果內存是2G,那么就應該分出4G的硬盤空間作為交換空間,其實這是嚴重的浪費。
真實的情況是:可以根據你系統內存的大小,以及所使用的程序,自行決定交換分區的大小,甚至可以完全不用交換分區!
做一個假設:如果你的內存足夠大,極少出現內存不足的情況,那么你就不需要交換分區。事實上,日常使用很少能用完全部的內存。
在用不完內存容量的情況下,還要劃出它兩倍的硬盤空間用于內存交換,這不是浪費嗎?
可以說,在你內存基本夠用的情況下,完全可以不要交換空間。在Windows下也是一樣,在系統屬性中,把虛擬內存設置為0,系統依然運行的很好。
當然,如果你用的是服務器,還是要有專門的虛擬內存,有備無患。但是虛擬內存的大小不一定非要內存的兩倍。
3、查看swap 空間大小(總計)[root@localhost swap]# free -m ;-m表示單位為MB,默認單位為KB(-k);此外還有Byte(-b)和GB(-g) total used free shared buffers cachedMem: 1893 720 1172 0 111 495 ;該行顯示了從系統角度看來內存使用的情況, total是系統可用的內存大小, 數量上等于系統物理內存減去內核保留的內存-/+ buffers/cache: 113 1780 ;從用戶角度顯示內存信息, 可用內存從數量上等于mem行used列值減去buffers和cached內存的大小.Swap: 2015 0 2015 ;swap空間的大小4、查看swap 空間(file(s)/partition(s))
[root@localhost swap]# swapon -s ;等價于 cat /PRoc/swaps ,包括 文件 和 分區 的詳細信息Filename Type Size Used Priority/dev/sda3 partition 2064376 0 -15、添加交換空間
Linux下可以創建兩種類型的交換空間,一種是swap分區,一種是swap文件。
前者適合有空閑的分區可以使用,后者適合于沒有空的硬盤分區,硬盤的空間都已經分配完畢。
推薦你添加一個交換分區;不過,若你沒有多少空閑空間可用,則添加交換文件。
5.1、添加一個交換分區1、使用fdisk來創建交換分區(假設 /dev/sdb2 是創建的交換分區)2、 使用 mkswap 命令來設置交換分區: # mkswap /dev/sdb23、啟用交換分區: # swapon /dev/sdb24、寫入/etc/fstab,以便在引導時啟用: /dev/sdb2 swap swap defaults 0 05.2、添加一個交換文件
1、創建大小為512M的交換文件: # dd if=/dev/zero of=/swapfile1 bs=1024k count=5122、使用 mkswap 命令來設置交換文件: # mkswap /swapfile13、啟用交換分區: # swapon /swapfile14、寫入/etc/fstab,以便在引導時啟用: /swapfile1 swap swap defaults 0 0新添了交換分區并啟用它之后,請查看 cat /proc/swaps 或 free 命令的輸出來確保交換分區已被啟用了。6、刪除交換空間
1、禁用交換分區: # swapoff /dev/sdb22、從 /etc/fstab 中刪除項目;3、使用fdisk或yast工具刪除分區。刪除交換文件步驟同上。
-------------------------------------------------------------------------------------------------------------------------------------------------------------
參考資料:
http://blog.sina.com.cn/s/blog_48212cbe0100i03e.html
http://blog.csdn.net/onlymilan/article/details/4941189
http://baike.baidu.com/link?url=2PLKUeMDG0oHZF8FXv25O6d_5mBlV-zOitTy1eYalQDY1jkWUEAi9JtKJQsk6CzL-IzGdUbiypfDCzvc4WqbW_
新聞熱點
疑難解答