給Linux分配多少Swap空間才夠呢裹纳?

Swap交換大小應(yīng)該是多少择葡?交換應(yīng)該是RAM大小的兩倍還是RAM大小的一半?如果我的系統(tǒng)有幾GB的RAM剃氧,我是否需要交換敏储?
也許這些是關(guān)于在安裝Linux時(shí)選擇交換大小的最常見(jiàn)問(wèn)題。
這不是什么新鮮事朋鞍。交換大小一直存在很多混亂已添。

Swap兩倍于內(nèi)存的時(shí)代已經(jīng)過(guò)去

很長(zhǎng)一段時(shí)間,推薦的交換大小是RAM大小的兩倍滥酥,但這條黃金法則不再適用于現(xiàn)代計(jì)算機(jī)酝碳。

我們的系統(tǒng)RAM大小高達(dá)128 GB,許多舊計(jì)算機(jī)甚至沒(méi)有這么多的硬盤(pán)恨狈。但是你會(huì)分配到具有32 GB RAM的系統(tǒng)的交換大惺杌? 64GB禾怠?那將是一個(gè)荒謬的硬盤(pán)浪費(fèi)返奉,不是嗎?

在了解需要分配Swap空間應(yīng)該分配多大之前吗氏,讓我們先快速了解交換內(nèi)存的一兩件事芽偏。
這些有助于讓每個(gè)人真正理解為什么Linux需要Swap交換空間。

什么是Swap?Swap什么時(shí)候會(huì)被使用到弦讽?

我們都知道計(jì)算機(jī)系統(tǒng)在運(yùn)行的時(shí)候會(huì)使用到RAM(Random Access Memory)污尉,當(dāng)只有少數(shù)應(yīng)用程序在運(yùn)行時(shí)膀哲,系統(tǒng)會(huì)使用可用的RAM進(jìn)行管理。

但是如果有很多很多的程序在運(yùn)行被碗,那么就需要非常大容量RAM某宪,這時(shí)候計(jì)算機(jī)RAM不夠,應(yīng)用程序就會(huì)崩潰锐朴。

當(dāng)RAM耗盡時(shí)兴喂,Swap交換空間會(huì)被系統(tǒng)使用。當(dāng)RAM耗盡時(shí)焚志,Linux系統(tǒng)使用部分硬盤(pán)內(nèi)存并將其分配給正在運(yùn)行的應(yīng)用程序衣迷。

這聽(tīng)起來(lái)非常不錯(cuò),這意味著如果我們?nèi)绻峙?0GBSwap交換空間酱酬,系統(tǒng)或許可以同時(shí)運(yùn)行成百上千的應(yīng)用程序壶谒?是這樣么?大錯(cuò)特錯(cuò)I殴痢:共恕!

你知道的贵少,程序運(yùn)行速度十分重要呵俏;
RAM訪問(wèn)數(shù)據(jù)的大小為納秒級(jí)堆缘;
SSD訪問(wèn)數(shù)據(jù)(以微秒為單位)滔灶,而普通硬盤(pán)以毫秒為單位訪問(wèn)數(shù)據(jù);
這意味著RAM比SSD快1000倍吼肥,比普通HDD快100,000倍录平。

如果應(yīng)用程序過(guò)分依賴(lài)Swap交換空間,則其性能將下降缀皱,因?yàn)樗鼰o(wú)法以與RAM中相同的速度訪問(wèn)數(shù)據(jù)斗这。
因此,完成相同任務(wù)可能需要幾分鐘才能完成任務(wù)啤斗,而不需要花費(fèi)1秒鐘完成任務(wù)表箭。這將使應(yīng)用程序幾乎無(wú)用。這被稱(chēng)為計(jì)算術(shù)語(yǔ)中的顛簸钮莲。

Swap交換空間只是用來(lái)應(yīng)急的免钻,所以它的分配要適量。

為什么需要Swap交換空間

以下是需要交換空間Swap的幾個(gè)原因

  • 如果系統(tǒng)的RAM小于1GB崔拥,就必須使用Swap交換空間极舔,不然沒(méi)運(yùn)行幾個(gè)應(yīng)用程序,他們就會(huì)崩潰
  • 如果系統(tǒng)運(yùn)行了非常重的應(yīng)用程序链瓦,例如視頻制作軟件拆魏,使用Swap交換空間可以防止因?yàn)镽AM空間不夠用導(dǎo)致的軟件崩潰
  • 如果電腦休眠了,斷電RAM會(huì)被斷電;RAM沒(méi)有斷電記憶功能渤刃,因此要將這些內(nèi)容暫時(shí)存入Swap交換空間里拥峦,當(dāng)從休眠中恢復(fù)過(guò)來(lái)的時(shí)候,這些內(nèi)容會(huì)被重新讀入RAM溪掀,保證程序繼續(xù)運(yùn)行
  • 為了避免有些程序瘋狂的吃掉很多內(nèi)存事镣,這個(gè)時(shí)候需要Swap來(lái)幫助我們規(guī)避這些風(fēng)險(xiǎn)

當(dāng)RAM很大的時(shí)候,需不需要分配很大的交換空間揪胃?

如果你的RAM有32GB或者64GB璃哟,你的系統(tǒng)可能永遠(yuǎn)都不會(huì)使用到這么多的交換分區(qū)。

我猜測(cè)喊递,如果你的系統(tǒng)有32GB的RAM随闪,它或許至少有100GB的硬盤(pán)。
分配幾GB的交換空間應(yīng)該也無(wú)關(guān)痛癢骚勘,如果錯(cuò)誤的程序開(kāi)始濫用RAM铐伴,它將提供額外的“穩(wěn)定性”。

應(yīng)該分配多大的Swap交換空間

現(xiàn)在回到這個(gè)最大的問(wèn)題上俏讹,應(yīng)該給Linux分配多少Swap空間才夠当宴。
答案是沒(méi)有一個(gè)確切的答案,不過(guò)倒是有一些建議泽疆,不同的人根據(jù)自己的實(shí)際情況分配交換空間的大小户矢。

如果根據(jù)Red Hat的建議,他們建議是分配RAM 20%的換空間殉疼,也就是RAM是8GB梯浪,分配1.6GB交換空間。

CentOS建議

  • 如果RAM小于2GB瓢娜,就分配和RAM同等大小的Swap交換空間挂洛。
  • 如果RAM大于2GB,就分配2GB交換空間

Ubuntu考慮到系統(tǒng)需要休眠眠砾,

  • 如果RAM小于1GB虏劲,Swap空間至少要和RAM一樣大,甚至是要為RAM的兩倍大小
  • 如果RAM大于1GB褒颈,Swap交換空間應(yīng)該至少等于RAM大小的平方根柒巫,并且最多為RAM大小的兩倍
  • 如果要休眠,Swap交換大小應(yīng)該等于RAM的大小加上RAM大小的平方根

Ubuntu建議的Swap分配表

Ram大小 Swap大小 激活Swap后合計(jì)大小
256MB 256MB 512MB
512MB 512MB 1GB
1GB 1GB 2GB
3GB 2GB 5GB
4GB 2GB 6GB
6GB 2GB 8GB
8GB 3GB 11GB
12GB 3GB 15GB
16GB 4GB 20GB
32GB 6GB 38GB
64GB 8GB 72GB
128GB 11GB 139GB

結(jié)語(yǔ)

事實(shí)上沒(méi)有一個(gè)真正確定的Swap交換空間分配大小哈肖,根據(jù)實(shí)際情況來(lái)吧吻育,如果你不在乎多點(diǎn)交換空間,可以使用兩倍于RAM的這種方案淤井。
你更傾向于使用哪種方案呢布疼?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末摊趾,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子游两,更是在濱河造成了極大的恐慌砾层,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,509評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件贱案,死亡現(xiàn)場(chǎng)離奇詭異肛炮,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)宝踪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén)侨糟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人瘩燥,你說(shuō)我怎么就攤上這事秕重。” “怎么了厉膀?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,875評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵溶耘,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我服鹅,道長(zhǎng)凳兵,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,441評(píng)論 1 293
  • 正文 為了忘掉前任企软,我火速辦了婚禮庐扫,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘澜倦。我一直安慰自己聚蝶,他們只是感情好杰妓,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布藻治。 她就那樣靜靜地躺著,像睡著了一般巷挥。 火紅的嫁衣襯著肌膚如雪桩卵。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,365評(píng)論 1 302
  • 那天倍宾,我揣著相機(jī)與錄音雏节,去河邊找鬼。 笑死高职,一個(gè)胖子當(dāng)著我的面吹牛钩乍,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播怔锌,決...
    沈念sama閱讀 40,190評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼寥粹,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼变过!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起涝涤,我...
    開(kāi)封第一講書(shū)人閱讀 39,062評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤媚狰,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后阔拳,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體崭孤,經(jīng)...
    沈念sama閱讀 45,500評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評(píng)論 3 335
  • 正文 我和宋清朗相戀三年糊肠,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了辨宠。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,834評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡货裹,死狀恐怖彭羹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情泪酱,我是刑警寧澤派殷,帶...
    沈念sama閱讀 35,559評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站墓阀,受9級(jí)特大地震影響毡惜,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜斯撮,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評(píng)論 3 328
  • 文/蒙蒙 一经伙、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧勿锅,春花似錦帕膜、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,779評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至张弛,卻和暖如春荒典,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背吞鸭。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,912評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工寺董, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人刻剥。 一個(gè)月前我還...
    沈念sama閱讀 47,958評(píng)論 2 370
  • 正文 我出身青樓遮咖,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親造虏。 傳聞我的和親對(duì)象是個(gè)殘疾皇子御吞,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容