标签: ulimit

sudo 不能给出 ulimit 命令?

当我注意到 sudo ulimit -c 返回未找到命令时,我正在尝试为另一个用户编写解决方案。然后我尝试了这个:

$ sudo ulimit -c
  sudo: ulimit: command not found

$ ulimit -c
0

$ sudo -i
# ulimit -c
0
Run Code Online (Sandbox Code Playgroud)

所以......它从root开始工作,它在没有sudo的情况下工作,但没有sudo。这是一个错误吗?

permissions sudo bug-reporting ulimit

4
推荐指数
1
解决办法
7518
查看次数

打开文件限制不反映配置更改

我正在尝试增加 指示的最大打开文件硬(和软)限制ulimit -Hn。但无论我更改什么配置,4096即使重新启动后它也会保持不变。

在我的 中/etc/security/limits.conf,我有以下条目(其他所有内容都被注释掉):

* soft nofile 10000
* hard nofile 50000
Run Code Online (Sandbox Code Playgroud)

我的/etc/pam.d/common-session样子如下:

session [default=1] pam_permit.so
session requisit    pam_deny.so
session required    pam_permit.so
session optional    pam_umask.so
session required    pam_unix.so 
session required    pam_limits.so
session optional    pam_systemd.so 
session optional    pam_cgfs.so -c freezer,memory,name=systemd
Run Code Online (Sandbox Code Playgroud)

为什么硬限制不更改为50000,即是否有其他机制影响它?

更新:

奇怪的是,当su首先对自己说话时,它的行为有所不同,即

$ whoami && ulimit -Hn
jdoe
4096
$ su - jdoe
$ whoami && ulimit -Hn
jdoe
50000
Run Code Online (Sandbox Code Playgroud)

这怎么可能?

security ulimit

4
推荐指数
1
解决办法
5819
查看次数

Ardour,系统对最大锁定内存量有限制

安装并启动Ardor 后,我收到以下警告消息:

警告:您的系统对最大锁定内存量有限制。这可能会导致 Ardor 在系统内存耗尽之前耗尽内存。

你可以用'ulimit -l'查看内存限制,它通常由/etc/security/limits.conf控制

如何正确配置Ardor以避免出现此消息?

xubuntu ardour ram ulimit

3
推荐指数
1
解决办法
6405
查看次数

如何在 Upstart 脚本中设置自动核心转储?

myapp是最终崩溃的应用程序。我想获得那些崩溃的核心转储......

这是我为实现这一目标而编写的新贵脚本。它还没有工作。

description "myupstart"

start on runlevel [2534]
stop on runlevel [!2534]

script

    ulimit -c 10000
    echo "/var/crash/core.%e.%s.%u.%g.%p.%t" > /proc/sys/kernel/core_pattern

    cd /path/to/app
    ./myapp

end script

respawn
Run Code Online (Sandbox Code Playgroud)

详细信息:
myapp适用于权限下降。它以 root [当然] 开始,然后切换到另一个用户名/组。这是一个问题吗?

如果我手动启动应用程序,以下命令在命令行上工作,但它们在 upstart 脚本中不起作用:

ulimit -c 10000
echo "/var/crash/core.%e.%s.%u.%g.%p.%t" > /proc/sys/kernel/core_pattern
Run Code Online (Sandbox Code Playgroud)

为什么会有这种差异?

upstart kernel gdb ulimit 14.04

3
推荐指数
1
解决办法
3092
查看次数

如何增加 memcached 服务的最大打开文件数

使用 ulimit -ni 可以设置基于每个 shell 的最大打开文件限制

为了使这个值持久化,我可以在 /etc/security/limits.conf 中编辑它并重新启动 ubuntu 12.10 框,这是配置

*               soft    nofile          10240
*               hard    nofile          10240
root            soft    nofile          10240
root            hard    nofile          10240
Run Code Online (Sandbox Code Playgroud)

但上述值并未应用于 memcached 服务,如何将“最大打开文件数 10240”设置为 memcached 服务。

即使在设置limits.conf之后,memcached仍然显示

xx@xx:~$ ps aux|grep mem
mysql     2044  0.0  0.0 327436  1260 ?        Sl   17:09   0:00 /usr/bin/memcached -vv -m 256 -p 11211 -u mysql -l 0.0.0.0

xx@xx:~$ cat /proc/2044/limits
Limit                     Soft Limit           Hard Limit           Units
Max cpu time              unlimited            unlimited            seconds
Max file size             unlimited            unlimited            bytes …
Run Code Online (Sandbox Code Playgroud)

pam ulimit

2
推荐指数
1
解决办法
8889
查看次数

我无法在子 shell 上设置 ulimit

我有一个 bash 脚本。该 bash 脚本需要每 5 分钟运行一次,因此我创建了以下代码块:

#!/bin/bash
ulimit -n 600000
ulimit -u 600000
echo -e "This is another bash script to run mybashscript.sh"

# Lets create mycronscript.sh
echo "#!/bin/bash
ulimit -n 600000
ulimit -u 600000
while true; do
sleep 300
bash mybashscript.sh
done" >> mycronscript.sh
bash mycronscript.sh&
Run Code Online (Sandbox Code Playgroud)

每当它在 5 分钟后自行运行时,mybashscript.sh 就无法正常运行,因为未应用 ulimit 设置。我该如何修复它?

command-line bash scripts ulimit resource-limiting

2
推荐指数
1
解决办法
592
查看次数

无法修改ulimit

我在Ubuntu 18.04

尝试通过以下命令修改最大进程数(硬限制),并收到相应的错误:

$ ulimit -H -u 500
bash: ulimit: max user processes: cannot modify limit: Invalid argument
Run Code Online (Sandbox Code Playgroud)

同时 ...

$ ulimit -Hu
46955
Run Code Online (Sandbox Code Playgroud)

知道为什么吗?

process ulimit

1
推荐指数
1
解决办法
1万
查看次数