centos7创建swap交换分区/文件

自然
自然
自然
296
文章
307
评论
2019年10月9日16:27:55 评论 1657字阅读5分31秒

我们知道redhat7/centos7相对于windows而言非常的节省资源,但是,仍然避免不了在资源耗尽的情况下系统奔溃的问题,尤其是在内存耗尽时特别明显。为了解决这一问题,Redhat7/centos7引入了swap机制,swap翻译为交换的意思,交换内存。swap交换内存在物理内存不足时,将一些暂时不用的内容写入到磁盘当中,释放一定的空间供当前程序使用。可以有效的降低系统崩溃的情况。

centos7创建swap交换分区/文件

自然今天就来分享一下如何在系统中创建swap分区/文件、自动挂载swap分区、累加swap分区、swap分区优先级。

swap分区我们可以直接使用硬盘分区,也可以使用文件的形式。这里自然推荐使用硬盘最外道分区,它无疑是硬盘中IO性能最佳的部分。当硬盘已经分配完成不可修改的情况下,我们可以退而求其次,使用swap文件代替分区使用,推荐放在ssd固态硬盘当中。

创建swap分区

我们先来讲一下如何使用硬盘分区制作swap分区,自然哲理以一块全新的硬盘来做介绍。

centos7创建swap交换分区/文件下面自然将在sdb这块硬盘上创建一个2G的分区sdb1,并将它调整为swap所需要的文件系统。

centos7创建swap交换分区/文件分区sdb1已经成功创建,下面我们需要用专门的格式工具mkswap格式化这个分区。

centos7创建swap交换分区/文件

下面我们需要对它进行挂载,使系统可以正常的使用这个swap分区。

centos7创建swap交换分区/文件通过free命令,可以看见swap分区已经成功生效。

linux下有一条铁律,要想保存必须写文件。

下载生效只是暂时的,当我们重启服务器后这些配置都会丢失。下面来设置开机自动挂载swap分区。

vim /etc/fstab在最下面添加一行代码:

centos7创建swap交换分区/文件

最后在英文半角状态下输入:wq保存退出即可。

下载及时服务器重启,在开机的时候系统也会自动挂载这个swap分区。

创建swap交换文件

上面是使用分区的方式创建swap分区,往往很多情况下我们的在安装系统的时候忘记创建swap分区了,然而硬盘已经分配完毕。这时我们只能是退而求其次使用swap文件来代替swap分区。

centos7创建swap交换分区/文件我们先试用df -hT查看硬盘使用情况,选择一个容量相对较大的分区存放swap文件。从图中可以看到/data文件夹这个分区空间很大。那么就在/data下面创建一个一个名为swapfile的swap文件,大小为2G。

centos7创建swap交换分区/文件这里我们使用swapfile文件模拟swap分区,我们同样需要对其进行专门的格式化操作,使其拥有硬盘分区额属性。

centos7创建swap交换分区/文件下面就是挂载操作,swap文件挂载时会提示不安全,推荐使用0644或者0600权限。文件中装入的是内存中的东西,如果不希望被他人看见或者读取,建议配置一下文件权限。

centos7创建swap交换分区/文件最后就是写入fstab表中,让其在开机的时候进行自动挂载。

centos7创建swap交换分区/文件

最后记得保存喔!

累加swap分区

上面我们进行两次swap交换分区的挂载,轻松实现了两个2G的累加,最终效果就显示如下图一般,仅显示总的swap空间。

centos7创建swap交换分区/文件

swap分区的优先级

我们同时挂载了两个swap分区,两个swap分区的性能又不一样,那么我们能否指定先使用哪个,再使用哪个呢?答案是肯定的。我们可以人工来指定两块分区先后使用顺序,以达到最优的工作效率。

首先我们通过cat /proc/swaps命令查看当前swap各个组成部分的信息:

centos7创建swap交换分区/文件

从输出结果,可以看出挂载类型是分区和文件,优先级是2,3

分区的性能一般情况下比文件模拟swap性能更优,我们应该先使用swap分区,当分区不够时再去使用swapfile文件模拟的swap分区。

我们可以在系统开机时,让其自动挂载,我们来修改fstab表。

centos7创建swap交换分区/文件

修改完成后我们使用swapoff -a和swapon -a命令使其生效,然后再次查看当前优先级。

centos7创建swap交换分区/文件

优先级设置完成后,我们来模拟一下一下实际生产中的使用情况。

centos7创建swap交换分区/文件通过模拟实验,我们可以看见内存耗尽的情况下会有限使用优先级高的swap分区。

小结

swap分区在实际生产中的应用非常普遍,如今很多站长使用的VPS、云主机都是1核1G起步的配置,在编译环境时可能会选择mysql5.7、php7+这样的基础环境,编辑过程中经常出现崩溃的现象,这就是典型的内存不足引起的问题。

继续阅读
weinxin
网科文媒
快来关注一下,你想要的这里都有喔!
自然
  • 文本由 发表于 2019年10月9日16:27:55
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
centos7搭建yum仓库/源 Linux

centos7搭建yum仓库/源

我们一般情况下yum源都是用一些公共的yum源服务器,比较常见公共yum服务器的有阿里云、163、搜狐、中科院等。日常生产中自然使用最多的就是阿里云的镜像服务mirrors.aliyun.com,但是...
centos7配置yum源/仓库 Linux

centos7配置yum源/仓库

yum是rpm的一个前端程序,用于解决rpm包之间的以来关系。rpm包安装无法自动安装相关的以来,可能会造成服务错误,yum应运而生,它通过内建的数据库机制存储了rmp包的相关元数据,让你在安装服务是...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: