網(wǎng)站首頁(yè) 編程語(yǔ)言 正文
在Linux下禁用、添加|修改Swap分區(qū)(虛擬內(nèi)存)教程
swap分區(qū)
linux內(nèi)存通過(guò) virtual memory 虛擬內(nèi)存來(lái)管理整個(gè)內(nèi)存, 虛擬內(nèi)存管理著物理內(nèi)存,也管理著swap交換空間。Linux使用交換空間來(lái)增加主機(jī)可用的虛擬內(nèi)存量。
Swap分區(qū),即交換區(qū),Swap空間的作用可簡(jiǎn)單描述為:當(dāng)系統(tǒng)的物理內(nèi)存不夠用的時(shí)候,就需要將物理內(nèi)存中的一部分空間釋放出來(lái),以供當(dāng)前運(yùn)行的程序使用。那些被釋放的空間可能來(lái)自一些很長(zhǎng)時(shí)間沒(méi)有什么操作的程序,這些被釋放的空間被臨時(shí)保存到Swap空間中,等到那些程序要運(yùn)行時(shí),再?gòu)腟wap中恢復(fù)保存的數(shù)據(jù)到內(nèi)存中。
我們一般所說(shuō)的swap,指的是一個(gè)交換分區(qū)或文件。在Linux上可以使用swapon -s
命令查看當(dāng)前系統(tǒng)上正在使用的交換空間有哪些,以及相關(guān)信息。
從功能上講,交換分區(qū)主要是在內(nèi)存不夠用的時(shí)候,將部分內(nèi)存上的數(shù)據(jù)交換到swap空間上,以便讓系統(tǒng)不會(huì)因內(nèi)存不夠用而導(dǎo)致oom或者更致命的情況出現(xiàn)。
Linux Swap 分區(qū)大小選擇
Linux Swap 分區(qū)大小跟你服務(wù)器本身的物理內(nèi)存大小有關(guān),內(nèi)存越大,設(shè)置的 Swap 分區(qū)也應(yīng)該越大,兩者的關(guān)系如下。
物理內(nèi)存 交換分區(qū)(SWAP)
<= 4g 至少 4G
4~16G 至少 8G
16G~64G 至少 16G
64G~256G 至少 32G
swappiness
/proc/sys/vm/swappiness
這個(gè)文件,可以用來(lái)調(diào)整跟swap相關(guān)的參數(shù)。這個(gè)文件的默認(rèn)值是60,可以的取值范圍是0-100。
這個(gè)文件的值用來(lái)定義內(nèi)核使用swap的積極程度:
- 值越高,內(nèi)核就會(huì)越積極的使用swap;
- 值越低,就會(huì)降低對(duì)swap的使用積極性。
- 如果這個(gè)值為0,那么內(nèi)存在free和file-backed使用的頁(yè)面總量小于高水位標(biāo)記(high water mark)之前,不會(huì)發(fā)生交換。
Linux下禁用swap分區(qū)
- 第一步,關(guān)閉 swap 分區(qū)
關(guān)閉 swap 分區(qū),如果無(wú)法關(guān)閉 Swap 分區(qū),那可能是因?yàn)槲锢韮?nèi)存當(dāng)前用量 + Swap 分區(qū)當(dāng)前用量已經(jīng)超過(guò)了物理內(nèi)存的總大小,我們可以先重啟服務(wù)器,在機(jī)器剛啟動(dòng)的時(shí)候關(guān)閉 Swap 分區(qū)。
執(zhí)行完命令,建議多等一會(huì)~
swapoff -a
- 修改配置文件
修改配置文件,—注釋"/dev/mapper/centos_master-swap swap"一行
vim /etc/fstab
- 確認(rèn)swap已經(jīng)關(guān)閉
檢查 SWAP 狀態(tài), —Swap一行全部為0則為關(guān)閉狀態(tài),若都顯示 0 則表示關(guān)閉成功
[root@dev logs]# free -h
total used free shared buff/cache available
Mem: 15G 5.3G 284M 822M 9G 8.9G
Swap: 0B 0B 0B
[root@dev logs]#
- 調(diào)整 swappiness 參數(shù)
echo 0 > /proc/sys/vm/swappiness # 臨時(shí)生效
永久生效
vim /etc/sysctl.conf
修改 vm.swappiness 的修改為 0
vm.swappiness=0
使配置生效sysctl -p
在Linux下添加|修改Swap分區(qū)
在Linux下添加|修改Swap分區(qū)(虛擬內(nèi)存)教程
參考URL: https://www.liujason.com/old-blog/2832.html
第一步,確認(rèn)是否添加過(guò)swap分區(qū)
為了防止出現(xiàn)任何以外,請(qǐng)先看一下內(nèi)存中是否已經(jīng)有swap:
free -m
一般情況下運(yùn)行命令后會(huì)出現(xiàn)如下的內(nèi)容:
total used free shared buffers cached
Mem: 1840 1614 226 15 36 1340
-/+ buffers/cache: 238 1602
Swap: 0 0 0
如果你看到 Swap 分區(qū)中是0的話,那么就可以接著看第二步
如果不是的話說(shuō)明你已經(jīng)有了swap分區(qū),你可以通過(guò)下面的命令查看swap文件:
# swapon -s
Filename Type Size Used Priority
/swap.img file 4194300 104448 -2
第二步,創(chuàng)建Swap分區(qū)
mkdir /swap
cd /swap
使用dd來(lái)創(chuàng)建一個(gè)空的swap文件(120G 2048*60為例):
dd if=/dev/zero of=/swap/swapfile count=122880 bs=1M
原文鏈接:https://blog.csdn.net/inthat/article/details/107211445
- 上一篇:沒(méi)有了
- 下一篇:沒(méi)有了
相關(guān)推薦
- 2023-03-26 python命令行參數(shù)argparse模塊基本用法詳解_python
- 2023-07-24 uniapp開(kāi)發(fā)小程序端原生導(dǎo)航欄
- 2022-07-19 Python數(shù)據(jù)分析之?Matplotlib?餅圖繪制_python
- 2022-07-09 python如何獲取Prometheus監(jiān)控?cái)?shù)據(jù)_python
- 2022-07-07 C++如何將二叉搜索樹(shù)轉(zhuǎn)換成雙向循環(huán)鏈表(雙指針或數(shù)組)_C 語(yǔ)言
- 2022-10-16 Pytorch?linear?多維輸入的參數(shù)問(wèn)題_python
- 2023-08-01 React 中 {} 的應(yīng)用
- 2022-05-13 深度優(yōu)先搜索之八皇后問(wèn)題
- 欄目分類
-
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過(guò)濾器
- Spring Security概述快速入門(mén)
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡(jiǎn)單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支