linux基础

linux基础

无法生成core文件

  • chatgpt给的方法:
  1. 编辑 /etc/security/limits.conf 文件: 在文件中添加以下两行来将核心转储文件的限制设置为无限制:
  • soft core unlimited
  • hard core unlimited 确保对该文件的更改能够生效,您可能需要注销并重新登录您的用户会话,或者重新加载配置文件。
  1. 检查 /etc/sysctl.conf 文件及 /etc/sysctl.d/ 目录中的配置: 检查这些文件中是否存在与核心转储文件相关的设置,确保没有将核心转储文件的生成禁用或限制到一个非常小的大小。 您可以使用以下命令来查看文件内容: sudo vim /etc/sysctl.conf ls /etc/sysctl.d/
  2. 修改 /etc/sysctl.conf 文件来设置核心转储文件的保存路径和文件名格式: 使用文本编辑器打开 /etc/sysctl.conf 文件,添加以下行来设置核心转储文件的保存路径和文件名格式: kernel.core_pattern = /var/core/core.%e.%p kernel.core_uses_pid = 1 kernel.core_dump = 1 保存文件并重新加载内核参数配置,以使新的设置生效: sudo sysctl –system
  3. 确保允许生成核心转储文件的限制已经设置为无限制: 使用 ulimit -c unlimited 命令来将允许生成核心转储文件的大小限制设置为无限制。 确保在执行您的程序之前,核心转储文件大小限制已经正确地设置为无限制。
  • 自己发现的方法:
  1. sudo vim ~/.bashrc
  2. 添加上ulimit -c unlimited