1、查看swap分区情况

swap分区就相当于是内存的一个缓冲区,如果内存被占满,可以用swap分区代替内存使用,用来提升Linux系统性能。

如果在实际的服务器上,分配的swap分区不够用了,需要扩大swap分区,我们是可以不重新安装操作系统的,那样很麻烦,swap分区是支持手动扩展的。

一般通过free命令来查看内存的使用情况。

如下图所示:

上图中,前两行是内存的使用情况,说明如下:

  • total :总内存数。
  • used :使用的内存。
  • free :空闲内容。
  • buffers :缓冲。加速硬盘的写入速度。
  • cached :缓存。加速硬盘的读取速度。

swap分区内核直接调用,用户是干预不了的。但是系统会按照系统的实际需求,自动分配bufferscached的大小。

说明:

  • buffers缓冲,指的是当我们把内存中的数据存入硬盘的时候,内核可以把分散的写集中起来,统一优化磁盘的写入,比如可以把多次小的写合并成单次大的写等等。
  • cached缓存,指的是从磁盘读取文件的时候,用来存储一些从硬盘读取的数据。这样,下次访问这些文件数据时,就可以直接从内存中快速获取,而不需要再次访问缓慢的硬盘。

例如:-/+ buffers/cache:125M 862M的意思。

如上图,used的内存使用是192MB,这192MB包括bufferscached的空间和实际使用的内存空间,除去bufferscached的空间,就是125MB左右的真实内存占用空间。而free列则是空闲内存为795MB,实际的空闲内存为795MB加上bufferscached的空间,实际空闲内存为862MB。

2、手动修改swap分区

增加swap分区的前提,还有得有个空白的硬盘空间。(虚拟机添加新硬盘如请看fdisk命令进行手动分区文章中有讲)

(1)查看sdb硬盘分区情况。

如下图所示:

(2)结果是没有任何分区,下面开始进行分区。

如下图所示:

上图执行的是:

  • 创建一个分区(n)。
  • 选择创建主分区(p)。
  • 分区编号为1。
  • 从头开始划分空间。
  • 划分1GB大小的空间。

再次查看sdb分区情况,如下图所示:

此时出现了sdb1分区,但是分区的系统ID编号是83,也就是Linux系统的标准分区。而我们知道swap分区的ID号是82,所以我们需要修改sdb1分区的ID号为82。(fdisk交互指令请看fdisk命令进行手工分区文章中有讲)

(3)修改分区的系统ID号。

如下图所示:

上图的执行操作为:修改分区的系统ID(t);输入分区号,给哪个分区修改,因为我们sdb硬盘上只有一个分区,就默认选择了,如果有多个分区,需要你输入要修改的分区号;最后要把该分区的分区号改为82(swap分区的系统ID号)。

再次查看sdb分区情况,如下图所示:

我们可以看到sdb1的分区变成了swap分区,系统ID号为了82。

(4)最后我们就可以保存退出了。

如下图所示:

注意:最后的提示,并没有需要我们对系统进行重启。

3、格式化swap分区

我们需要把上边的sdb1分区,格式化成swap分区的文件系统,(而不是普通分区用mkfs命令格式化成ext4文件系统)。

swap分区是需要Linux系统内核直接访问的,所以swap分区的格式化命令为mkswap

执行命令:[root@localhost ~]# mkswap /dev/sdb1

结果如下图:

4、使用swap分区

在使用swap分区之前,我们先来执行free命令看看内存的使用情况,命令如下:

发现swap分区还是和之前的大小一样。现在我们还需要通过swapon命令,把sdb1swap分区加载进系统。

执行命令:[root@localhost ~]# swapon /dev/sdb1

再次查看swap分区的情况,变成了1.5GB。

注意:执行:[root@localhost ~]# swapon /dev/sdb1,是临时生效的,如果重启启动系统,还需要再次执行。如果想要永久生效,需要配置下面的自动挂载。

5、配置swap分区开机之后自动挂载

手动分配swap分区的最后一步,就是配置swap分区的自动挂载。

编辑/etc/fstab配置文件。

#设备文件名  挂载点  文件系统  挂载权限选项  备份权限  检查磁盘权限
/dev/sdb1 swap swap defaults 0 0

注意:挂载点不要写成/swapswap分区是单独的分区,单独的文件类型。设备文件名最好写成UUID,最后两个选项要写成00

『学了就忘』Linux文件系统管理 — 62、手动分配swap分区的更多相关文章

  1. 『学了就忘』Linux文件系统管理 — 65、LVM逻辑卷管理介绍

    目录 1.LVM逻辑卷管理的简介 2.LVM逻辑卷管理的原理 3.总结建立LVM分区的步骤 1.LVM逻辑卷管理的简介 LVM是Logical Volume Manager的简称,中文就是逻辑卷管理. ...

  2. 『学了就忘』Linux文件系统管理 — 57、Linux文件系统介绍

    目录 1.了解硬盘结构(了解即可) (1)硬盘的逻辑结构 (2)硬盘接口 2.Linux文件系统介绍 (1)Linux文件系统的特性 (2)Linux常见文件系统 3.整理一下对文件系统的认识 在了解 ...

  3. 『学了就忘』Linux文件系统管理 — 59、使用fdisk命令进行手工分区

    目录 1.手工分区前提 (1)要有一块新的硬盘 (2)在虚拟机中添加一块新硬盘 2.手工分区 (1)查看Linux系统所有硬盘及分区 (2)手工分区:详细步骤 (3)保存手工分区 3.硬盘格式化 4. ...

  4. 『学了就忘』Linux文件系统管理 — 60、Linux中配置自动挂载

    目录 1.自动挂载 2.如何查询系统下每个分区的UUID 3.配置自动挂载 4./etc/fstab文件修复 上一篇文章我们说明了手动分区讲解,对一块新硬盘进行了手动分区和挂载. 但是我们发现重启系统 ...

  5. 『学了就忘』Linux文件系统管理 — 63、磁盘配额介绍

    目录 1.磁盘配额概念 2.磁盘配额条件 3.磁盘配额的相关概念 4.磁盘配额实践规划 1.磁盘配额概念 磁盘配额是限制用户或者用户组在一个分区上可以使用的空间大小和文件个数的限制. 扩展: 管理员可 ...

  6. 『学了就忘』Linux文件系统管理 — 66、通过图形界面进行LVM分区

    目录 1.选择自定义分区 2.分配boot分区 3.创建LVM物理卷 4.生成卷组 5.创建逻辑卷 6.格式化安装 我们先用新安装Linux系统时的图形化界面,来演示一下LVM逻辑卷如何进行分区. 提 ...

  7. 『学了就忘』Linux文件系统管理 — 64、磁盘配额的配置步骤

    目录 1.手工建立一个5GB的分区 2.建立需要做限制的三个用户 3.在分区上开启磁盘配额功能 4.建立磁盘配额的配置文件 5.开始设置用户和组的配额限制 6.启动和关闭配额 7.磁盘配额的查询 8. ...

  8. 『学了就忘』Linux文件系统管理 — 58、常用硬盘管理相关命令

    目录 1.df命令 2.du命令 3.fsck文件系统修复命令 4.显示磁盘状态dumpe2fs 5.查看文件的详细时间 6.判断文件类型 1.df命令 df命令用于统计分区的占用状况. [root@ ...

  9. 『学了就忘』Linux文件系统管理 — 61、使用parted命令进行分区

    目录 1.parted命令介绍 2.parted交互模式 3.建立分区 (1)查看分区 (2)修改成GPT分区表 (3)建立分区 (4)建立文件系统(格式化) (5)调整分区大小 (6)删除分区 1. ...

随机推荐

  1. hdu 2860 Regroup(并查集)

    题意: AP x yA recruit with ability rate x were asked to join company y. (0<=x<2^31, 0<=y<n ...

  2. cf22A Second Order Statistics(STL-UNIQUE的使用)

    题意: N个数,找出第二大的数.如果没有输出-1. 思路: UNIQUE的使用. 代码: int a[105]; int n; int main(){ cin>>n; rep(i,0,n- ...

  3. Kubernetes Deployment 源码分析(二)

    概述startDeploymentController 入口逻辑DeploymentController 对象DeploymentController 类型定义DeploymentController ...

  4. k8s入坑之路(9)k8s网络插件详解

    Flannel: 最成熟.最简单的选择 Calico: 性能好.灵活性最强,目前的企业级主流 Canal: 将Flannel提供的网络层与Calico的网络策略功能集成在一起. Weave: 独有的功 ...

  5. mongodb入门命令-创建表数据(二)

    1.mongodb入门命令 1.1 show databases; 或 show dbs; //查看当前的数据库 > show dbs; admin 0.000GB config 0.000GB ...

  6. 【Python+postman接口自动化测试】(3)什么是接口测试?

    什么是接口测试? 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点.测试的重点是要检查数据的交换.传递和控制管理过程,以及系统间的相互逻辑依 ...

  7. SpringBoot 中发布ApplicationEventPublisher,监听ApplicationEvent 异步操作

    有这么一个业务场景:当用户注册后,发送邮件到其邮箱提示用户进行账号激活,且注册成功的同时需要赠送新人用户体验卡券. 业务有了,那么问题也就来了. What? 问题....问题?我听说你有问题? 来拔刀 ...

  8. MAC安装vue.js

    一.下载node node下载地址:https://nodejs.org/en/download/ 下载后点击安装即可. node -v 检查安装是否成功 二.安装 淘宝镜像 (npm) npm in ...

  9. ES访问遇到sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

    cmd命令cd到jre/bin目录下 输入命令keytool -import -alias 别名 -keystore cacerts -file ‪C://certs//elasticsearch// ...

  10. coding game, 边打游戏边学编程,是一种怎么样的体验?

    前言 hello,大家好,我是bigsai,好久不见,甚是想念! 在日常生活中,很多人喜欢玩游戏,因为游戏中有着对抗博弈.控制的喜悦,用灵魂指法完成一波靓丽的操作. 但实际上,你的按键都是对应代码中一 ...