经过分析发现系统默认的core文件生成路径是/var/logs,但/var/logs目录并非系统自带的,系统初始安装默认自带的是/var/log,最终导致该系统出现core dump后并没能生成core文件,因此如何查询和修改系统默认的core dump文件生产路径呢?
方法如下:一. 查询core dump文件路径:
方法1: # cat /proc/sys/kerne怠珐糙貉孬股茬瘫长凯l/core_pattern。
方法2: # /sbin/sysctl kernel.core_pattern二. 修改core dump文件路径:
方法1:临时修改/proc/sys/kernel/core_pattern文件,但/proc目录本身是动态加载的,每次系统重启都会重新加载,因此这种方法只能作为临时修改。 /proc/sys/kernel/core_pattern 例:echo ‘/var/log/%e.core.%p’ >/proc/sys/kernel/core_pattern
方法2:永久修改:使用sysctl -w name=value命令。 例:/sbin/sysctl -w kernel.core_pattern=/var/log/%e.core.%p为了更详尽的记录core dump当时的系统状态,可通过以下参数来丰富core文件的命名: %% 单个%字符。
在Linux上只要打开core dump文件开关,当程序crash时系统生成相应的core文件。下面是简单的一些步骤: 1.查看当前是否已经打开了此开关 通过命令:ulimit -c 如果输出为 0 ,则代表没有打开。如果为unlimited则已经打开了,就没必要在做打开。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)