更改是否/etc/security/limits.conf需要重新启动才能生效?
例如,如果我有一个在 中设置以下限制的脚本/etc/security/limits.conf,是否需要重新启动系统才能使这些限制生效?
* hard nofile 94000
* soft nofile 94000
* hard nproc 64000
* soft nproc 64000
Run Code Online (Sandbox Code Playgroud)
Sly*_*lyx 145
不,但您应该关闭所有活动会话窗口。他们仍然记得旧的价值观。换句话说,注销并重新登录。每个远程新会话或本地安全外壳都会使限制更改生效。
Ram*_*Ram 49
如果安装了 prlimit,则将更改直接应用于正在运行的进程(随 util-linux-2.21 一起提供)
prlimit --pid <pid> --<limit>=<soft>:<hard>
Run Code Online (Sandbox Code Playgroud)
例如
prlimit --pid 12345 --nofile=1024:2048
Run Code Online (Sandbox Code Playgroud)
Boo*_*ogy 30
为您当前登录的用户(例如“root”)临时设置打开文件限制:您还可以使用该ulimit命令更改当前 shell 中的值。但是,除非您是 root,否则只能向下调整硬限制。
例子:
# ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 62449
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 1024
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
Run Code Online (Sandbox Code Playgroud)
要更改nofile为94000,您可以执行以下操作:
ulimit -n 94000
Run Code Online (Sandbox Code Playgroud)
Gil*_*il' 21
限制从父进程继承到其子进程。以 root 身份运行的进程可以任意更改限制;其他进程不能增加硬限制。因此,登录进程设置的硬限制会影响会话中的所有进程。
如果您更改/etc/security/limits.conf,这将影响所有新会话以及这些新会话中的进程。它不会影响已经运行的进程,也不会影响已经运行的进程启动的进程。
因此,如果您需要增加某些限制,则必须注销并重新登录,或者启动另一个会话(例如,使用ssh localhost,或在另一个控制台上)。
这些限制将在重新启动后应用。
如果要在不重启的情况下应用更改,请
/etc/pam.d/common-session在文件末尾添加以下行进行修改 :Run Code Online (Sandbox Code Playgroud)session required pam_limits.so
| 归档时间: |
|
| 查看次数: |
368426 次 |
| 最近记录: |