日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux swap交换分区说明/管理

發(fā)布時(shí)間:2024/4/17 linux 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux swap交换分区说明/管理 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

https://coolnull.com/3699.html

一.SWAP說明
1.1 SWAP概述
當(dāng)系統(tǒng)的物理內(nèi)存不夠用的時(shí)候,就需要將物理內(nèi)存中的一部分空間釋放出來,以供當(dāng)前運(yùn)行的程序使用。那些被釋放的空間可能來自一些很長時(shí)間沒有什么操作的程序,這些被釋放的空間被臨時(shí)保存到Swap空間中,等到那些程序要運(yùn)行時(shí),再從Swap中恢復(fù)保存的數(shù)據(jù)到內(nèi)存中。這樣,系統(tǒng)總是在物理內(nèi)存不夠時(shí),才進(jìn)行Swap交換。這個(gè)是SWAP 交換分區(qū)的作用。 實(shí)際上,我們更關(guān)注的應(yīng)該是SWAP分區(qū)的大小問題。 設(shè)置多大才是最優(yōu)的。

一般來說可以按照如下規(guī)則設(shè)置swap大小:
4G以內(nèi)的物理內(nèi)存,SWAP 設(shè)置為內(nèi)存的2倍。
4-8G的物理內(nèi)存,SWAP 等于內(nèi)存大小。
8-64G 的物理內(nèi)存,SWAP 設(shè)置為8G。
64-256G物理內(nèi)存,SWAP 設(shè)置為16G。

實(shí)際上,系統(tǒng)中交換分區(qū)的大小并不取決于物理內(nèi)存的量,而是取決于系統(tǒng)中內(nèi)存的負(fù)荷,所以在安裝系統(tǒng)時(shí)要根據(jù)具體的業(yè)務(wù)來設(shè)置SWAP的值。

1.2 系統(tǒng)在什么情況下才會(huì)使用SWAP?
實(shí)際上,并不是等所有的物理內(nèi)存都消耗完畢之后,才去使用swap的空間,什么時(shí)候使用是由swappiness 參數(shù)值控制。

[root@rhce ~]# cat /proc/sys/vm/swappiness 60

該值默認(rèn)值是60.
swappiness=0的時(shí)候表示最大限度使用物理內(nèi)存,然后才是 swap空間,
swappiness=100的時(shí)候表示積極的使用swap分區(qū),并且把內(nèi)存上的數(shù)據(jù)及時(shí)的搬運(yùn)到swap空間里面。

1.3 如何修改swappiness參數(shù)?
臨時(shí)修改:

[root@rhce ~]# sysctl vm.swappiness=10 vm.swappiness = 10 [root@rhce ~]# cat /proc/sys/vm/swappiness 10

這里我們的修改已經(jīng)生效,但是如果我們重啟了系統(tǒng),又會(huì)變成60.

永久修改:
在/etc/sysctl.conf文件里添加如下參數(shù),

vm.swappiness=10 echo 'vm.swappiness=10' >>/etc/sysctl.conf

保存,重啟,就生效了。

二.管理SWAP
2.1 查看系統(tǒng)當(dāng)前SWAP空間大小

[root@coolnull ~]# free -m total used free shared buffers cached Mem: 1954 1923 31 0 21 1345 -/+ buffers/cache: 555 1399 Swap: 1999 21 1978

free命令默認(rèn)單位為k, -m 單位為M。 我們這里的swap使用了21M的空間。

2.2 查看SWAP使用情況
假設(shè)我們的系統(tǒng)出現(xiàn)了性能問題,我們通過vmstat命令看到有大量的swap,而我們的物理內(nèi)存又很充足,那么我們可以手工把swap空間釋放出來。讓進(jìn)程去使用物理內(nèi)存,從而提高性能。

[root@coolnull ~]# vmstat 1 5 procs -----------memory---------- ---swap-------io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 22272 32620 22032 1378312 0 0 33 38 0 41 1 2 96 0 0 0 0 22272 32612 22032 1378340 0 0 0 0 902 1627 0 5 95 0 0 0 0 22272 32612 22032 1378340 0 0 0 0 905 1636 1 8 91 0 0 0 0 22272 32612 22032 1378340 0 0 0 32 907 1616 0 6 94 0 0 0 0 22272 32612 22032 1378340 0 0 0 0 924 1651 0 8 92 0 0

?
2.3 驗(yàn)證swap狀態(tài),swapon –s等于cat/proc/swaps

[root@coolnull ~]# swapon -s Filename Type Size Used Priority /dev/sda2 partition 2047992 22272 -1 [root@coolnull ~]# cat /proc/swaps Filename Type Size Used Priority /dev/sda2 partition 2047992 22272 -1

這里/dev/sda2是我們在安裝操作系統(tǒng)時(shí)劃分的磁盤分區(qū)。實(shí)際上,我們也可以使用文件來做為交換分區(qū)。具體后面會(huì)演示。

2.4 關(guān)閉swap交換分區(qū):

[root@coolnull ~]# swapoff/dev/sda2 [root@coolnull ~]# swapon -s Filename Type Size Used Priority

?
2.5 啟用swap分區(qū):

[root@coolnull ~]# swapon /dev/sda2

簡單的說ext分區(qū)是否啟用由mount及umount控制。swap分區(qū)是否啟動(dòng),由swapon及swapoff控制。我們對swap 空間的釋放,也是通過關(guān)閉swap分區(qū),在啟動(dòng)swap 分區(qū)來實(shí)現(xiàn)的。

2.6查看/etc/fstab 文件,swap是否開機(jī)啟動(dòng)在這里配置

[root@coolnull ~]# cat /etc/fstab # # /etc/fstab # Created by anaconda on Wed Aug 15 00:09:26 2012 # # Accessible filesystems, by reference, aremaintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8)and/or blkid(8) for more info # UUID=beea0820-3ac3-4551-9bf0-1b2a462d3ab4 / ext4 defaults 1 1 UUID=e5ec9543-143f-4e3b-b8a7-4fa05b01836a/boot ext4 defaults 1 2 UUID=b256c0bb-9000-456b-b9eb-18239b5df5ddswap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0

?
三. 增加swap空間
3.1 使用文件來作為SWAP 交換分區(qū),這里我們使用文件添加一個(gè)交換區(qū),具體操作如下:
在根目錄下生成一個(gè)文件:swap-file,大小1G:

[root@coolnull u01]# dd if=/dev/zero of=/swap-file bs=1M count=1024 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 5.91518 s, 182MB/s [root@coolnull u01]# cd / [root@coolnull /]# ls bin cgroup etc lib lost+found misc net proc sbin srv sys u01 usr boot dev home lib64 media mnt opt root selinux swap-file tmp u02 var [root@coolnull /]#

?
修改swap-file文件的權(quán)限,聽說是為了增加安全。這里我是不能理解,如果改成只有root可讀寫的話那些非root用戶執(zhí)行的程序怎么辦

# chown root:root /swap-file # chmod 0600 /swap-file

?
將生成的文件格式化成交換分區(qū):

[root@coolnull /]# mkswap /swap-file mkswap: /swap-file: warning: don't erase bootbitssectors onwhole disk. Use -f to force. Setting up swapspace version 1, size = 1048572 KiB no label, UUID=653bbeb5-4abb-4295-b110-5847e073140d 這里沒有分區(qū)的lable,只有一個(gè)UUID。

?
啟動(dòng)swap分區(qū)并查看狀態(tài):

[root@coolnull /]# swapon /swap-file [root@coolnull /]# swapon -s Filename Type Size Used Priority /dev/sda2 partition 2047992 0 -1 /swap-file file 1048568 0 -2

這里我們就看到了2個(gè)swap。

但是這個(gè)只對當(dāng)前有效,如果想下次重啟系統(tǒng)后還繼續(xù)有效,需要將配置寫入到/etc/fstab文件中。
在/etc/fstab文件中添加如下內(nèi)容:

UUID=653bbeb5-4abb-4295-b110-5847e073140d swap swap defaults 0 0 或者: /swap-file swap swap defaults 0 0

?
3.2使用磁盤添加swap
這個(gè)后面添加

四、停用swap交換分區(qū):

[root@coolnull ~]# swapoff /dev/sda2 //如果是文件則swapoff /swap-file [root@coolnull ~]# swapon -s Filename Type Size Used Priority

附錄:
Linux Add a Swap File – Howto
Do We Really Still Need Swap Space?
Knowledge Base:Is swap space really necessary

?

轉(zhuǎn)載于:https://www.cnblogs.com/wangmo/p/9475883.html

總結(jié)

以上是生活随笔為你收集整理的linux swap交换分区说明/管理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。