25.5. 使用单元文件配置内存资源控制设置


每个持久性单元都由 systemd 系统和服务管理器监管,并在 /usr/lib/systemd/system/ 目录中有一个单元配置文件。要更改永久单元的资源控制设置,请在文本编辑器中手动或从命令行修改其单元配置文件。

手动修改单元文件是为进程组设置限制、优先级或控制对硬件资源的访问的一种方式。

流程

  1. 要限制服务的内存用量,请修改 /usr/lib/systemd/system/example.service 文件,如下所示:

    …​
    [Service]
    MemoryMax=1500K
    …​
    Copy to Clipboard Toggle word wrap

    此配置对控制组中执行的进程的最大内存消耗限制,example.service 是该控制组中的一部分。

    注意

    使用后缀 K、M、G 或 T 将 Kilobyte、Megabyte、Gigabyte 或 Terabyte 识别为一个测量单位。

  2. 重新载入所有单元配置文件:

    # systemctl daemon-reload
    Copy to Clipboard Toggle word wrap
  3. 重启服务:

    # systemctl restart example.service
    Copy to Clipboard Toggle word wrap
  4. 重启系统。

验证

  1. 检查更改是否生效:

    # cat /sys/fs/cgroup/memory/system.slice/example.service/memory.limit_in_bytes
    1536000
    Copy to Clipboard Toggle word wrap

    内存消耗限制为大约 1,500 KB。

    注意

    memory.limit_in_bytes 文件将内存限制存储为 4096 字节的倍数 - 一个内核页面大小,专用于 AMD64 和 Intel 64。实际的字节数量取决于 CPU 构架。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部