相关疑难解决方法(0)

ulimit PICKLE:“不允许操作”和“找不到命令”

我正在尝试增加当前用户的最大打开文件数

> ulimit -n
1024
Run Code Online (Sandbox Code Playgroud)

我尝试增加和失败如下

> ulimit -n 4096
bash: ulimit: open files: cannot modify limit: Operation not permitted
Run Code Online (Sandbox Code Playgroud)

所以我做自然的事情并尝试在临时许可下运行,但失败了

> sudo ulimit -n 4096
sudo: ulimit: command not found
Run Code Online (Sandbox Code Playgroud)

问题

  1. 如何增加ulimit?
  2. 为什么会这样?

使用 Fedora 14

bash fedora sudo limit

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

为什么以下方式不会改变核心文件限制大小?

为了解决https://unix.stackexchange.com/a/446428/674 中的问题,我遵循了/sf/answers/1223879891/,但它没有设置核心文件限制大小?

$ sudo sh -c "ulimit -c 1024 && exec su t"

$ ulimit -c
0
Run Code Online (Sandbox Code Playgroud)
  1. 这种方式是暂时只为当前shell更改核心文件限制大小,还是永久更改所有用户或当前用户的所有shell?

  2. 更新:原帖/sf/answers/1223879891/https://unix.stackexchange.com/a/238413/674https://unix.stackexchange.com/a/169035/674都推荐使用 sudo sh -c "ulimit -c 1024 && exec su $LOGNAME". 但是两者ulimit -c 1024exec su $LOGNAME" 只影响由创建的shell sudo,那么命令的目的是什么?exec su $LOGNAME"也没有做任何有意义的事情来利用更改后的限制。


注意:我关注的是为什么上述方法不起作用,尽管还有其他方法可以解决这个问题:

  1. 我应该将使用新限制值的命令放在 sudo 执行的 shell 中

    例如

    $ sudo sh -c "ulimit -c 1024 && sleep 100"
    ^\Quit
    $ ls
    core
    
    Run Code Online (Sandbox Code Playgroud)
  2. 我也可以尝试修改/etc/security/limits.conf …

bash core-dump ulimit

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

标签 统计

bash ×2

core-dump ×1

fedora ×1

limit ×1

sudo ×1

ulimit ×1