RockyLinux设置core dump在当前目录生成

755 阅读1分钟

要在 Rocky Linux 中配置核心转储(core dump)文件在当前目录生成,您需要修改 /proc/sys/kernel/core_pattern 文件的内容。这个文件控制着核心转储文件的命名和存储位置。默认情况下,核心转储可能被配置为存储在系统的特定位置或由 systemd 处理,但您可以修改它以在程序的当前工作目录生成核心转储。

执行以下步骤:

  1. 打开终端: 打开一个终端窗口。

  2. 以 root 权限执行命令: 使用以下命令临时更改核心转储文件的存储位置:

    echo 'core' | sudo tee /proc/sys/kernel/core_pattern
    

    这会将核心转储文件的名称设置为简单的“core”,并在当前工作目录下生成。

  3. 使更改永久生效(可选): 要永久更改核心转储配置,请编辑 /etc/sysctl.conf 文件或在 /etc/sysctl.d/ 目录下创建一个新文件。例如:

    sudo nano /etc/sysctl.conf
    

    然后添加或修改以下行:

    kernel.core_pattern=core
    

    保存并关闭文件,然后运行 sudo sysctl -p 来应用更改。

  4. 确认 ulimit 设置: 确保 ulimit 设置允许核心转储文件被创建。在您的 shell 中运行:

    ulimit -c unlimited
    

    这将允许无限制大小的核心转储文件。

  5. 测试配置(可选): 您可以通过运行一个会产生核心转储的测试程序来验证配置是否正确。核心转储文件应该在程序崩溃时的当前工作目录中生成。

请注意,更改核心转储配置可能会影响系统的安全性和性能。确保您完全理解这些更改的影响,并在必要时咨询系统管理员或专业人士。