新聞中心
在Linux系統(tǒng)中,swap是用于緩存數(shù)據(jù)的一塊磁盤空間,當(dāng)系統(tǒng)內(nèi)存不足時,會將一部分內(nèi)存轉(zhuǎn)移到swap中進行存儲。但有時,我們需要關(guān)閉swap的使用,例如在一些高性能的服務(wù)器應(yīng)用,為了避免swap的使用影響系統(tǒng)效率,需要關(guān)閉swap。本文將介紹如何在Linux系統(tǒng)中關(guān)閉swap使用。

創(chuàng)新互聯(lián)不只是一家網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司;我們對營銷、技術(shù)、服務(wù)都有自己獨特見解,公司采取“創(chuàng)意+綜合+營銷”一體化的方式為您提供更專業(yè)的服務(wù)!我們經(jīng)歷的每一步也許不一定是最完美的,但每一步都有值得深思的意義。我們珍視每一份信任,關(guān)注我們的成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計質(zhì)量和服務(wù)品質(zhì),在得到用戶滿意的同時,也能得到同行業(yè)的專業(yè)認可,能夠為行業(yè)創(chuàng)新發(fā)展助力。未來將繼續(xù)專注于技術(shù)創(chuàng)新,服務(wù)升級,滿足企業(yè)一站式全網(wǎng)營銷推廣需求,讓再小的品牌網(wǎng)站建設(shè)也能產(chǎn)生價值!
一、查看系統(tǒng)的swap使用情況
在關(guān)閉swap使用之前,需要先查看系統(tǒng)當(dāng)前的swap使用情況,可以使用以下命令來查看系統(tǒng)的swap使用情況:
“`bash
free -m
“`
執(zhí)行該命令后,會輸出當(dāng)前系統(tǒng)的內(nèi)存和swap使用情況,如下:
“`
total used free shared buffers cached
Mem: 15484 11948 3536 0 1183 6557
-/+ buffers/cache: 3207 12277
Swap: 20237 10080 10187
“`
其中,Swap一欄顯示了當(dāng)前系統(tǒng)swap的總量、已使用量和可用量。
二、暫時禁用swap
如果只需要暫時禁用swap,可以使用以下命令:
“`bash
sudo swapoff -a
“`
執(zhí)行該命令后,系統(tǒng)將停止使用swap。但是該命令只是臨時禁用swap,重啟系統(tǒng)后會重新啟用swap,如果需要永久禁用swap,需要進行下一步操作。
三、永久禁用swap
在Linux系統(tǒng)中,可以通過修改/etc/fstab文件來永久禁用swap的使用。修改/etc/fstab文件前,需要備份該文件,以便在修改失敗時可以恢復(fù)原文件。備份命令如下:
“`bash
sudo cp /etc/fstab /etc/fstab.bak
“`
備份完成后,可以修改/etc/fstab文件,將與swap相關(guān)的一行注釋掉或刪除掉。打開/etc/fstab文件,將其中包含swap的一行注釋掉或刪除掉,修改完成后,保存并退出。
注釋掉swap相關(guān)的一行的示例:
“`bash
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx none swap sw 0 0
“`
注釋掉后的示例:
“`bash
# UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx none swap sw 0 0
“`
刪除swap相關(guān)的一行的示例:
“`bash
/dev/mapper/centos-swap swap swap defaults 0 0
“`
刪除后的示例:
“`bash
# /dev/mapper/centos-swap swap swap defaults 0 0
“`
修改完成后,執(zhí)行以下命令來重新掛載/etc/fstab文件:
“`bash
sudo mount -a
“`
這樣就完成了在Linux系統(tǒng)中關(guān)閉swap使用的操作。
四、啟用swap
如果需要再次啟用swap,可以通過以下命令來重新掛載swap分區(qū):
“`bash
sudo swapon -a
“`
執(zhí)行該命令后,swap分區(qū)將重新掛載并開始使用。
本文介紹了在Linux系統(tǒng)中關(guān)閉swap使用的方法,包括查看系統(tǒng)的swap使用情況、臨時禁用swap、永久禁用swap以及重新啟用swap。在實際使用中,我們可以根據(jù)具體情況選擇不同的方法來管理swap。
相關(guān)問題拓展閱讀:
- Linux下swap耗盡該怎么辦?如何釋放swap
- Linux下swap耗盡該怎么辦?如何釋放swap
Linux下swap耗盡該怎么辦?如何釋放swap
Linux下交換內(nèi)存耗盡如何查看及如何處理。以及查看shell腳本描述。交換內(nèi)存不足時,啟動應(yīng)用時會報內(nèi)存不足。
1、啟動神亂應(yīng)用時報內(nèi)存不足,直接Linux命令行top查看下。swap used100%,0free。
2、reboot服務(wù)器能有效的釋放swap,可是很多情況下是不能重啟服務(wù)器的。這時就要弄明白是什么占著內(nèi)存。查看下/proc目錄下內(nèi)容,發(fā)現(xiàn)很多數(shù)字命名的目錄,這些就是Linux的進程了。
3、要讓進程釋放swap的方法只有kill掉該進程了。寫個腳本來查看具體是哪些進程占著內(nèi)存啦。瞎瞎檔
一、對/proc目錄下所有以數(shù)字為名的目錄進行遍歷
二、1目錄是根進程重啟會導(dǎo)致系統(tǒng)重啟,所以直接排除掉。
三、算出每個進程占用內(nèi)存的大小,然后按照大小排序
四、磨亂輸出內(nèi)存占用大于1MB的進程
4、將運行結(jié)果保存到swap.log文件中
5、查看swap.log.10325這個進程內(nèi)存占用最多有130幾M。
6、直接kill掉,然后再top查看。ok,swap一下子釋放了很多,搞定。
注意事項:proc目錄下1目錄不能直接kill掉。
先逗源重啟 然后再慢慢跟蹤下內(nèi)存使用情況 如果早指判有問題的進程可以看下是否陸改kill還是優(yōu)化 最后再決定是否升級
Linux下swap耗盡該怎么辦?如何釋放swap
Linux下swap耗盡該怎么辦?如何釋放swap
swap的作用可簡單描述知老為:
當(dāng)內(nèi)存不夠用時,將存儲器中的數(shù)據(jù)塊從DRAM移到swap的磁盤空間中,以釋放更多的空間給當(dāng)前進程使用.
當(dāng)再次需要那些數(shù)據(jù)時跡猛帆,就可以將姿雹swap磁盤中的數(shù)據(jù)重新移到內(nèi)存,而將那些不用的數(shù)據(jù)塊從內(nèi)存移到swap中.
2)數(shù)據(jù)從內(nèi)存移動交換區(qū)的行為被稱為頁面調(diào)用,發(fā)生在后臺的頁面調(diào)用沒有來自應(yīng)用程序的干涉.
3)swap空間是分頁的,每一頁的大小和內(nèi)存頁的大小一樣.
4)并不是一定要給每個系統(tǒng)劃分SWAP,比如大多數(shù)的嵌入式就沒有swap.
首先我們需洞扮凳要使用
sync
指令,將所有未寫的系統(tǒng)緩沖區(qū)寫到磁盤中,包含已修改的 i-node、已延遲的塊 I/O 和讀寫映射文件。否則在釋放緩存的過程中,可能會丟失未保存的文件。
#sync
接下來,我們需要將需要的參數(shù)寫進/proc/sys/vm/drop_caches文件中,比如我們需要釋放所有緩存,就輸入下面的命令:
#echo 3 > /proc/sys/vm/drop_caches
此指令輸入后會立即生效,可以查詢現(xiàn)在的可用內(nèi)存納旅明顯的變多了。
要查詢當(dāng)缺液前緩存釋放的參數(shù),可以輸入下面的指令:
#cat /proc/sys/vm/drop_caches
關(guān)于linux 關(guān)閉swap使用的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
創(chuàng)新互聯(lián)服務(wù)器托管擁有成都T3+級標(biāo)準機房資源,具備完善的安防設(shè)施、三線及BGP網(wǎng)絡(luò)接入帶寬達10T,機柜接入千兆交換機,能夠有效保證服務(wù)器托管業(yè)務(wù)安全、可靠、穩(wěn)定、高效運行;創(chuàng)新互聯(lián)專注于成都服務(wù)器托管租用十余年,得到成都等地區(qū)行業(yè)客戶的一致認可。
分享標(biāo)題:Linux下如何關(guān)閉swap使用?(linux關(guān)閉swap使用)
新聞來源:http://www.dlmjj.cn/article/djicepe.html


咨詢
建站咨詢
