O que significa um ponto de interrogação ao listar todos os serviços?

9

Depois de executar o comando service --status-all , obtenho uma listagem de todos os serviços na minha máquina. Eu recebo uma saída como essa.

[ ? ]  acpi-fakekey
[ ? ]  acpi-support
[ + ]  acpid
[ - ]  anacron
[ + ]  apache2
[ + ]  atd
[ - ]  bootlogd

O que significa ? ? Eu sempre assumi que + significa que o processo foi iniciado e que - significa que o processo foi interrompido. Qual estado é um serviço precedido por ? in?

Aqui está o conteúdo do meu arquivo /proc/version caso ele ajude alguém a me responder.

Linux version 2.6.32-5-amd64 (Debian 2.6.32-45)

Obrigado antecipadamente!

    
por Grenville 07.11.2012 / 16:21

1 resposta

7

O ponto de interrogação na saída de service --status-all é impresso quando o script /usr/sbin/service não encontra a linha de status na estrutura do caso no script relacionado em /etc/init.d .

Se você olhar o script /usr/sbin/service , poderá encontrar uma declaração if como esta:

if ! grep -qs "\Wstatus)" "$SERVICE"; then
    #printf " %s %-60s %s\n" "[?]" "$SERVICE:" "unknown" 1>&2
    echo " [ ? ]  $SERVICE" 1>&2
    continue
else
    
por 07.11.2012 / 16:51