Por que o kernel do Linux despeja um unset.core?

2

Estou trabalhando no Linux 4.0.6 e já ativei o coredump e usei o padrão %e.core . Na minha máquina, vejo <unset>.core na pasta principal. Alguém pode me explicar o que significa <unset> e como posso evitar isso?

    
por why2 18.07.2017 / 09:14

1 resposta

2

% e no padrão principal mapeia para o nome do arquivo executável, que é essencialmente equivalente ao campo comm em / proc. Em algumas circunstâncias, este campo na estrutura interna do processo no kernel pode estar vazio (ou seja, se argv [0] é uma string vazia, e por um período muito curto de tempo durante uma chamada fork ()), e se o processo trava enquanto esse é o caso, você pode obter um arquivo principal com um nome como você especificou. Por que vale a pena, descobri que% E (o caminho do executável) é um pouco mais confiável, já que isso não pode ser manipulado pelo próprio processo.

    
por 18.07.2017 / 13:15