Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

2.2. 如何使用内核可调项

可以通过三种方式修改内核可调项:

  1. 使用 sysctl 命令
  2. 通过手动修改 /etc/sysctl.d/ 目录中的配置文件
  3. 通过 shell 与挂载于 /proc/sys的虚拟文件系统交互
注意

并非所有引导时间参数都受 sysfs 子系统的控制,必须在内核命令行上设置一些特定于硬件的选项,本指南的内核参数部分解决了这些选项

2.2.1. 使用 sysctl 命令

sysctl 命令用于列出、读取和设置内核可调项。在临时或永久地列出或读取和设置可调项时,它可以过滤可调项。

  1. 列出变量

    # sysctl -a
  2. 读取变量

    # sysctl kernel.version
    kernel.version = #1 SMP Fri Jan 19 13:19:54 UTC 2018
  3. 临时编写变量

    # sysctl <tunable class>.<tunable>=<value>
  4. 永久编写变量

    # sysctl -w <tunable class>.<tunable>=<value> >> /etc/sysctl.conf

2.2.2. 修改 /etc/sysctl 中的文件.

要覆盖启动时的默认值,您也可以手动填充 /etc/sysctl.d 中的文件。

  1. /etc/sysctl.d中创建一个新文件

    # vim /etc/sysctl.d/99-custom.conf
  2. 包括您想要设置的变量(每行一个),格式如下

    <tunable class>.<tunable> = <value> +
    <tunable class>.<tunable> = <value>
  3. 保存文件
  4. 重启机器以使更改生效

    Execute sysctl -p /etc/sysctl.d/99-custom.conf 以在不重启的情况下应用更改