Linux vm.min_free_kbytes内核参数使用及说明

 更新时间:2026年01月30日 09:06:37   作者:xbglinux  
vm.min_free_kbytes是Linux内核的一个可调参数,用于保留一定量的空闲内存,以确保系统稳定运行,通过调整该参数,可以观察到系统内存使用情况的变化

1 简介

vm.min_free_kbytes是用于 linux 内核的 vm.min_free_kbytes sysctl 可调参数。

2 vm.min_free_kbytes如何工作

  • 系统需要内存分配以确保系统本身的正常运行。
  • 如果内核允许分配所有内存,则在需要内存进行常规操作以保持操作系统平稳运行时,它可能会遇到困难。
  • 这就是内核提供可调vm.min_free_kbytes 的原因。
  • 该可调参数将强制内核的内存管理器保留至少 X 量的空闲内存。

这是来自linux内核文档的官方定义:

  • 这用于强制 Linux VM 保持最小数量的可用千字节。
  • VM 使用这个数字来计算系统中每个lowmem 区域的 watermark[WMARK_MIN] 值。
  • 每个 lowmem 区域都会根据其大小按比例获得一些保留的空闲页面。
  • 满足 PF_MEMALLOC 分配需要一些最小的内存量;如果您将其设置为低于1024KB,您的系统将被巧妙地破坏,并且在高负载下容易死锁。
  • 设置得太高会立即 OOM 你的机器。

3 vm.min_free_kbytes验证

创建了一台约分配7G-8G左右内存的虚拟机,系统版本使用统信操作系统V20 1020A。

  • 首先用free命令查看内存使用情况:

查看上面的附图可以得到总内存在约7.9G。使用了532MB,6.9G内存可用,491MB用于缓冲区高速缓存。并且有7.1G的内存可用。

  • 看一下vm.min_free_kbytes默认值:

  • 调整vm.min_free_kbytes值,看看对系统内存有什么影响:

  • 可以看到参数值修改成约1.5GB,已经生效,使用free命令查看一下:

参数值修改不会更改可用内存和缓冲区高速缓存,但是显示为可用内存量从7182MB减少到4985MB 。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Linux 服务器安全配置

    Linux 服务器安全配置

    Linux 服务器安全配置,需要的朋友可以参考下
    2012-03-03
  • Apache No space left on device的解决办法

    Apache No space left on device的解决办法

    [Fri Aug 15 10:54:31 2008] [emerg] (28)No space left on device: Couldn't create accept lockdf一下发现不是磁盘空间的问题。Google了一下就找到了解决方案,原来是系统的信号量(?)不够用了。
    2008-08-08
  • CentOS 7配置LNMP开发环境及配置文件管理详解

    CentOS 7配置LNMP开发环境及配置文件管理详解

    本篇文章主要介绍了CentOS 7配置LNMP开发环境及配置文件管理,详细的介绍了MySQL 5.6,PHP 5.6,Nginx的安装与配置,有兴趣的可以了解一下。
    2017-01-01
  • 搭建阿里云ecs服务器之安装图形化界面的方法

    搭建阿里云ecs服务器之安装图形化界面的方法

    这篇文章主要介绍了搭建阿里云ecs服务器之安装图形化界面的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • 关于opensips用户认证配置文件 opensips.cfg 使用介绍

    关于opensips用户认证配置文件 opensips.cfg 使用介绍

    本篇文章小编为大家介绍,关于opensips用户认证配置文件opensips.cfg使用介绍。需要的朋友参考下
    2013-04-04
  • linux下ceph分布式安装使用教程

    linux下ceph分布式安装使用教程

    大家好,本篇文章主要讲的是linux下ceph分布式安装使用教程,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2021-11-11
  • 详解SSH如何配置key免密码登录

    详解SSH如何配置key免密码登录

    这篇文章主要介绍了详解SSH如何配置key免密码登录的相关资料,文中介绍的非常详细,对大家的学习或者工作具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-03-03
  • yum安装wget命令使用方式

    yum安装wget命令使用方式

    Wget是一个从网络自动下载文件的工具,支持HTTP、HTTPS、FTP,并可使用HTTP代理,在虚拟机中发现wget命令不存在,通过yum安装wget后,系统自动完成安装并提示用户,Yum是一个基于RPM的软件包管理器,能够自动下载、安装并处理依赖项,支持安装、删除和更新软件包,命令简洁易用
    2025-09-09
  • VMWare中CentOS ifcfg-eth0配置方法(亲测直接可用)

    VMWare中CentOS ifcfg-eth0配置方法(亲测直接可用)

    本篇文章主要介绍了VMWare中CentOS ifcfg-eth0配置,这些配置是基于VMware Network Adapter VMnet8,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-03-03
  • linux中grub启动引导程序的加密介绍

    linux中grub启动引导程序的加密介绍

    大家好,本篇文章主要讲的是linux中grub启动引导程序的加密介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12

最新评论