루트 권한 없이 컴퓨터에서 프로그램을 실행하고 있습니다. 핵심 파일은 다음을 통해 처리되어야 합니다 abrt
.
$ sysctl kernel.core_pattern
kernel.core_pattern = |/usr/libexec/abrt-hook-ccpp %s %c %p %u %g %t e %P %I %h
그렇다면 코어 파일을 얻는 방법은 무엇입니까? 그것은 내 어디에도 없고 $HOME
, 프로그램을 실행하는 폴더에도 없습니다./var/spool
,,, 등 여러 곳을 시도해 봤습니다./var/cache
/var/tmp
abrt
문서 에 따르면 다음을 $HOME/.config/abrt/settings/abrt-applet.conf
포함하는 구성 파일을 만들었습니다.
AutoreportingEnabled = yes
ProcessUnpackaged = yes
DumpLocation = /path/to/existing/folder
(두 번째 변수만 문서에서 가져오고 나머지 두 개는 다른 abrt 파일에서 가져왔는데 여기서는 이해되지 않는 것 같습니다.)
이 파일을 생성한 후 core dumped
프로그램이 충돌하면 이전에는 없었던 멘션 라인이 표시되지만 코어 파일은 나타나지 않습니다.
答え1
결국 abrt-applet.conf
질문에서 제안한대로 파일을 만드는 것이 가장 좋은 방법입니다. 그런 다음 ulimit -c unlimited
세션을 설정하고 다시 시작하는 것을 잊지 마십시오 . 코어 파일은 에서 지정한 디렉터리가 아닌 현재 디렉터리에 나타납니다 DumpLocation
.