2010-01-17 2 views
59

Mac OS X에서 C 프로그램에 SIGQUIT를 보내면 종료되지만 코어 덤프 파일은 없습니다.Mac에서 코어 덤프는 어디에 쓰여 있습니까?

Mac OS X에서 코어 덤프를 수동으로 활성화해야합니까 (어떻게?), 아니면 작업 디렉토리 대신 다른 곳에 작성해야합니까?

+1

사실, 제목에 동사가 없어도 불평 할 필요가 없습니다. 나는 그 주제에 관심이 있기 때문에 기꺼이 당신의 질문을 upvote 것입니다. 아직도 나는 그 질문이 SO가 요구하는 품질을 따르지 않는다고 생각한다. 나는 심지어 코어 덤프와 관련된 질문이 있습니다 http://stackoverflow.com/questions/2207233/how-to-enable-full-coredumps-on-os-x 그건 그렇고, 코어 덤프는/cores'하지만 터미널과 루트 계정을 사용하여이 폴더를 살펴보십시오. – sorin

+5

@Sorin 제안은 문제가되지 않습니다. – xyz

+1

@Sorin FYI 'are'는 (연결되는) 동사입니다.여기서 중요한 것은 아니지만 문법을 비판하는 경우 올바르게 이해합시다.) http://examples.yourdictionary.com/reference/examples/examples-of-linking-verbs.html –

답변

79

기본적으로 표시되지 않는 것 같습니다. 코어를 가능하게 할 것이다

$ ulimit -c unlimited 

을 실행하면 덤프, 기본적으로

10

이, 맥 OSX에서 특정 디렉토리가 숨겨져있는 core.PID로 /에/코어 배치됩니다. 터미널에서이 기능을 활성화하고 코어 덤프를/cores 디렉토리에 표시해야합니다.

기본값은

ulimit를 -c 무제한

작품을

+1

감사합니다. 나는 터미널 (ls -lah)로 브라우징을하고 있었지만, 어쨌든 유용한 팁이다. – xyz

12

위의 대답 TRUE com.apple.finder AppleShowAllFiles 쓰기 -하지만 실행해야 당신이 코어를 덤프하는 프로그램을 실행할 동일한 터미널에서. 먼저 ulimit 명령을 실행해야합니다.

8

또한/cores 디렉터리가 있어야하며 프로그램을 실행하는 사용자에게 쓰기 권한이 있어야합니다.

+3

방금 ​​정리 한 186GB의 공간! – Dragonborn

19

macOS에서 크래시 덤프는 Crash Reporter에 의해 자동으로 처리됩니다.

당신은 Console을 실행하고 사용자 진단으로 이동하여 파일을 역 추적을 찾을 수는 ('진단 및 사용 정보'그룹 아래) 섹션을보고하거나 ~/Library/Logs/DiagnosticReports에서 그들을 찾을 수 있습니다.

system.log 파일을 모니터링하여 덤프가 생성 된 위치를 확인할 수도 있습니다.

tail -f /var/log/system.log | grep crash 

당신이 /cores에서 찾을 수있는 실제 핵심 덤프 파일.

은 참조 :

관련 문제