交换空间是 RAM 内存已满时使用的硬盘的一部分。交换空间可以是专用交换分区或交换文件。当 Linux 系统耗尽物理内存时,非活动页面将从 RAM 移动到交换空间。Swappiness 是一个 Linux 内核属性,用于设置将页面从物理内存交换到交换空间以及从页面缓存中删除页面之间的平衡。它基本上定义了系统使用交换空间的频率。本文介绍如何更改 Linux 系统上的 swappiness 值。

检查 Swappiness 值

要检查系统上的当前 swappiness 值,请使用以下 cat 命令:

cat /proc/sys/vm/swappiness

大多数 Linux 发行版上的默认 swappiness 值为 60 :

60

虽然 60 的 swappiness 值适合大多数用户,但在某些情况下,您可能需要设置较低的值。

您可以用来确定 swappiness 值的另一个命令是 sysctl :

sysctl vm.swappiness

vm.swappiness = 60

改变 Swappiness 值

Swappiness 可以具有 0 到 100 之间的值。值 0 指示内核积极地避免尽可能长时间地交换。值 100 将积极地将进程交换出物理内存。

较低的值将使内核尽可能避免交换,而较高的值意味着内核将尝试更积极地使用交换空间。

访问交换内存比直接访问物理内存要慢得多。 swappiness 参数的较低值很可能会提高整体系统性能。对于常规桌面安装,建议值为 10 。对于大多数数据库服务器,建议使用 swappiness 值0或1。

最佳 swappiness 值取决于您的系统工作负载和 RAM 内存的大小。您应该以小增量调整此参数以查找最佳值。

例如,要在运行时将 swappiness 值设置为 10 ,请以 root 或 sudo 用户身份键入以下命令:

sudo sysctl vm.swappiness=10

要使 swappiness 参数在重新启动后保持不变,请使用文本编辑器打开文件 /etc/sysctl.conf :

sudo nano /etc/sysctl.conf

找到 vm.swappiness 参数并更改其值。如果此参数不存在,请将以下行附加到该文件 /etc/sysctl.conf 中

vm.swappiness=10

结论

我们已经向您展示了如何更改 swappiness 参数的值。

如何在 Linux 中更改 swappiness的更多相关文章

  1. 如何在Linux中轻松删除源安装的软件包?

    第1步:安装Stow 在这个例子中,我们使用的是CentOS,因此我们需要扩展的EPEL库.您可以使用以下命令安装它们:yum install epel-release然后,下面这段命令:yum in ...

  2. 如何在 Linux 中查看可用的网络接口

    在我们安装完一个 Linux 系统后最为常见的任务便是网络配置了.当然,你可以在安装系统时进行网络接口的配置.但是,对于某些人来说,他们更偏爱在安装完系统后再进行网络的配置或者更改现存的设置.众所周知 ...

  3. 【转】如何在 Linux 中查看可用的网络接口

    原文:https://www.cnblogs.com/qianpangzi/p/10563979.html 查看ubuntu系统当前的可用的网络接口.方法如下 -------------------- ...

  4. 如何在Linux中结合示例使用'cat'和'tac'命令

    上一篇我们讲到了cat的使用示例:https://www.cnblogs.com/WeiLian1024/p/11863057.html 本篇我们将继续延续Cat讲讲Tac 本文是我们讲讲Linux技 ...

  5. 如何在Linux中自动删除或清理/tmp文件夹内容?

    每个Linux系统都有一个名为的目录/tmp,该目录已挂载了单独的文件系统. 它具有称为tmpfs的特殊文件系统.这是一个虚拟文件系统,操作系统将在系统引导时自动挂载/tmp挂载点. 如果要根据应用程 ...

  6. linux 中更改用户权限和用户组的命令chmod,chgrp实例

    linux 中更改用户权限和用户组的命令实例; 增加权限给当前用户 chmod +wx filename chmod -R 777 /upload 用户组 chgrp -R foldname zdz ...

  7. 如何在Linux中查看所有正在运行的进程

    如何在Linux中查看所有正在运行的进程 FROM:http://os.51cto.com/art/201101/244090.htm 进程是一个其中运行着一个或多个线程的地址空间和这些线程所需要的系 ...

  8. 如何在 Linux 中清除缓存(Cache)

              如何在 Linux 中清除缓存(Cache)            方法一: http://mp.weixin.qq.com/s?__biz=MjM5ODAzODgyMQ==&am ...

  9. 如何在 Linux 中查看进程占用的端口号【转】

    对于 Linux 系统管理员来说,清楚某个服务是否正确地绑定或监听某个端口,是至关重要的.如果你需要处理端口相关的问题,这篇文章可能会对你有用. 端口是 Linux 系统上特定进程之间逻辑连接的标识, ...

随机推荐

  1. 创建htpasswd文件在nginx (没有 apache)

    Create htpasswd file for nginx (without apache) APACHE NGINX HTACCESS If you're like me, and use Ngi ...

  2. js 字符截取 汉字2字符 英文1个字符

    function countCharacters(str, num) { var str = '' + str || '', num = +num || 0, res = '', length = 0 ...

  3. vscode——配置go插件

    前言 这个真的折腾死我了,看了N多博客才弄好 这两个还是比较有用的~ https://www.cnblogs.com/nickchou/p/9038114.html https://www.jians ...

  4. C++编译原理

    链接

  5. laravel5.8 编译laravel mix

    如果第一次无需执行(如果编译的时候出错再次执行才需要) 1:rm -rf node_modules 更改镜像为淘宝镜像 2:yarn config set registry https://regis ...

  6. HTTP头部

    10-URI的基本格式以及与URL的区别 HTTP连接的常见流程 从TCP编程上看HTTP请求处理 长连接与短连接 补充一下代理的知识 什么是正向代理,什么是反向代理? 想在外部公网访问公司内部局域网 ...

  7. LightOJ - 1236 - Pairs Forming LCM(唯一分解定理)

    链接: https://vjudge.net/problem/LightOJ-1236 题意: Find the result of the following code: long long pai ...

  8. 汇编知识之EIP寄存器

    eip寄存器存储着我们cpu要读取指令的地址,没有了它,cpu就无法读取下面的指令(通俗点讲cpu就无法执行.每次相应汇编指令执行完相应的eip值就会增加. 因为80386 cpu的寻址范围是4GB. ...

  9. PHP安装mysql.so扩展及相关PHP.ini 配置参数说明

    在PHP中mysql_connect模块已经逐渐被弃用,我在搭建环境时也没有再安装mysql扩展,但是今天在维护一个老项目时,出现报错 Fatal error: Uncaught Error: Cal ...

  10. 计数 luogu 4223 期望逆序对

    https://www.luogu.org/problemnew/show/P4223 期望乘以\(\binom {n}{2}^k\)变成了计数问题 我们考虑每一组数\((A, B)\)产生的贡献CC ...