CentOS7系統(tǒng)增加swap的操作方法實(shí)例
前言
swap是位于磁盤上的特殊文件(或分區(qū)),屬于“虛擬內(nèi)存”的一部分。通俗點(diǎn)就是內(nèi)存的備胎,內(nèi)存充足的情況下,基本上沒(méi)swap什么事(和設(shè)置有關(guān));內(nèi)存不夠用時(shí)系統(tǒng)便將內(nèi)存中的部分?jǐn)?shù)據(jù)騰挪到swap中,為正在運(yùn)行的程序騰出內(nèi)存。
使用swap能讓系統(tǒng)運(yùn)行更多或更大型的程序,但由于swap的讀寫速度遠(yuǎn)遜于內(nèi)存,頻繁使用swap可能讓系統(tǒng)和程序有延遲卡頓。
大內(nèi)存計(jì)算機(jī)swap有必要嗎?
對(duì)于內(nèi)存較小的計(jì)算機(jī),swap是非常有必要的。swap的存在能讓執(zhí)行吃內(nèi)存程序變得可能,執(zhí)行慢總比不能運(yùn)行或者奔潰強(qiáng)。但現(xiàn)代計(jì)算機(jī)動(dòng)輒8G以上的內(nèi)存,如非運(yùn)行大型或?qū)I(yè)軟件,內(nèi)存足夠日常使用。這種情況下,swap有存在的必要嗎?
答案還是看使用場(chǎng)景。個(gè)人電腦上運(yùn)行桌面版Linux并且開啟休眠功能,則應(yīng)該劃分不小于內(nèi)存的swap分區(qū);如果是內(nèi)存足夠大且常年不關(guān)機(jī)的服務(wù)器,沒(méi)有swap也毫無(wú)問(wèn)題。
ssd硬盤要不要設(shè)置swap?
之前的ssd硬盤有讀寫壽命的問(wèn)題,因此不建議將swap文件或分區(qū)放到ssd硬盤上。
目前的ssd硬盤技術(shù)已經(jīng)升級(jí)換代更智能,如果有swap需求,放在ssd硬盤上也沒(méi)什么問(wèn)題。
swap設(shè)置多大好?
如果開啟休眠功能,應(yīng)該劃分swap分區(qū),并且分區(qū)大小不能小于內(nèi)存,建議的值是“內(nèi)存大小+2G”。
不用休眠功能的服務(wù)器,swap可以為文件,一種確定swap大小的實(shí)用方法是:1G內(nèi)存及以下,swap大小為內(nèi)存的兩倍;2-4G內(nèi)存,與內(nèi)存同等大??;5-16G內(nèi)存,swap可固定為4G;17-32G內(nèi)存,8G swap;33 G及以上,固定為16G swap。
上述方法不絕對(duì),有特殊需求可酌情增減swap大小。
怎樣增加swap?
安裝操作系統(tǒng)時(shí)候可以分區(qū)(單獨(dú)掛載點(diǎn))形式指定swap,也可以在系統(tǒng)安裝完成后動(dòng)態(tài)添加和刪除。
查看swap
free命令可以查看系統(tǒng)活動(dòng)的swap信息,例如:
$ free -m # 輸出如下 # total used free shared buff/cache available # Mem: 7976 4979 328 124 2669 2703 # Swap: 0 0 0
第二行是swap信息,可以看到?jīng)]有活動(dòng)的swap。
也可以用swapon命令查看活動(dòng)的swap,例如:
$ swapon -s # 沒(méi)有swap信息,所以無(wú)輸出 # 有swap的輸出為 # Filename Type Size Used Priority # /swap file 2097148 281052 -2
增加swap
假設(shè)我們打算運(yùn)行一個(gè)非常占用內(nèi)存的程序,8G物理內(nèi)存不夠,便可借助swap增加系統(tǒng)可用的虛擬內(nèi)存。操作方法如下:
1、選定或創(chuàng)建一個(gè)作為swap的文件(也可以用分區(qū)),常用創(chuàng)建指定大小文件的命令有fallocate和dd。例如創(chuàng)建一個(gè)8G大小的文件:
# fallocate sudo fallocate -l 8G /swap # dd sudo dd bs=1GB count=8 if=/dev/zero of=/swap
由于dd有復(fù)制的過(guò)程執(zhí)行較慢,實(shí)踐中建議用fallocate;
2、swap文件會(huì)存放內(nèi)存中的數(shù)據(jù),出于安全考慮應(yīng)限制其它用戶的訪問(wèn):sudo chmod 0600 /swap;
3、將文件格式化為swap文件:sudo mkswap /swap;
4、啟用該swap文件:sudo swapon /swap;
如果不想使用swap,可用swapoff命令卸載:sudo swapoff /swap;
5、如果希望系統(tǒng)啟動(dòng)后自動(dòng)加載swap文件,在/etc/fstab文件增加一行: /swap swap swap sw 0 0
。
增加swap后,可用swapon -s或free -m命令查看swap信息。
swap相關(guān)設(shè)置
和swap最直接相關(guān),也是影響系統(tǒng)性能的一個(gè)設(shè)置參數(shù)便是vm.swappiness。其值是0-100的整數(shù),指示內(nèi)存用掉百分之多少時(shí)開始使用swap。100表示盡可能使用swap,0則表示只有物理內(nèi)存不夠時(shí)才用上swap備胎。對(duì)于服務(wù)器,建議10-30之間。
設(shè)置和更改swappiness的命令是:sudo sysctl vm.swappiness=10
。該命令只對(duì)當(dāng)前系統(tǒng)有效,系統(tǒng)重啟后又恢復(fù)默認(rèn)值。要想設(shè)置永久生效,在/etc/sysctl.conf中增加或更改對(duì)應(yīng)的設(shè)置行:vm.swappiness = 10
。
參考
https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-centos-7
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)我們的支持。
上一篇:Linux中nohup與&的用法和區(qū)別詳解
欄 目:Linux/apache
下一篇:linux ssh端口轉(zhuǎn)發(fā)的三種方式
本文標(biāo)題:CentOS7系統(tǒng)增加swap的操作方法實(shí)例
本文地址:http://mengdiqiu.com.cn/a1/Linux_apache/10766.html
您可能感興趣的文章
- 01-10centos7.x 部署主、從DNS服務(wù)器問(wèn)題
- 01-10Linux被中斷的系統(tǒng)如何調(diào)用詳解
- 01-10Linux系統(tǒng)文件的默認(rèn)權(quán)限和特殊權(quán)限
- 01-10windows 用VMware創(chuàng)建linux虛擬機(jī)安裝CentOS7.2操作系統(tǒng)
- 01-10Windows操作系統(tǒng)下Linux虛擬機(jī)的安裝與配置教程圖解
- 01-10通過(guò) SSH 在遠(yuǎn)程 Linux 系統(tǒng)上運(yùn)行命令的方法
- 01-10Centos7 下安裝python3及卸載的教程
- 01-10CentOS7 安裝 zabbix 4.0 教程(圖文詳解)
- 01-10CentOS7安裝GUI界面及遠(yuǎn)程連接的實(shí)現(xiàn)
- 01-10centos7.2搭建nginx的web服務(wù)器部署uniapp項(xiàng)目


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 04-02linux關(guān)閉串口命令 關(guān)閉linux端口命令
- 04-02linux文件命令重命名 linux重命名文件名
- 04-02linux中jobs命令 shell jobs命令
- 04-02linux命令注入過(guò)濾 linux 代碼注入
- 04-02linux依次執(zhí)行命令 linux命令的執(zhí)行過(guò)程
- 04-02linux命令注銷vnc linux命令行注銷用戶
- 04-02linux命令免輸入 linux配置免密登錄
- 04-02軟交換linux命令 軟交換網(wǎng)絡(luò)主要協(xié)議
- 04-02linux命令歷史記錄 linux查看歷史記錄的
- 04-02linux命令頁(yè)面 linux命令頁(yè)面中文
隨機(jī)閱讀
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 01-10C#中split用法實(shí)例總結(jié)
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 04-02jquery與jsp,用jquery
- 01-10delphi制作wav文件的方法
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載