前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >swap分区介绍

swap分区介绍

作者头像
dogfei
发布2020-07-31 10:23:28
1.9K0
发布2020-07-31 10:23:28
举报
文章被收录于专栏:devops探索devops探索

swap分区也就是交换分区,当物理内存不够用的时候,会将内存中一些暂时不用的数据存放到swap分区中,会加大系统io,同时造的成大量页的换进换出,影响系统的性能,所以在物理内存充足时,我们可以设置尽量不实用交换分区,或者去掉交换分区,当内存空间很小时,例如,只有1G时,则很有必要设置交换分区。

创建swap

创建swap有多种方式,一种是在装系统的时候创建好,一种是创建一个单独的分区用来做swap分区,一种是直接使用dd创建一个swap文件。我们这里使用交换文件的方式,比较简单。

设置交换分区的大小

1

dd if=/dev/zero of=/mnt/swap bs=1M count=1024

1

swapon /mnt/swap

设置开机自动挂载

1 2 3

vim /etc/fstab 增加 /mnt/swap swap swap defaults 0 0

什么情况下使用交换分区

使用交换分区的条件是什么?我们可以通过查看swappiness文件

1 2

$ cat /proc/sys/vm/swappiness 60

很多系统默认都是60,即当内存剩余空间不足60%时,便使用swap,这对于内存很大的系统来说,很不方便,所以我们要修改它的默认值

1

sudo sysctl vm.swappiness=10

但是,这只是临时生效,重启后便又恢复到默认值,我们需要修改配置文件

1 2 3 4

sudo vim /etc/sysctl.conf vm.swappiness=10 sudo sysctl -p

注:

1 2 3 4

swappiness=0:表示只使用物理内存,不使用swap,当物理内存用光时,用OOM kill杀死分值低的进程。 swappiness=1:表示当物理内存用光时,使用swap内存,不杀死相关进程。 swappiness=60:系统默认值。 swappiness=100:表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。

释放swap

1)强制将缓冲区中的数据写入磁盘

1 2

sync #系统会周期性的sync数据到磁盘

2)清除缓存

这一步不是必须的,要根据内存剩余空间来执行,如果剩余空间远大于swap空间,则不需要

1 2 3 4 5 6

清空页缓存 echo 1 > /proc/sys/vm/drop_caches 清空inode和目录树缓存 echo 2 > /proc/sys/vm/drop_caches 清空所有缓存 echo 3 > /proc/sys/vm/drop_caches

3)释放swap

1 2

swapoff -a #需要等待,由swap的大小决定,如果很大,例如16G,则可能要等待十几个小时 swapon -a

查看swap的io占用情况

1 2 3 4 5 6 7

$ vmstat 1 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 0 480336 18652 463836 0 0 42 28 195 368 0 0 99 0 0 0 0 0 480292 18652 463836 0 0 0 0 26 39 0 0 100 0 0 0 0 0 480292 18652 463836 0 0 0 0 29 40 0 0 100 0 0 0 0 0 480292 18652 463836 0 0 0 0 19 34 0 0 100 0 0

si和so分别代表swap的换入换出

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-12-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建swap
  • 什么情况下使用交换分区
  • 释放swap
  • 查看swap的io占用情况
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档