C114门户论坛百科APPEN| 举报 切换到宽版

亚星游戏官网

 找回密码
 注册

只需一步,快速开始

短信验证,便捷登录

搜索
查看: 1707|回复: 0

Linux系统的core文件 [复制链接]

军衔等级:

亚星游戏官网-yaxin222  新兵

注册:2020-4-17
发表于 2020-9-16 17:09:49 |显示全部楼层
      程序异常推出时,内核会生成一个core文件(是内存映像以及调试信息)。可以通过使用gdb来查看core文件,指示出导致程序出错的代码所在的文件和行数。

1、查看系统中core文件生成的开关是否打开
    1)使用ulimit -c命令可查看core文件的生成开关,若结果为0,则便是关闭了此功能,不会生成core文件。
2、设置core文件生成
    1)使用命令ulimit -c filesize命令
            若ulimit -c unlimited 则标识此core文件的大小不受限制
            若指定filesize,如果生成的信息超过此大小,将会被裁剪,最终生成一个不完整的core文件,在调
            试此core文件时,gdb会提示错误。
    2)但是若想整个系统中生效则在shell里面设置是不行的,方法如下:
       (1)编辑/root/.bash_profile文件,在其中加入ulitmit -S -c unlimited
       (2)source /root/.bash_profile
3、core文件的设置
     1)/proc/sys/kernel/core_uses_pid可以控制core文件的问价名是否添加PID作为扩展,文件的内容为1,

          标识添加PID作为扩展,生成的core文件格式为core.XXXX;为0则表示生成的core文件统一命名为
          core;可通过一下命令修改此文件:
           echo "1" > /proc/sys/kernel/core_uses_pid
     2)core文件的保存位置和文件名格式
         echo "/corefile/core-%e-%p-%t" > core_pattern,可以将core文件统一生成到/corefile目录
          下,产生的文件名为core-命令名-pid-时间戳
           以下是参数列表:
           %p - insert pid into filename 添加pid
           %u - insert current uid into filename 添加当前uid
           %g - insert current gid into filename 添加当前gid
           %s - insert signal that caused the coredump into the filename 添加导致产生core的
                     信号
           %t - insert UNIX time that the coredump occurred into filename 添加core文件生成
             的unix时间
          %h - insert hostname where the coredump happened into filename 添加主机名
           %e - insert coredumping executable name into filename 添加命令名

举报本楼

您需要登录后才可以回帖 登录 | 注册 |

手机版|C114 ( 沪ICP备12002291号-1 )|联系大家 |网站地图  

GMT+8, 2024-9-24 00:31 , Processed in 0.114561 second(s), 15 queries , Gzip On.

Copyright © 1999-2023 C114 All Rights Reserved

Discuz Licensed

回顶部
XML 地图 | Sitemap 地图