o que é '?' em serviço --status-all [duplicado]

3

por este serviço de comando --status-all. Eu posso encontrar todo o status dos serviços. em toda linha existe + ou - ou? Fácil de adivinhar + e - que pode ser referem-se ao serviço em execução e não em execução ( não tenho certeza ). Mas não sabe disso? significado do símbolo antes dos serviços.

    
por Mohammad Reza Rezwani 12.04.2014 / 21:01

1 resposta

3

O ponto de interrogação indica que service não conseguiu determinar o status do serviço em execução, pois não encontrou a linha de status no script relacionado em /etc/init.d

O comando service tem um snippet da seguinte forma:

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

que indica que marcará o status de um serviço como [?] se ele não encontrar uma linha que tenha a palavra status após qualquer caractere não pertencente à palavra no arquivo do serviço relacionado em /etc/init.d .

Por exemplo, tenho os seguintes casos a considerar para este exemplo específico

  • Para [+] acpid , se eu procurar o arquivo /etc/init.d/acpid , obtenho a seguinte linha:

    status)
    status_of_proc "$ACPID" acpid
    

que eu presumo é o que service está procurando.

  • Para [?] apport , não encontro uma linha com a palavra status precedida por um caractere não pertencente à palavra que service estava procurando. Assim, ele prefixará um [?] antes do nome do serviço quando você executar um sudo service --status-all .

Veja também: Uma pergunta exatamente semelhante sobre Serverfault .

    
por jobin 12.04.2014 / 21:06

Tags