在 Ubuntu 15.10 上,我找不到程序转储的核心文件。
ulimit
设置为unlimited
。卸载apport
服务后,/proc/sys/kernel/core_pattern
文件仅包含core
应该core
在失败的可执行文件的同一目录中创建一个名为的文件。不幸的是,事实并非如此。
答案1
解决方案是设置
ulimit -c unlimited
这是我的完整解决方案,将所有核心文件放在 /tmp/cores 中,并为这些文件指定一个明确的名称:
sudo apt-get remove apport
ulimit -u unlimited
sudo bash -c 'echo "* hard core unlimited" >> /etc/security/limits.conf'
sudo bash -c 'echo "* soft core unlimited" >> /etc/security/limits.conf'
sudo bash -c 'echo "kernel.core_pattern=/tmp/cores/core.%e.%p.%h.%t" >> /etc/sysctl.conf'
sudo sysctl -p /etc/sysctl.conf
然后您需要注销或重新启动才能使其正常工作。