栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

ulimit -c unlimited设置失败与无法生成core文件

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

ulimit -c unlimited设置失败与无法生成core文件

问题1:
$ ulimit -c unlimited
bash: ulimit: core file size: cannot modify limit: Operation not permitted
$ sudo ulimit -c unlimited
sudo: ulimit: command not found
  1. ulimit -c 修改次数有限,超出限制就会失败
  2. ulimit是一个shell内置的命令像cd ,不是一个独立的进程,sudo以二进制方式运行,但是没有ulimit的二进制方式,所以你运行错误。 应该在一个shell中运行

解决方法:可以打开新终端窗口运行或使用root用户运行

问题2:

设置成功,但是一测试问题又来了,为啥还是无法生成core文件

问题分析:

cat /proc/sys/kernel/core_pattern

如果 内容如下:|/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g – %E

| 说明程序应该处理核心转储,不会将coredump保存到文件中,这样也就不会生成core文件了, 它可能是在别的路径下生成了

如果未以 | 开头,可能core文件生成到内容指定的路径下去了

解决方案:
指定core文件生成目录。注意:重启系统就会还原

root# echo './core.%e.%p.%t' > /proc/sys/kernel/core_pattern

意思是在当前目录下生成 core.程序名.pid.末尾的时间戳 格式名字的core文件

设置ulimit -c unlimited永久生效

切换成root用户

vim /etc/security/limits.conf

添加如图

sudo reboot

注意: 重启后 /proc/sys/kernel/core_pattern 文件被还原

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/944028.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号