Как изменить подробность служебной команды?

13

Я использую Kali 2 Linux. Я использую команду systemctlили serviceдля запуска службы, такой как Apache. В предыдущей версии Kali команда фактически выводит сообщение «ОК» при запуске службы; но в этой версии он просто возвращается к командной строке, ничего не говоря.

Есть ли способ изменить многословие или заставить его вести себя как в предыдущей версии?

RL.AdmiralX
источник
Ну, обычно, когда нет сообщения, которое означает успех.
Светлин Тончев

Ответы:

1

Команда service(обычно включенная /usr/sbin/) в настоящее время, как правило, является просто bashсценарием оболочки, который вызывает systemctlкоманду. Вы легко сможете изменить его, чтобы получить желаемый результат.

fpmurphy
источник
0

journaldЭто централизованный демон, который собирает данные из всех доступных источников и сохраняет их в двоичном формате для удобного и динамического манипулирования. В ответ на ваш вопрос я бы сказал, что обычно, когда нет выходных данных, это означает, что все в порядке, и если вы хотите быть уверенным, используйте journalctlдля проверки журналов.

Светлин Тончев
источник
Я знаю, но мне нравится ощущение того, что сообщение «ОК»
привыкло
Независимо от того, запускается служба или нет, выход не выводится. Я испытываю желание добавить псевдоним: service $ 1 start, service $ 1 status
Lenne
-1

Вы можете добавить echo $?команду к отображению статуса 1 или 0.

Команда &&запускает вторую команду только в том случае, если предыдущая команда прошла успешно.

systemctl start mysqld.service && echo $? 

Это покажет статус:

если это не удастся, он напечатает сообщение, почему это не удалось

если это удастся, вы увидите только 0

Вы можете в своем уме добавить к 0 = 0 К

Это дешевый обходной путь, но он даст вам хороший возврат после ваших вызовов systemctl.

Марк Стюарт
источник
2
&& echo $?кажется чем-то особенным; он будет печатать 0или вообще ничего. Вы могли бы также сказать && echo OKили && echo Success.
G-Man говорит: «Восстанови Монику»
1
Нет, это не похоже на эхо хорошо. Это повторяет фактический результат последней команды. Если это 0, это было успешно. Если не удастся, это будет 1.
Марк Стюарт
1
Но ты говоришь && echo $?! Если (первая) команда завершится неудачно, оболочка не выполнит вторую команду (одну после  &&) и поэтому ничего не напечатает!
G-Man говорит «Восстановить Монику»
1
Нет, если произойдет сбой, он напечатает сообщение, которое отправляет systemctl, когда служба не запускается. Просто попробуйте сами, это работает, я использовал это. Например (я должен использовать вызовы служб, так как RHEL выводит данные в случае сбоя или в случае успеха). Когда происходит сбой службы, вы получаете стандартный вывод systemctl fail. Когда запускается служба, вы получаете 0. &&) Служба работает:
Марк Стюарт
2
Я не говорил, что это не сработало. Я сказал, что это && echo $?работает точно так же, как && echo 0- « $?» делает так, будто вы делаете что-то более изощренное, чем вы - и, если вы собираетесь делать что-то столь же неискушенное, как && echo 0и вы, это вполне возможно && echo OK, что даст результат, который задает вопрос. ... ... ... ... ... ... ... ... ... ... ... ...  echo 0Точно так же, как echo OK? Нет, конечно нет; 0 является одним символом, который является цифрой, тогда как OK это два символа, которые (буквенные) буквы. Duh. … (Продолжение)
G-Man говорит «Восстановить Монику»