主頁 > 知識庫 > Linux系統(tǒng)中swap分區(qū)的設置與增加/刪除

Linux系統(tǒng)中swap分區(qū)的設置與增加/刪除

熱門標簽:撫順地圖標注 如何分析地圖標注 電銷機器人價值 新余高德地圖標注怎么修改 達亞電銷機器人官網(wǎng) 電銷機器人怎么接線路 大連400電話如何申請 高德地圖標注好做嗎 外呼系統(tǒng)坐席費計入會計哪個科目

1. 什么是swap分區(qū)

Swap分區(qū)在系統(tǒng)的物理內(nèi)存不夠用的時候,把物理內(nèi)存中的一部分空間釋放出來,以供當前運行的程序使用。那些被釋放的空間可能來自一些很長時間沒有什么操作的程序,這些被釋放的空間被臨時保存到Swap分區(qū)中,等到那些程序要運行時,再從Swap分區(qū)中恢復保存的數(shù)據(jù)到內(nèi)存中。swap分區(qū)是從磁盤空間劃分而來,有的是單獨使用一個分區(qū),有的是把一個大文件當做swap。

2. 官方關于swap設置

Redhat6.4 官方推薦(我們使用CentOS 6.4)

推薦的系統(tǒng)交換空間

系統(tǒng)中的RAM數(shù)量   建議交換空間      如果允許休眠,建議使用交換空間
⩽2GB               RAM的2倍                 RAM數(shù)量的3倍
> 2GB - 8GB      等于RAM的數(shù)量               RAM的2倍
> 8GB - 64GB        至少4 GB                 RAM的1.5倍
> 64GB              至少4 GB                  不建議休眠

因為有些系統(tǒng)會允許休眠狀態(tài),如果不設置swap會無法啟動,就像windows系統(tǒng)使用休眠設置虛擬內(nèi)存一樣。

Mysql 5.6 和5.7的建議

mysql5.6

是說在物理內(nèi)存足夠的情況下,可以刪除swap,因為系統(tǒng)在有些情況下會及時內(nèi)存夠用使用swap,若使用會因為I/0變高導致mysql故障。Mysql建議刪除。

oracle建議

另外在其它博客中看到下面一個推薦設置,當然我不清楚其怎么得到這個標準的。是否合理也無從考證??梢宰鳛橐粋€參考。
4G以內(nèi)的物理內(nèi)存,SWAP 設置為內(nèi)存的2倍。

4-8G的物理內(nèi)存,SWAP 等于內(nèi)存大小。

8-64G 的物理內(nèi)存,SWAP 設置為8G。

64-256G物理內(nèi)存,SWAP 設置為16G。

當然這么多建議標準,很讓人無所適從,不知道該怎么設置。其實根據(jù)系統(tǒng)實際情況和內(nèi)存的負荷綜合考慮,但是實際情況又是什么樣呢?

個人建議從如下幾個考慮:

  • 物理內(nèi)存空間是否在峰值也可以滿足要求,不滿足建議設置swap防止內(nèi)存溢出導致主機宕機,當然設置不宜過大,占用磁盤空間。
  • 磁盤I/O是否足夠,使用磁盤I/O值過低或者其他業(yè)務要求高,不建議設置swap。由于使用swap需要頻繁寫入磁盤,使用固態(tài)磁盤不建議設置。
  • 服務器安裝的具體的應用,比如Mysql等不推薦設置,可以不設置或者修改參數(shù)swappiness來控制的,默認值為 60意思是說在內(nèi)存使用40%的情況下就使用swap空間,可以將值設置為10 或者設置0,優(yōu)先使用物理內(nèi)存。

3. 如何增加或者刪除swap分區(qū)

1、查看swap空間和使用情況

[root@localhost-zabbix ~]# swapon -s
Filename    Type  Size Used Priority
/dev/dm-1        partition 2097144 0 -1
[root@localhost-zabbix ~]# free -m
    total  used  free  shared buffers  cached
Mem:   1877  565  1311   0  132  188
-/+ buffers/cache:  244  1632
Swap:   2047   0  2047

2、關閉swap

[root@localhost-zabbix ~]# swapoff /dev/dm-1
[root@localhost-zabbix ~]# swapon -s
Filename  Type  Size Used Priority

3、啟用之前關閉分區(qū)

[root@localhost-zabbix ~]# swapon /dev/dm-1
[root@localhost-zabbix ~]# swapon -s
Filename    Type  Size Used Priority
/dev/dm-1        partition 2097144 0 -1

4、縮小Swap分區(qū)

如果是增大Swap分區(qū)大小,那么就需要擴展正在使用的swap分區(qū)的邏輯卷,此處使用lvreduce命令收縮邏輯卷

[root@getlnx14uat ~]# lvreduce -L 8G /dev/mapper/VolGroup00-LogVol01
 WARNING: Reducing active logical volume to 8.00 GB
 THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce LogVol01? [y/n]: y
 Reducing logical volume LogVol01 to 8.00 GB
 Logical volume LogVol01 successfully resized
[root@getlnx14uat ~]# mkswap /dev/mapper/VolGroup00-LogVol01 #格式化
Setting up swapspace version 1, size = 8589930 kB
[root@getlnx14uat ~]# swapon -s
Filename        Type   Size Used Priority
[root@getlnx14uat ~]# swapon /dev/mapper/VolGroup00-LogVol01
[root@getlnx14uat ~]# swapon -s
Filename        Type   Size Used Priority
/dev/mapper/VolGroup00-LogVol01   partition  8388600 0  -1

5、增大swap空間

如果磁盤還有剩余未分配空間可以新分區(qū)swap或者增大之前的swap

如果沒有磁盤未分配,可以新建分區(qū)文件,來增大swap

[root@localhost-zabbix ~]# dd if=/dev/zero of=/home/swap bs=1024 count=1024000
記錄了1024000+0 的讀入
記錄了1024000+0 的寫出
1048576000字節(jié)(1.0 GB)已復制,2.69212 秒,389 MB/秒
[root@localhost-zabbix ~]# df -h
Filesystem        Size Used Avail Use% Mounted on
/dev/mapper/vg_localhostzabbix-lv_root 18G 4.7G 12G 29% /
tmpfs         939M  0 939M 0% /dev/shm
/dev/sda1        485M 33M 427M 8% /boot
[root@localhost-zabbix ~]# mkswap /home/swap
mkswap: /home/swap: warning: don't erase bootbits sectors
  on whole disk. Use -f to force.
Setting up swapspace version 1, size = 1023996 KiB
no label, UUID=74c16b0d-7d88-4384-b41e-b12cc93d4bbf
[root@localhost-zabbix ~]# cd /home/
[root@localhost-zabbix home]# ls
swap
[root@localhost-zabbix home]# mkswap swap 
mkswap: swap: warning: don't erase bootbits sectors
  on whole disk. Use -f to force.
Setting up swapspace version 1, size = 1023996 KiB
no label, UUID=7677912c-b337-4e83-9003-b736dec93d31
[root@localhost-zabbix home]# free -m
    total  used  free  shared buffers  cached
Mem:   1877  1611  265   0  135  1192
-/+ buffers/cache:  283  1593
Swap:   2047   0  2047
[root@localhost-zabbix home]# swapon swap 
[root@localhost-zabbix home]# free -m
    total  used  free  shared buffers  cached
Mem:   1877  1612  265   0  135  1192
-/+ buffers/cache:  284  1592
Swap:   3047   0  3047
[root@localhost-zabbix home]# swapon -s
Filename    Type  Size Used Priority
/dev/dm-1        partition 2097144 0 -1
/home/swap        file  1023992 0 -2

我們可以看到上面是有分區(qū)文件的方式增大了swap空間。但是這里還有個問題就是重啟系統(tǒng)以后swap還是會變回去,這里需要修改/etc/fstab

增加:/home/swap swap swap default 0 0

刪除剛剛增加swap

swapoff /home/swap
rm -rf /home/swap
vi /etc/fstab
/home/swap swap swap default 0 0

是有新的分區(qū)新建swap:

使用fdisk來創(chuàng)建交換分區(qū)(假設 /dev/sdb2 是創(chuàng)建的交換分區(qū))

mkswap /dev/sdb2
swapon /dev/sdb2
vi /etc/fstab
/dev/sdb2 swap swap defaults 0 0

6、修改swappiness

swappiness參數(shù)值說明
vm.swappiness = 0 僅在內(nèi)存不足的情況下--當剩余空閑內(nèi)存低于vm.min_free_kbytes limit時,使用交換空間。 
vm.swappiness = 1 內(nèi)核版本3.5及以上、Red Hat內(nèi)核版本2.6.32-303及以上,進行最少量的交換,而不禁用交換。 
vm.swappiness = 10當系統(tǒng)存在足夠內(nèi)存時,推薦設置為該值以提高性能。 
vm.swappiness = 60默認值
vm.swappiness = 100 內(nèi)核將積極的使用交換空間
# sysctl -a | grep vm.swappiness 查看swappiness
vm.swappiness = 30
# echo 10 > /proc/sys/vm/swappiness 臨時修改
# sysctl -a | grep vm.swappiness
# vm.swappiness = 10
# sysctl -w vm.swappiness=10 臨時修改
vm.swappiness = 10
# cat /proc/sys/vm/swappiness
10
在/etc/sysctl.conf中編輯,增加如下參數(shù)(如果存在的話)
vm.swappiness = 10 永久修改 需要重啟

特別注意:

在不影響業(yè)務和系統(tǒng),物理內(nèi)存足夠情況下,優(yōu)先建議使用最后一種修改swappiness這樣可以保證在優(yōu)先使用物理內(nèi)存而在物理內(nèi)存不足的情況下使用swap防止內(nèi)存溢出。根據(jù)查詢資料建議設置值10

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

標簽:黃石 衡水 遼源 湖南 南通 楊凌 海東 新鄉(xiāng)

巨人網(wǎng)絡通訊聲明:本文標題《Linux系統(tǒng)中swap分區(qū)的設置與增加/刪除》,本文關鍵詞  Linux,系統(tǒng),中,swap,分區(qū),的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux系統(tǒng)中swap分區(qū)的設置與增加/刪除》相關的同類信息!
  • 本頁收集關于Linux系統(tǒng)中swap分區(qū)的設置與增加/刪除的相關信息資訊供網(wǎng)民參考!
  • 推薦文章