우분투 21.10을 사용하고 있는데 프로그램이 계속 충돌합니다. 코어 덤프를 보고 싶습니다. ~에 따르면이것, 을 사용해야 할 것 같습니다 apport.service
.
그러나 나는 다음과 같은 사실을 관찰했습니다.apport.service
- 상태는 running 중
apport.service
입니다 .active (exited)
systemctl status apport.service
ps -ef | grep apport
승인 프로세스가 실행되고 있지 않음을 표시합니다.
나는 sudo systemctl stop apport.service
따라갔다 sudo systemctl start apport.service
. 결과는 동일합니다.
상태는 무엇을 active (exited)
의미하나요? 이 서비스를 어떻게 시작할 수 있나요 apport
?
답변1
active (exited)
서비스가 와 함께 사용될 때 Type=oneshot
나타납니다 RemainAfterExit=true
.
다음 기본 서비스는 에서 시작되고 systemctl start ...
, 성공하면 즉시 종료되며, 중지될 때까지 "활성" 상태를 유지합니다.
[Service]
Type=oneshot
ExecStart=/bin/true
RemainAfterExit=yes
PartOf=
이는 다른 단위와의 관계를 작업할 때 특히 유용합니다. 이 경우 한 장치가 시작되어 작업을 수행하면 다른 장치가 시작됩니다. 첫 번째 장치가 중지되면(시작 시 완료되더라도) 다른 장치도 중지됩니다.
저는 Ubuntu를 실행하지 않기 때문에 그런 기능은 없지만 서비스가 or 가 apport
아닌 한 예상대로 작동할 것 같습니다.inactive (dead)
failed
시작 시 실행 중인 프로세스에는 커널 모듈이 로드되어 있거나 무언가를 수행 apport.service
Wants=
중인 프로세스가 있을 수 있습니다 Requires=
.
충돌이 발생하면 덤프를 검사합니다 /var/crash/
(파일 이름은 충돌한 실행 파일의 이름과 사용자 ID로 구성됨). 그렇지 않은 경우 일부 충돌 보고를 활성화해야 할 수도 있습니다 /etc/apport/crashdb.conf
(참조우분투 위키).
참고: Ubuntu의 wiki에 따르면 apport는 어딘가에 충돌을 업로드할 수 있습니다. 귀하의 데이터는 개인적인 것이 아닐 수도 있습니다.