最近在培训时接触到了gdb调试,老师演示了使用gdb查看core文件来查找段错误。到自己练习时发现没有core文件产生。在网上搜索后,解决过程如下:

1、临时开启Core,并且设置大小不受限制

1)使用使用ulimit -a命令可查看core文件的生成开关。若结果为0,则表示关闭了此功能,不会生成core文件。

2)使用ulimit -c filesize命令,可以限制core文件的大小。命令行输入ulimit -c unlimited,则core文件的大小不受限制。

2、想要永久生效可以修改系统文件来调整core选项。

查阅设置可以分为两步。第一步为设置core文件的大小。第二步为设置core的文件名和生成的路径。

1)参考网络链接分为两种。在尝试修改时本人全部进行了配置。

⑴修改文件 /etc/security/limits.conf文件。

方式一:切换到root用户下(普通用户下limits.conf为只读文件,无法修改)。命令行输入  vi /etc/security/limits.conf。在文本中添加

*     soft   core unlimited

*     hard  core unlimited

方式二:用命令修改

echo "* soft core unlimited" >> /etc/security/limits.conf

echo "* hard core unlimited" >> /etc/security/limits.conf

⑵修改.bashrc文件

本人尝试了(1)中提到的方法,但是输入ulimit -a 输出结果始终为0。后根据B站的视频,在重启Ubuntu终端后编辑.bashrc 文件:。在文件.bashrc 末尾加入

ulimit -c unlimited

当用户登陆时以及每次打开新的Shell时.bashrc文件都会被读取。

2)设置core文件产生的位置。

core的缺省位置是程序所在目录,可以通过修改/proc/sys/kernel/core_pattern来指定core文件生成位置了名称。

在查看文件core_pattern文件后,发现其指定了一个路径。参考文末的链接后,需要创建一个存放core文件的文件夹,但是本人希望的是在当前目录下生成core文件。

在尝试链接B的操作后,生成了core文件,但是core的文件名没有链接A提到的其它扩展名。于是本人尝试将两个链接提到的命令融合,输入

sudo bash -c "echo core-%e-%p-%t > /proc/sys/kernel/core_pattern "

echo "1" > /proc/sys/kernel/core_uses_pid

但是在开启重启后,发现文件core_pattern变为了原来最开始指定的路径。后来自己在.bashrc文件加入了

sudo bash -c "echo core-%e-%p-%t > /proc/sys/kernel/core_pattern "。

暂时可以做到开启Ubuntu终端能在当前目录下生成core文件。

参考链接:

A:linux:永久打开core文件功能 - 飘飘雪 - 博客园

B:linux下不产生core文件的原因_Small-K的博客-CSDN博客_linux不生成core文件

C:linux core 永久生效,【调试】Core Dump是什么?Linux下如何正确永久开启?_花小烙的博客-CSDN博客

D:linux core文件机制 - 腾讯云开发者社区-腾讯云

linux登陆终端自动打开core文件功能相关推荐

  1. linux打开core文件,[转载]linux下core文件设置与查看

    程序异常推出时,内核会生成一个core文件(是内存映像以及调试信息).可以通过使用gdb来查看core文件,指示出导致程序出错的代码所在的文件和行数. 1.查看系统中core文件生成的开关是否打开 1 ...

  2. linux终端下打开pdf文件

    1.环境:CentOS 7.5.1804 2.需要安装插件:     glib:http://ftp.acc.umu.se/pub/GNOME/sources/glib/     zlib:http: ...

  3. python 使用os模块自动打开本地文件

    import os os.system('path')   #path为文件路径,本目录下可直接写文件名os 为本地模块不需再行安装 运行环境:python3.6 os.system('path')  ...

  4. linux系统中自动生成snap文件_在Linux操作系统下自动生成Makefile的方法

    在Linux操作系统下进行开发,编写Makefile似乎是不可缺少的事情.但是对于一个比较大的工程,编写一个符合规范的Makefile并非易事.而且由于Makefile的各种显式,隐式规则,加之平时并 ...

  5. Linux 下使用 gdb 调试 core 文件

    1.core文件 当程序运行过程中出现段错误(Segmentation Fault),程序将停止运行,由操作系统把程序当前的内存状况存储在一个 core 文件中,即核心转储文件(Coredump Fi ...

  6. 解决idea运行Tomcat项目时网页自动打开test1_Web_exploded文件并且打开其他链接时报错404的问题

    我遇到的问题如下: ①在idea运行一个tomcat项目,网页自动打开的http://localhost:8080/test1_Web_exploded/ 链接: 我发现这个链接显示的是index.j ...

  7. 如何使用linux打开文件,如何使用Linux lsof命令列出打开的文件

    lsof命令背景 命令列表中运行的进程打开的文件,Linux lsof命令列出了有关文件的信息,(lsof命令本身代表"list of open files"),在本文中我将共享一 ...

  8. linux图片什么格式文件怎么打开,解决Linux平台下无法打开jpg文件(提示: “Not a JPEG file: starts with 0x89 0x50”)的方法...

    1.我们经常从网上下载各种jpg图片,有时候某些jpg图片在ubuntu14.04平台下无法显示缩略图,如下图中的vim_logo.jpg. 某些jpg图片在ubuntu14.04平台下无法显示缩略图 ...

  9. Linux 在终端中打开新的终端:gnome-terminal

    原文: gnome-terminal技巧 (1)Ubuntu中在桌面按下ctrl+alt+t即可打开终端,这时候会进入用户的主目录~ (2)在一个终端中输入gnome-terminal打开一个新的终端 ...

最新文章

  1. 宿主机丢失vmnet0和vmnet8网卡
  2. POJ2688状态压缩(可以+DFS剪枝)
  3. Python简单主机批量管理工具
  4. oracle装了客户端怎么登陆账号,分享Oracle 11G Client 客户端安装步骤(图文详解)...
  5. Android基础知识(一)
  6. 台式电脑如何设置开机密码_设置苹果Mac电脑的开机密码-macw资讯
  7. 3-1:类与对象入门——类的引入和类的定义以及访问限定符和封装还有对面向对象的理解
  8. 让IE支持HTML5
  9. 怎么通过$a获取到$b?某豹面试题
  10. 数学_最小二乘法相关
  11. tar -xf_【图】兼具优雅与运动 抢先实拍改款捷豹XF
  12. 多通道波形记录仪自动化计量校准软件NSAT-3070
  13. 万年历php程序含数据库,php之万年历
  14. YY淘宝商品数据库设计(转)
  15. 「Cold Chain 2015国际冷链物流展」
  16. win10计算机拒绝访问,Win10文件访问被拒绝如何解决?
  17. 对两种类型的蘑菇图像进行识别与分类——使用SVM分类器(matlab)
  18. android软件开发之webView.addJavascriptInterface循环渐进【一】
  19. Kylin常见错误及解决方法
  20. 哪个更适合数据分析:R 还是 Python?

热门文章

  1. python中pylint使用方法(pylint代码检查)
  2. vue 父子组件传值小白教程
  3. 【高等数学】张量积、楔积、叉积和外积的区别
  4. 阿里云SLB负载均衡配置(很详细哦)
  5. 解读np.divide()
  6. 高中生如何攻克SAT词汇难关
  7. java scanner 结束输入_Java Scanner语法
  8. 世界上最好的十把军刀!
  9. html绝对路径的写法,绝对路径和相对路径有什么区别?
  10. 【ML】高斯混合模型(GMM)