如何创建Linux的swap交换分区文件的方法步骤

 更新时间:2019年03月04日 10:58:53   作者:驸马叶子  
这篇文章主要介绍了如何创建Linux的swap交换分区文件的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

Swap简介

Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。

如何创建Swap文件

1. 创建一个用于交换的文件

sudo fallocate -l 1G /swapfile

如果faillocate未安装或者您收到错误消息,fallocate failed: Operation not supported则可以使用以下命令创建交换文件:

sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576

2. 设置正确的权限

只有 root 用户才能写入和读取交换文件,要设置正确的权限类型:

sudo chmod 600 /swapfile

3. 设置Linux交换区

使用该 mkswap 实用程序将文件设置为Linux交换区域:

sudo mkswap /swapfile

4. 启用交换

使用以下命令激活交换文件:

sudo swapon /swapfile

要使更改永久打开/etc/fstab文件并附加以下行:

/swapfile swap swap defaults 0 0

5. 验证交换状态

要验证交换是否处于活动状态,我们可以使用swapon或free命令,如下所示:

sudo swapon --show

输出

NAME   TYPE SIZE  USED PRIO
/swapfile file 1024M 507.4M  -1
sudo free -h

输出

       total    used    free   shared buff/cache  available
Mem:      488M    158M     83M    2.3M    246M    217M
Swap:     1.0G    506M    517M

如何调整swappiness

Swappiness是一个Linux内核属性,用于定义系统使用交换空间的频率。Swappiness可以具有0到100之间的值。较低的值将使内核尽可能避免交换,而较高的值将使内核更积极地使用交换空间。

默认的swappiness值为60.您可以通过键入以下命令来检查当前的swappiness值:

cat /proc/sys/vm/swappiness

输出

60

虽然桌面可以使用60的swappiness值,但对于生产服务器,您可能需要设置较低的值。

例如,要将swappiness值设置为10,请键入:

sudo sysctl vm.swappiness=10

要使此参数在重新引导后保持不变,请将以下行附加到该/etc/sysctl.conf文件:

vm.swappiness=10

最佳swappiness值取决于您的系统工作负载以及内存的使用方式。您应该以小增量调整此参数以查找最佳值。

如何删除交换文件

如果出于任何原因要停用并删除交换文件,请按照下列步骤操作:

1. 首先,使用以下命令停用交换:

sudo swapoff -v /swapfile

2. 删除交换文件条目/swapfile swap swap defaults 0 0从/etc/fstab文件。

3. 最后删除实际的swapfile文件:

sudo rm /swapfile

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • shiro会话管理示例代码

    shiro会话管理示例代码

    Shiro提供了完整的企业级会话管理功能,不依赖于底层容器(如web容器tomcat),直接使用Shiro的会话管理可以直接替换如Web容器的会话管理
    2017-09-09
  • 开发环境Ubuntu16安装以后的初始化设置

    开发环境Ubuntu16安装以后的初始化设置

    今天小编就为大家分享一篇关于开发环境ubuntu16安装以后的初始化设置,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • Linux下connect超时处理(总结)

    Linux下connect超时处理(总结)

    这篇文章主要介绍了Linux下connect超时处理(总结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Linux利用inotify和rsync服务实现数据实时同步的原理解析

    Linux利用inotify和rsync服务实现数据实时同步的原理解析

    inotify是系统内核的一个监控服务,属于操作系统内核的一个特有机制,用于监控文件的信息变化,这篇文章主要介绍了Linux利用inotify和rsync服务实现数据实时同步,需要的朋友可以参考下
    2022-10-10
  • ubuntu 安装openssh服务器的教程详解

    ubuntu 安装openssh服务器的教程详解

    这篇文章主要介绍了ubuntu 安装openssh服务器的教程,本文给大家介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下
    2016-10-10
  • Linux下Python脚本自启动与定时任务详解

    Linux下Python脚本自启动与定时任务详解

    这篇文章主要给大家介绍了关于Linux下Python脚本自启动与定时任务的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用python具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
    2017-08-08
  • Centos7如何开启端口的方法示例

    Centos7如何开启端口的方法示例

    这篇文章主要介绍了Centos7如何开启端口的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • Linux后台运行Python程序的几种方法讲解

    Linux后台运行Python程序的几种方法讲解

    今天小编就为大家分享一篇关于Linux后台运行Python程序的几种方法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • 在 Ubuntu 16.04 为 Nginx 服务器安装 LEMP 环境(MariaDB,PHP 7 并支持 HTTP 2.0)

    在 Ubuntu 16.04 为 Nginx 服务器安装 LEMP 环境(MariaDB,PHP 7 并支持 HTTP

    LEMP 是个缩写,代表一组软件包(L:Linux OS,E:Nginx 网络服务器,M:MySQL/MariaDB 数据库和 P:PHP 服务端动态编程语言),它被用来搭建动态的网络应用和网页
    2016-09-09
  • CentOS 7中Nginx日志定时拆分实现过程详解

    CentOS 7中Nginx日志定时拆分实现过程详解

    这篇文章主要介绍了CentOS 7中Nginx日志定时拆分实现过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06

最新评论