Estou usando o Ubuntu 21.10 e um programa está travando. Gostaria de ver o core dump. De acordo com isso , parece que eu preciso usar o apport.service
.
Mas observo o seguinte sobre oapport.service
- o status de
apport.service
éactive (exited)
executandosystemctl status apport.service
. ps -ef | grep apport
mostra que não há nenhum processo de apport em execução
Eu também fiz sudo systemctl stop apport.service
seguido por sudo systemctl start apport.service
. O resultado é o mesmo.
O que significa o active (exited)
estado? Como posso iniciar o apport
serviço?
active (exited)
aparecerá quando um serviço usarType=oneshot
comRemainAfterExit=true
.O serviço básico a seguir iniciará em
systemctl start ...
, sairá imediatamente com sucesso e permanecerá "ativo" até que seja interrompido.Isso pode ser particularmente útil ao usar o
PartOf=
relacionamento com outras unidades. Nesse caso, uma unidade iniciaria e faria algo, então acionaria outras unidades para iniciar. Quando essa primeira unidade é interrompida (mesmo que tenha terminado no início), outras outras unidades também param.Eu não executo o Ubuntu, então não tenho
apport
, mas imagino que, desde que o serviço não sejainactive (dead)
oufailed
, ele esteja funcionando conforme o esperado.O processo executado no início pode ter carregado um módulo do kernel, ou algo que
apport.service
Wants=
ouRequires=
poderia estar fazendo algo.Quando algo trava, verifique se há um dump
/var/crash/
(o nome do arquivo é composto pelo nome do executável travado e o ID do usuário). Se não estiver lá, talvez seja necessário habilitar alguns relatórios de falhas/etc/apport/crashdb.conf
(consulte o wiki do Ubuntu ).