CentOS 6.10 版(最终版)
GNU gdb (GDB) 红帽企业 Linux (7.2-92.el6)
我的程序崩溃了,并生成了一个核心转储。不幸的是,它试图将它转储到我的主目录中,而我的主目录并没有足够的空间来容纳它:
BFD:警告:core.30906 被截断:预期核心文件大小 >= 155732344832,找到:29430394880。
我需要进行一些设置,以便当我启动我的程序时,任何核心转储都会转到我指定的位置,那里有可用空间。我看过这里,但答案似乎需要 sudo,并适用于所有帐户。我需要一些无需 root 访问即可工作且仅适用于我的帐户的东西。
您可以使用
/sbin/sysctl kernel.core_pattern
无 root 访问权限来查看当前的核心文件命名模式。如果模式不以
/
字符开头,则核心文件将相对于转储核心的程序的当前工作目录创建。因此,如果您的程序位于$HOME/myprogram
,请执行以下操作:现在核心转储应该在所需的位置而不是在 $HOME 中生成。