歡迎您光臨本站 註冊首頁

Linux SWAP 交換分區配置說明

←手機掃碼閱讀     火星人 @ 2014-03-12 , reply:0
  

一.SWAP 說明

1.1 SWAP 概述

當系統的物理內存不夠用的時候,就需要將物理內存中的一部分空間釋放出來,以供當前運行的程序使用。那些被釋放的空間可能來自一些很長時間沒有什麼操作的程序,這些被釋放的空間被臨時保存到Swap空間中,等到那些程序要運行時,再從Swap中恢復保存的數據到內存中。這樣,系統總是在物理內存不夠時,才進行Swap交換。

這個是SWAP 交換分區的作用。實際上,我們更關注的應該是SWAP分區的大小問題。 設置多大才是最優的。

一般來說可以按照如下規則設置swap大小:

4G以內的物理內存,SWAP 設置為內存的2倍。

4-8G的物理內存,SWAP 等於內存大小。

8-64G 的物理內存,SWAP 設置為8G。

64-256G物理內存,SWAP 設置為16G。

實際上,系統中交換分區的大小並不取決於物理內存的量,而是取決於系統中內存的負荷,所以在安裝系統時要根據具體的業務來設置SWAP的值。

1.2 系統在什麼情況下才會使用SWAP?

實際上,並不是等所有的物理內存都消耗完畢之後,才去使用swap的空間,什麼時候使用是由swappiness 參數值控制。

[root@rhce ~]# cat /proc/sys/vm/swappiness

60

該值默認值是60.

swappiness=0的時候表示最大限度使用物理內存,然後才是 swap空間,

swappiness=100的時候表示積極的使用swap分區,並且把內存上的數據及時的搬運到swap空間裡面。

現在伺服器的內存動不動就是上百G,所以我們可以把這個參數值設置的低一些,讓操作系統儘可能的使用物理內存,降低系統對swap的使用,從而提高系統的性能。

1.3 如何修改swappiness參數?

--臨時性修改:

[root@rhce ~]# sysctl vm.swappiness=10

vm.swappiness = 10

[root@rhce ~]# cat /proc/sys/vm/swappiness

10

這裡我們的修改已經生效,但是如果我們重啟了系統,又會變成60.

--永久修改:

在/etc/sysctl.conf 文件里添加如下參數:

vm.swappiness=10

或者:

[root@rhce ~]# echo 'vm.swappiness=10'>> /etc/sysctl.conf

保存,重啟,就生效了。



[火星人 ] Linux SWAP 交換分區配置說明已經有449次圍觀

http://coctec.com/docs/linux/show-post-68545.html