如何在 CentOS 7 上添加交换空间

2023-10-23

交换空间是磁盘上的空间,当物理 RAM 内存已满时使用。当 Linux 系统耗尽 RAM 时,非活动页面将从 RAM 移至交换空间。

交换空间可以采用专用交换分区或交换文件的形式。在大多数情况下,当在虚拟机上运行 CentOS 时,不存在交换分区,因此唯一的选择是创建交换文件。

本教程介绍如何在 CentOS 7 系统上添加交换文件。

在你开始之前#

在继续本教程之前,请输入以下命令检查您的 CentOS 安装是否已启用交换:

sudo swapon --show

如果输出为空,则意味着您的系统没有启用交换空间。

否则,如果您看到类似下面的内容,则说明您的计算机上已经启用了交换。

NAME      TYPE      SIZE USED PRIO
/dev/dm-1 partition 1.5G   0B   -1

虽然可能,但在一台计算机上拥有多个交换空间并不常见。

创建交换文件#

您登录时必须拥有的用户须藤权限才能激活交换。在本指南中,我们将添加1G的swap,如果你想添加更多的swap,替换1G与您需要的交换空间的大小。

按照以下步骤在 CentOS 7 系统上添加交换空间。

  1. 首先,创建一个将用作交换空间的文件:

    sudo fallocate -l 1G /swapfile

    If the fallocate您的系统上没有实用程序,或者您收到一条错误消息:fallocate failed: Operation not supported,使用以下命令创建交换文件:

    sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
  2. 通过设置正确的值确保只有 root 用户可以读写交换文件权限 :

    sudo chmod 600 /swapfile
  3. 接下来,在文件上设置 Linux 交换区域:

    sudo mkswap /swapfile
  4. 运行以下命令来激活交换:

    sudo swapon /swapfile

    通过打开/etc/fstab file:

    sudo nano /etc/fstab

    并粘贴以下行:

    /etc/fstab
    /swapfile swap swap defaults 0 0
  5. 使用以下任一方法验证交换是否处于活动状态swapon or the 自由指挥如下所示:

    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

调整 Swapiness 值#

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

CentOS 7 上的默认 swappiness 值为 30。您可以通过键入以下命令来检查当前的 swappiness 值:

cat /proc/sys/vm/swappiness
30

虽然 swappiness 值 30 对于台式机和开发计算机来说是可以的,但对于生产服务器,您可能需要设置一个较低的值。

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

sudo sysctl vm.swappiness=10

要使此参数在重新启动后保持不变,将以下行添加到/etc/sysctl.conf file:

/etc/sysctl.conf
vm.swappiness=10

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

删除交换文件#

要停用并删除交换文件,请按照下列步骤操作:

  1. 首先通过键入以下内容停用交换空间:

    sudo swapoff -v /swapfile
  2. 接下来,删除交换文件条目/swapfile swap swap defaults 0 0来自/etc/fstab file.

  3. 最后,删除实际的交换文件文件rm :

    sudo rm /swapfile

结论#

您已经学习了如何在 CentOS 7 系统上创建交换文件以及激活和配置交换空间。

如果您遇到问题或有反馈,请在下面发表评论。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 CentOS 7 上添加交换空间 的相关文章

随机推荐

  • Python 数学函数(简单示例)

    在本教程中 您将了解 Python 数学函数mathPython 的模块 任何类型的项目都始终需要数学计算 在 Python 中 一些内置数学运算符不需要数学模块 例如加法 减法 乘法 除法 三角函数 正弦 余弦等 对数 指数或阶乘等高级运
  • Bash For 循环范围:简单指南

    在 Bash shell 中 for loop使您能够有效地迭代数字或字符序列 当涉及到定义序列时 范围就发挥了作用 本教程重点介绍 Bash 范围创建强大循环的能力 目录 hide 1 使用大括号 进行范围定义 2 基本数字序列 star
  • 网页设计趋势将持续存在

    第一个网站是纯文本网站 今天很难想象会有这样一个网站 第一个同时提供图片和文字的网站于 1993 年上线 blog hubspot com Lindsay Kolowich 2015 年 3 月 这些年来 网页设计取得了很大的发展和进步 为
  • 如何从 CentOS 7.7-7.0 升级 CentOS 7.8

    最新版本 CentOS 7 8 可供升级 所有 CentOS 7 7 7 6 7 5 7 4 7 3 7 2 7 1 和 7 0 用户都可以将系统升级到最新版本 所有使用 WHM cPanel 运行的用户都不需要执行任何操作 WHM cPa
  • 如何在 CentOS/RHEL 8/7/6 上安装 Angular CLI

    Angular是一个框架 库 资产和实用程序 它跟踪所有组件并定期检查其更新 本教程将帮助您在 CentOS 8 7 6 和 RHEL 8 7 6 Linux 操作系统上安装 Angular CLI 工具 第 1 步 安装 Node js
  • 在 Bash 中检查文件是否为空的 5 种方法

    在 Linux 中 空文件是大小为零字节的文件 这意味着该文件不包含任何数据 并且在文本编辑器中打开时没有任何内容 可以使用 touch 命令创建一个空文件 touch myfile txt 这将在当前目录中创建一个名为 myfile tx
  • 如何在 MySQL 中创建管理员用户

    在 MySQL 中管理数据库通常需要使用特权用户或超级管理员用户 他们拥有读取 写入 更新和管理数据库的所有权限 在 MySQL 中 这通常是 root 用户 但建议创建单独的超级管理员用户以实现更好的安全管理 本文将指导您如何在 MySQ
  • 如何在 Fedora 36/35/34 上安装 TeamViewer

    团队查看器是一款功能强大的远程桌面和文件共享应用程序 适用于大多数操作系统和移动设备 为了将 TeamViewer 的使用商业化 您必须购买许可证 您可以免费使用它 仅供个人使用 Teamviewer 的 RPM 包由官方团队构建 可以安装
  • 如何更改 PHP 会话超时

    作为 Web 开发人员 了解 PHP 会话超时对于构建安全可靠的 Web 应用程序至关重要 PHP 会话是一种跨多个页面存储用户信息的方式 会话超时是指会话在过期之前保持活动状态的持续时间 在本分步指南中 我们将引导您完成更改 PHP 会话
  • 如何在 Ubuntu、Debian 和 LinuxMint 上安装 Python 3.7

    在撰写本文时 Python 3 7 系列的最新稳定版本已可供安装 本文将帮助您在 Ubuntu 和 LinuxMint 操作系统上安装 Python 3 7 9 你可以拜访here阅读有关 Python 版本的更多信息 先决条件 保持软件包
  • 如何在 Ubuntu 16.04、14.04 上安装 Nginx、PHP 7 和 MySQL

    PHP 7 2 的最新主要版本已经发布 在速度和安全性方面进行了大量优化 所以你应该尝试这个版本来进行开发 本教程将帮助您在 Ubuntu 17 10 16 04 和 14 04 LTS 版本上安装 Nginx PHP 7 2 和 MySQ
  • 了解 Terraform 语法和配置文件

    Terraform 由 HashiCorp 开发 是一款因其在基础设施即代码 IaC 方面的强大功能而广为人知的工具 本综合指南旨在让您深入了解 Terraform 语法 特别关注配置文件 了解 Terraform 语法 Terraform
  • Fedora 26 发布,新功能及升级步骤

    Fedora 26 发布 最终的 Fedora 26 已发布于2017 年 7 月 11 日 Fedora 26有各种软件升级 安全补丁 该版本将与 GENOME 3 24 一起发布 您可以从以下位置下载 Fedora 26 预发行版 Be
  • 如何重命名 SQL Server 数据库

    Microsoft SQL Server 为您提供了多种重命名数据库的方法 您可以使用 SQL Server Management Studio 或运行 SQL 查询来重命名数据库 在重命名数据库之前 请记住 它可能会中断使用当前数据库名称
  • 如何使用SCP命令安全传输文件

    SCP 安全复制 是一个命令行实用程序 允许您在两个位置之间安全地复制文件和目录 With scp 您可以复制文件或目录 从本地系统到远程系统 从远程系统到本地系统 在本地系统的两个远程系统之间 当传输数据时scp 文件和密码都经过加密 因
  • 如何在 CentOS 7 上安装 VMware Workstation Player

    VMware是一个成熟稳定的虚拟化解决方案 允许您在一台机器上运行多个独立的操作系统 您可以创建自己的虚拟机并评估许多软件供应商作为虚拟设备分发的软件 这些软件可从VMware 解决方案交流 本教程将指导您完成在 CentOS 7 上安装
  • 如何在 Ubuntu 18.04 上安装 Java

    Java 是世界上最流行的编程语言之一 用于构建不同类型的跨平台应用程序 本教程介绍如何在 Ubuntu 18 04 上安装各种版本的 OpenJDK 以及 Oracle Java 相同的说明适用于 Ubuntu 16 04 和任何基于 U
  • 如何在 Ubuntu 18.04 上安装 Apache Cassandra

    Apache Cassandra 是一个免费的开源 NoSQL 数据库 不存在单点故障 它提供线性可扩展性和高可用性 而不会影响性能 Apache Cassandra 被许多组织使用 包括 Apple NetFlix eBay 和 Easo
  • Linux 中的超时命令

    timeout是一个命令行实用程序 它运行指定的命令 并在给定时间段后终止该命令 如果该命令仍在运行 换句话说 timeout允许您运行有时间限制的命令 这timeout命令是 GNU 核心实用程序包的一部分 几乎所有 Linux 发行版上
  • 如何在 CentOS 7 上添加交换空间

    交换空间是磁盘上的空间 当物理 RAM 内存已满时使用 当 Linux 系统耗尽 RAM 时 非活动页面将从 RAM 移至交换空间 交换空间可以采用专用交换分区或交换文件的形式 在大多数情况下 当在虚拟机上运行 CentOS 时 不存在交换