AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 648287
Accepted
vastlysuperiorman
vastlysuperiorman
Asked: 2014-12-02 09:02:35 +0800 CST2014-12-02 09:02:35 +0800 CST 2014-12-02 09:02:35 +0800 CST

安全地降低 PID_MAX

  • 772

我在集群中有一台服务器正在经历进程表泄漏。因为这几天负责代码的开发者不可用,所以我在机器上增加了pid_max,如下:

echo 4194303 > /proc/sys/kernel/pid_max

这为我们赢得了时间,直到开发人员能够修复他的应用程序并阻止泄漏。

但是,我现在想让服务器与集群中的其他服务器重新内联。我担心的是 pids 在 300 万范围内的进程。如果我将 pid_max 降低到正常值,表中已经存在的 pid 会发生什么情况?系统需要重启吗?

linux
  • 2 2 个回答
  • 1553 Views

2 个回答

  • Voted
  1. Best Answer
    ewwhite
    2014-12-02T10:59:37+08:002014-12-02T10:59:37+08:00

    什么都不会发生。

    我希望我可以说服务器会爆炸或至少会着火,但不...

    随着 PID 的回收,它们将落入定义的范围内。您应该真正重新启动并使新设置在 sysctl.conf 中保持不变。但除了填充/字段问题之外,拥有更大范围的可用 PID 可能没有害处。

    • 1
  2. c4f4t0r
    2014-12-02T11:02:03+08:002014-12-02T11:02:03+08:00

    为了减少pid_max您需要确定的是,您的系统运行进程较少pid_max

    ps -efL # L in ps list the threads, thread in linux has a pid as normal process
    

    我在我的 linux 工作站中使用了这个:

    ps -efL | wc -l
    307
    sysctl -a | grep pid_max
    kernel.pid_max = 32768
    sysctl kernel.pid_max=2000
    kernel.pid_max = 2000
    sysctl -a | grep pid_max
    kernel.pid_max = 2000
    echo $((2000-307))
    1693  ## there is pids available for new "procs|threads" ## after pid_max reduce
    
    • 1

相关问题

  • Linux 主机到主机迁移

  • 如何在 Linux 机器上找到有关硬件的详细信息?

  • 如何在 Linux 下监控每个进程的网络 I/O 使用情况?

  • 在 RHEL4 上修改 CUPS 中的现有打印机设置

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve