что такое '?' в службе --status-all [дубликат]

На этот вопрос уже есть ответ здесь:

этой командой service --status-all. Я могу найти статус всех услуг. в каждой строке есть +, - или?. Легко догадаться, что + и -, которые могут быть , относятся к запущенной службе, а не запущенной ( Я не уверен ). Но не знаете этого? значение символа перед услугами.

4
задан 12 April 2014 в 23:01

1 ответ

Вопросительный знак указывает на это service не смог определить состояние рабочего сервиса, так как это не нашло строку состояния в связанном сценарии в /etc/init.d

Сервисная команда имеет отрывок следующим образом:

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

который указывает, что это отметит состояние сервиса как [?] если это не находит строку, которая имеет слово status после любого несловесного символа в файле связанного сервиса в /etc/init.d.

Например, у меня есть следующие случаи для рассмотрения для этого определенного примера

  • Для [+] acpid, если я просматриваю файл /etc/init.d/acpid Я получаю следующую строку:

    status)
    status_of_proc "$ACPID" acpid
    

то, которое я предполагаю, что service ищет.

  • Для [?] apport, Я не нахожу строку со словом status предшествовавший несловесным символом, который service искал. Таким образом это предварительно ожидает a [?] перед сервисным названием, когда Вы делаете a sudo service --status-all.

См. также: Точно подобный вопрос на Serverfault.

5
ответ дан 12 April 2014 в 23:01

Другие вопросы по тегам:

Похожие вопросы: