Tim*_*Tim 4 bash core-dump ulimit
为了解决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)
这种方式是暂时只为当前shell更改核心文件限制大小,还是永久更改所有用户或当前用户的所有shell?
更新:原帖/sf/answers/1223879891/和https://unix.stackexchange.com/a/238413/674和https://unix.stackexchange.com/a/169035/674都推荐使用 sudo sh -c "ulimit -c 1024 && exec su $LOGNAME". 但是两者ulimit -c 1024和exec su $LOGNAME" 只影响由创建的shell sudo,那么命令的目的是什么?exec su $LOGNAME"也没有做任何有意义的事情来利用更改后的限制。
注意:我关注的是为什么上述方法不起作用,尽管还有其他方法可以解决这个问题:
我应该将使用新限制值的命令放在 sudo 执行的 shell 中
例如
$ sudo sh -c "ulimit -c 1024 && sleep 100"
^\Quit
$ ls
core
Run Code Online (Sandbox Code Playgroud)/etc/security/limits.conf.根据联机帮助页,ulimit“提供对 shell 可用资源和由它启动的进程的控制”。因此该ulimit值对当前 shell 有效。
您ulimit在子shell中调用,当它终止时,您将返回到默认ulimit值。
[root@centos7 ~]# ulimit -c
0
[root@centos7 ~]# ulimit -c 1024
[root@centos7 ~]# ulimit -c
1024
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5983 次 |
| 最近记录: |