在Linux中,core dump文件的配置可以通过修改系统参数来进行设置。
首先,需要确认当前系统是否已经开启了coredump功能。
可以使用命令ulimit -c查看当前限制值。如果返回0或者unlimited表示未开启,则需要手动开启。 若结果为0,则运行以下命令将其更改为无限制(unlimited): ulimit -c unlimited
接下来,我们需要指定生成core dump文件时保存到的目录。默认情况下,core dump文件会被保存在与程序相同的路径下。但有些发行版可能不支持此操作,因此建议自定义保存位置。
打开/etc/sysctl.conf文件并添加以下内容: kernel.core_pattern = /path/to/save/directory/%e-%p-%t-core 这里的"/path/to/save/directory/"应该替换为你想要保存core dump文件的目录路径。%e、%p和%t分别表示程序名称、进程ID和日期时间信息。
最后,重新加载sysctl.conf文件以使更改生效: sysctl -p 完成上述步骤后,当程序发生错误导致异常终止时,就会生成对应的core dump文件,并保存在指定的目录中。