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

2023-10-18

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

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

本文介绍了在 CentOS 8 系统上添加交换文件的步骤。

创建并激活交换文件#

以 root 或用户身份执行以下步骤须藤权限在 CentOS 8 系统上添加交换空间。

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

    sudo fallocate -l 1G /swapfile

    在此示例中,我们创建一个大小为 1G 的交换文件。如果您需要更多交换,请更换1G与所需的尺寸。

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

    sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
  2. 设置文件权限这样只有 root 用户才能读写交换文件:

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

    sudo mkswap /swapfile
    Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
    no label, UUID=0abdb8ba-57d6-4435-8fd8-5db9fc705045
  4. 通过执行以下命令激活交换:

    sudo swapon /swapfile
  5. 使用以下任一方法验证交换是否处于活动状态swapon or the 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
  6. 通过在中添加交换条目使更改永久生效/etc/fstab file:

    sudo nano /etc/fstab

    粘贴以下行:

    /etc/fstab
    /swapfile swap swap defaults 0 0

调整 Swapiness 值#

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

CentOS 8 上的默认 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 8 系统上创建交换文件以及激活和配置交换空间。

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

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

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

  • 如何在批处理文件中获取当前CPU使用率和可用内存?

    我正在创建一个简单的脚本 输出当前登录的用户 当前系统的 CPU 使用率和可用内存 我已经设法让当前用户登录 但是否也可以获得 cpu 使用率和内存 这是我到目前为止的代码 echo off for f tokens 3 delims i
  • 在 JavaScript 中交换两个对象

    我有以下代码 MyObject prototype doIt function var a this obj1 var b this obj2 我怎样才能交换的值这个 obj1 and 这个 obj2所以obj1变成obj2 obj2变成o
  • 虚拟内存的最大大小可以是多少?

    我看到这个问题 虚拟内存 和 交换空间 有什么区别 https stackoverflow com questions 4970421 difference between virtual memory and swap space 这里提
  • 增加 CentOS 上的 Docker 容器存储大小

    我想增加 Docker 容器的磁盘空间 这是 docker info 的输出 Containers 3 Running 3 Paused 0 Stopped 0 Images 4 Server Version 19 03 5 Storage
  • 编译 Lua - 创建 .so 文件?

    我正在 Centos 6 5 上编译 Lua 5 2 3 编译 安装工作正常 但是 我还需要编译另一个程序的开发库 我通常会通过这样做来安装它们 yum install lua devel 问题是安装 Lua 5 1 共享库 而不是 5 2
  • phpMyAdmin + CentOS 6.0 - 禁止

    当我想访问我的 phpMyAdmin 时 我总是收到此消息 w3m localhost phpmyadmin Forbidden You don t have permission to access phpmyadmin on this
  • Errr 'mongo.js:L112 错误:无法连接到位于 src/mongo/shell/mongo.js:L112 的服务器 127.0.0.1:27017'

    我无法连接到MongoDB http en wikipedia org wiki MongoDB 在 Ubuntu 中它可以工作 但我正在工作CentOS http en wikipedia org wiki CentOS现在 这是错误消息
  • 在Linux中使用自定义规则在多个端口上运行的SSH服务[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在努力设置一台在多个端口上运行 SSH 服务的服务器 例如端口 22 和 5522 这些端口应该具有一组不同的规则 即 我们为端口 2
  • 如何对链表进行排序?

    我有一个链接列表 我想按特殊顺序对其进行排序 我尝试使用冒泡排序 由于我的结构 称为 Node 中有许多数据类型 因此我无法交换这些值 struct Node int data Node next Node int x data x nex
  • 通过 Emacs 启动时如何配置 SBCL 以使用更多 RAM?

    如何配置 SBCL 使其在使用 Emacs 中的 M x slime 启动时使用比默认值更多的内存 从我在网上看到的情况来看 答案似乎是调用 SBCL 传递参数 dynamic space size 由于我不直接调用 SBCL 因此我不知道
  • 交换字符串中的字符

    我是 python 新手 我想知道如何交换字符串中的两个字符 我知道字符串是不可变的 所以我需要找到一种方法来创建一个交换字符的新字符串 具体来说 一般方法采用字符串和两个索引 i j 并将 i 上的字符与 j 交换 正如您正确指出的那样
  • 如何从 Spartan 6 写入 Nexys 3 FPGA 板上的 Micron 外部蜂窝 RAM?

    我到处都查过了 数据表 Xilinx 网站 digilent 等等 但什么也没找到 我能够使用 Adept 工具来验证我的蜂窝 RAM 是否正常运行 但我找不到任何库存 VHDL 代码作为控制器来写入数据和从中读取数据 帮助 找到了此链接
  • 在哪里可以找到 PHP 的错误日志文件?

    在哪里可以找到错误日志文件 我需要检查它们以解决安装后显示的内部服务器错误suPHP https wiki archlinux org title SuPHP 您可以使用lsof https en wikipedia org wiki Ls
  • 如何在 Verilog 中推断 Block RAM

    我在一个项目中遇到了一个非常具体的问题 这个问题已经困扰我好几天了 我有以下 RAM 模块的 Verilog 代码 module RAM param clk addr read write clear data in data out pa
  • crontab 作业的 STDOUT 和 STDERR 输出在哪里

    有谁知道 CentOS 中正常 crontab 作业输出的 STDOUT 和 STDERR 在哪里 我检查了 var log cron文件 但它只记录了 cron 作业执行的时间和命令 没有找到 STDOUT 或 STDERR 内容 看看
  • 与右值交换

    假设我想要swap它适用于右值 并且不想为右值 左值引用的所有组合编写 4 个版本 右值 右值版本有点毫无意义 但也无害 我想出了这个 template
  • Composer 已安装,但获取 /usr/bin/env: php: No such file or directory

    在 CentOS 7 上 我安装了 PHP 7 1 然后我安装了作曲家 cd tmp curl sS https getcomposer org installer php71 gt used php71 instead of php ph
  • 如何使用交换函数使字符串数组交换其组件?

    问题是这段代码不会交换这两个字符串 我是编程新手 但我可以看出问题出在交换函数上 但我不知道如何修复它 我尝试在交换中添加 strcpy 而不是 但这没有用 include
  • 如何在R中的2行之间交换多个值

    我有一个大小为 10x100 的矩阵 如何交换前 30 列中第 1 行和第 2 行之间的值 我们可以反转前两行的行索引以及通过采取序列创建的列索引rounded 30 总列数用于交换行中的值 colS lt seq round ncol m
  • 异或交换可以扩展到两个以上的变量吗?

    我一直在尝试将异或交换扩展到两个以上的变量 例如n变量 但我没有得到比这更好的地方3 n 1 对于两个整型变量x1 and x2你可以像这样交换它们 swap x1 x2 x1 x1 x2 x2 x1 x2 x1 x1 x2 所以 假设你有

随机推荐

  • Python – 如何创建嵌套目录结构

    The pathlib模块提供了表示文件系统路径的类 其语义适用于不同的操作系统 我们可以创建嵌套目录结构路径库 Path mkdirPython 中的函数 On Linux from pathlib import Path Path di
  • 如何在 Debian 11/10 上安装 Apache Solr 9.0

    阿帕奇 索尔是一个用Java编写的开源搜索平台 Solr 提供全文搜索 拼写建议 自定义文档排序和排名 片段生成和突出显示 本教程将帮助您在 Debian 11 Debian 10 Buster Debian 9 Stretch 和 Deb
  • Linux 中的 Wget 命令及示例(下载文件)

    The wgetLinux 中的命令是从互联网下载文件的强大工具 它允许您从 URL 下载文件并将其保存到本地文件系统 该命令行实用程序可用于下载单个文件 整个目录甚至整个网站 无论您需要下载文件进行备份 还是在系统之间传输大文件 wget
  • 如何从 Ubuntu Linux 中删除(删除)PPA

    如果您已经使用 Ubuntu 一段时间 您可能熟悉术语 PPA 它代表个人软件包存档 PPA 是安装和更新官方 Ubuntu 存储库中未提供的软件的好方法 但是 有时您可能想要删除 PPA 因为不再需要它或因为它导致问题 在本文中 我们将完
  • 20 个常见的 JavaScript 面试问题和答案

    JavaScript 是世界上最流行的编程语言之一 因此 这也是技术面试中最常被问到的话题之一 无论您是初学者还是经验丰富的开发人员 为 JavaScript 面试问题做好充分准备都很重要 在本文中 我们将讨论 20 个常见的 JavaSc
  • 如何在 Ubuntu 15.10、14.04 和 12.04 上安装 RabbitVCS

    兔子VCS是版本管理系统 SVN 和 Git 的图形客户端 它提供了一个简单且易于使用的图形用户界面 可以说 RabbitVCS 是 TortoiseSVN 的最佳 Linux 替代品 本教程将帮助您在 Ubuntu 15 10 14 04
  • 如何更改 Linux 内核中的 Swappiness 值

    Swappiness 是一个 Linux 内核参数 用于控制交换空闲进程和使用可用 RAM 内存之间的平衡 大多数Linux发行版中的默认交换值是60 这意味着当可用内存低于40 时系统开始交换进程 但是 此默认值可能并不适合所有情况 更改
  • Linux 中的 du 命令及有用示例

    du 是缺少磁盘使用 这意味着 du 命令计算文件在磁盘上使用的大小 它是Linux系统用户经常使用的基本Linux命令 Syntax du OPTION FILE 在本教程中 您将通过有用的示例了解 du 命令在 Linux 中的用法 d
  • 如何在 PHP 中向数组追加项目

    问题 如何在 PHP 中向数组追加项目 如何在 PHP 中将任何元素追加到现有数组的末尾 如何在 PHP 中将元素推送到数组 本教程使用数组推 函数将新元素插入或追加到数组末尾 PHP 将元素追加到数组 以下示例创建一个包含两个元素 如 b
  • 如何在 Ubuntu 18.04 上安装 Yarn

    Yarn 是一个与 npm 兼容的 JavaScript 包管理器 可帮助您自动执行安装 更新 配置和删除 npm 包的过程 它的创建是为了解决 npm 的一系列问题 例如通过并行操作加快软件包安装过程并减少与网络连接相关的错误 在本教程中
  • 如何在 CentOS 7 上安装 Python 3

    本教程将指导您使用 Software Collections SCL 以及发行版默认 Python 版本 2 7 在 CentOS 7 系统上安装 Python 3 我们还将向您展示如何创建 Python 虚拟环境 Python 是世界上最
  • 如何在 Debian 10 Linux 上安装 Vagrant

    Vagrant是一个用于构建和管理虚拟机环境的开源命令行工具 默认情况下 Vagrant 可以在 VirtualBox Hyper V 之上配置计算机 和码头工人 其他提供商如 Libvirt KVM VMware 和 AWS 可以通过 V
  • Linux 中的 Wget 命令及示例

    GNU Wget 是一个用于从网络下载文件的命令行实用程序 使用 Wget 您可以使用 HTTP HTTPS 和 FTP 协议下载文件 Wget 提供了许多选项 允许您下载多个文件 恢复下载 限制带宽 递归下载 后台下载 镜像网站等等 本文
  • 如何在 Ubuntu 20.04 上安装 Odoo 15

    Odoo 是一款流行的开源商业应用程序套件 可帮助公司管理和运营其业务 它包括广泛的应用程序 例如 CRM 电子商务 网站构建器 计费 会计 制造 仓库 项目管理 库存等等 所有这些都无缝集成 Odoo根据使用案例和可用技术 可以以不同的方
  • 如何在 Debian 10 Linux 上安装 Node.js 和 npm

    Node js 是一个基于 Chrome JavaScript 构建的跨平台 JavaScript 运行时环境 旨在在服务器端执行 JavaScript 代码 使用 Node js 您可以构建可扩展的网络应用程序 npm 是 Node js
  • 如何在 Debian 9 上安装 Java

    在本教程中 我们将逐步介绍在 Debian 9 上安装 Java Java 是用于构建不同类型的应用程序和系统的最流行的编程语言之一 用 Java 开发的应用程序具有可扩展性 灵活性和可维护性 有两种不同的 Java 包 Java 运行时环
  • 如何在 Debian 9 上安装和使用 PHP Composer

    Composer是 PHP 的依赖管理器 类似于Node js 的 npm or Python 的点子 Composer 将提取您的项目所依赖的所有必需的 PHP 包并为您管理它们 本教程提供了在 Debian 9 系统上安装 Compos
  • 如何列出 CentOS 上已安装的软件包

    在本教程中 我们将向您展示如何列出和过滤 CentOS 上已安装的软件包 当您需要在另一台计算机上安装相同的软件包或想要重新安装系统时 了解如何列出 CentOS 系统上已安装的软件包会很有帮助 我们还将向您展示如何检查是否安装了特定的软件
  • 如何检查您的 CentOS 版本

    当您第一次登录 CentOS 计算机时 在进行任何工作之前 您可能需要检查系统上运行的 CentOS 版本 在本教程中 我们将展示几个不同的命令 了解如何检查系统上安装的 CentOS 版本 截至撰写本文时 CentOS Linux 拥有三
  • 如何在 CentOS 8 上添加交换空间

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