swap是什么?

Swap:交换分区

类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。

当用户提交程序,然后产生进程,在机器上运行。机器会判断当前物理内存是否还有空闲允许进程调入内存运行,如果有那么则直接调入内存进行运行;如果没有,那么会根据优先级选择一个进程挂起,把该进程交换到swap中等待,然后把新的进程调入到内存中运行。根据这种换入和换出,实现了内存的循环利用,让用户感觉不到内存的限制。从这也可以看出swap扮演了一个非常重要的角色,就是暂存被换出的进程。

1、首先扩展一个虚拟内存(交换分区)

1.1 查看swap分区是否启

cat /proc/swaps

没有启动swap时,是长这样的

1.2 创建8G大小的swap

dd if=/dev/zero of=/data/swap bs=1M count=8192

将/dev/zero内容写入/data/swap,读写块大小1024bytes ,块个数8192。

/dev/zero是个未使用的文件模版,可以用它来创建“干净”的文件。后两个参数可以控制文件大小。

如果根目录下没有data文件夹,则要先去创建,否则会提示:"dd: 打开'/data/swap' 失败: 没有那个文件或目录"

mkdir -p /data

 2、将上面新建出的文件做成swap分区

mkswap /data/swap

如果出现该提示:"mkswap: /data/swap:不安全的权限 0644,建议使用 0600",则设置该文件的权限为0600即可

chmod 0600 /data/swap

3、激活启用分区

swapon /data/swap

 4、查看状态

swapon -s

5、设置自动挂载交换分区

echo "/data/swap swap swap defaults 0 0" >> /etc/fstab

将 /data/swap swap swap defaults 0 0 写入文件 /etc/fstab

 6、启用系统交换分区的配置

swappiness的值的大小对如何使用swap分区是有着很大的联系的。swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。linux的基本默认设置为60。也就是说,你的内存在使用到100-60=40%的时候,就开始出现有交换分区的使用。大家知道,内存的速度会比磁盘快很多,这样子会加大系统io,同时造的成大量页的换进换出,严重影响系统的性能,所以我们在操作系统层面,要尽可能使用内存,对该参数进行调整。

6.1 查看当前配置

cat /proc/sys/vm/swappiness

6.2 临时调整

sysctl vm.swappiness=60

6.3 若想永久修改,则编辑/etc/sysctl.conf文件,该文件中有vm.swappiness的变量配置,默认为0

6.31 编辑配置文件

vim /etc/sysctl.conf

6.32 追加或修改

vm.swappiness=60

6.33 启用配置

sysctl -p

7、查看swap分区是否启动

cat /proc/swaps

8、查看linux内存使用情况,会多显示一行Swap,可用内存8162M

free -m

拓展

删除交换分区

1、停止交换分区

swapoff /data/swap

2、删除/etc/fstab文件中的自动挂载

vim /etc/fstab

把这行删除 /data/swap swap swap defaults 0 0

3、删除分区文件

rm /data/swap

linux 创建 swap分区相关推荐

  1. linux创建swap分区

    在装完Linux系统之后,建立Swap分区有两种方法. 1.新建磁盘分区作为swap分区 2.用文件作为swap分区 (操作更简单,我更常用) 下面介绍这两种方法:(都必须用root权限,操作过程应该 ...

  2. 在不重装系统的情况下创建Linux的Swap分区

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/wy_bk/article/detail ...

  3. linux增加swap分区大小

      linux增加swap分区大小 2016-08-2 13:54:58 分类: LINUX 懂得Linux的都知道,标准的Linux安装,SWAP分区是内存的两倍大小,如果增加了内存条,那SWAP分 ...

  4. Linux设置swap分区为128g,linux增加swap空间的方法小结

    linux增加swap空间的方法小结 我的系统是Ubuntu 18.04. Linux下swap空间大小通常在安装系统时设置swap分区时预设的,不过系统提供了添加或改动swap分区的命令. 涉及的命 ...

  5. linux的SWAP分区

    linux的SWAP分区 from net 汇总网络信息,并进行测试验证,感谢网络. Linux SWAP 深度解读 https://blog.csdn.net/wh8_2011/article/de ...

  6. 【海思篇】【Hi3516DV300】十七、创建swap分区

    目的:创建swap分区 默认关闭 Swap的total是0,所以hi3516dv300默认是没有swap分区: ~ # freetotal used free shared buffers cache ...

  7. 保姆级swap分区详解!手把手带你创建swap分区(两种方式,建议收藏)涉及fdisk、gdisk、df、parted、partprobe、mkswap、swapon、free、dd、od等命令

    Swap分区的详解 && 创建 什么是swap分区? 方法一:使用物理分区创建Swap分区 1. 利用fdisk / gdisk在磁盘上划出一个分区 1.1 lsblk -- 查看本机 ...

  8. swap分区详解(创建swap分区,启用swap交换空间,关闭swap交换空间)

    文章目录 swap分区 什么是swap分区 swap分区使用情况查看工具 free 案例 swapon 创建swap分区过程 swap分区 什么是swap分区 swap分区是指在Linux操作系统中为 ...

  9. Linux设置swap分区

    1.Ubuntu设置swap分区 查看swap位置 cat /proc/swaps 得到你的swap文件的位置,但不一定叫swap,或许叫/dev/sdb5. 关闭并删除较小的swap文件 sudo ...

  10. linux修改swap分区大小2GB,Linux下修改Swap分区大小

    据了解Linux下可以有两种方法创建交换空间,一种是创建交换分区,另一种是创建交换文件.本文记录的是创建交换文件的方法,因为我用的是这种方法.. 添加交换文件步骤: 1.找个地方创建一个.swap的文 ...

最新文章

  1. 波士顿房价数据可视化
  2. c语言函数的可选性自变量
  3. jQuery11 data() : 数据缓存
  4. 基于TCP协议的socket通信
  5. windows ios android的架构_什么便签备忘录软件横跨Windows、iOS和Android - 学显
  6. 锻造完美U盘小偷:活用消息机制
  7. Scrapy爬取hupu论坛标题统计数量并生成wordcloud
  8. c语言中运用空语句的延时函数,【转载】单片机C语言中_nop_函数的使用及C语言的延时计算...
  9. ETF最神秘的地带:清算交收(背景知识篇)
  10. HDU 2567 寻梦
  11. 只会画火柴人?手残怎样开始学画画?
  12. 年薪 170 万阿里 P8 程序员征婚上热搜,程序员婚恋观大曝光!
  13. 约瑟夫问题(c语言)
  14. sql injection violation, syntax error: ERROR
  15. docx poi 原理_POI读取.doc 和.docx的区别
  16. STM32F10xxx20xxx21xxxL1xxxx Cortex-M3程序设计手册 阅读笔记二(4):Cortex-M3处理器错误处理
  17. 庆祝JavaCard技术领导SmartCard技术超过五年
  18. python 生成payload_通过Python实现Payload分离免杀过程详解
  19. TFTP协议详细分析
  20. 【设计模式】Java设计模式 - 享元模式

热门文章

  1. 关于javaBean运行后出现Name was not previously introduced as per JSP.5.3的解决方法
  2. 微软经典面试题(数字翻译为中文)
  3. BS版的U8物料查询系统
  4. oracle怎么绑定vue,Oracle AutoVue 安装与配置教程,oracleautovue
  5. 01炼数成金TensorFlow基本概念
  6. Katalon Recorder安装及使用
  7. python批量下载bilibili视频_python批量提取哔哩哔哩bilibili视频
  8. python 输出结果图文混排_Django图文混排
  9. 普通二本从小白到加入鹅厂的通关秘籍
  10. 【论文精读】Robust Alignment for Panoramic Stitching Via an Exact Rank Constraint