¿Cómo cambio la verbosidad del comando de servicio?

13

Estoy ejecutando Kali 2 Linux. Uso el comando systemctlo servicepara iniciar un servicio como Apache. En la versión anterior de Kali, el comando realmente imprime un mensaje "OK" al iniciar un servicio; pero en esta versión simplemente vuelve a la línea de comandos sin decir nada.

¿Hay alguna manera de cambiar la verbosidad o hacer que se comporte como lo hizo la versión anterior?

RL.AdmiralX
fuente
Bueno, generalmente cuando no hay un mensaje que significa éxito.
Svetlin Tonchev

Respuestas:

1

El servicecomando (generalmente activado /usr/sbin/) actualmente es solo un bashscript de shell que invoca el systemctlcomando. Debería poder modificarlo fácilmente para obtener el resultado que desea.

fpmurphy
fuente
0

journaldEs un demonio centralizado que recopila datos de todas las fuentes disponibles y los almacena en formato binario para una manipulación fácil y dinámica. Como respuesta a su pregunta, diría que, por lo general, cuando no hay salida, significa que está "OK", y si quiere estar seguro, use journalctlpara verificar los registros.

Svetlin Tonchev
fuente
Lo sé, pero me gusta la sensación del mensaje ok que estoy acostumbrado, y necesito que
aparezca
Ya sea que el servicio se inicie o no, no hay salida. Estoy tentado a agregar un alias: servicio $ 1 de inicio; servicio $ 1 de estado
Lenne
-1

Puede agregar un echo $?comando al comando para mostrar un estado de 1 o 0.

El &&tiene el efecto de tan sólo ejecuta el segundo comando si el anterior es un éxito.

systemctl start mysqld.service && echo $? 

Esto mostrará un estado:

si falla, imprimirá un mensaje de por qué falló

si tiene éxito solo verá 0

En tu mente puedes agregar el k 0 = 0k

Esta es una solución económica pero le dará un buen retorno después de sus llamadas systemctl.

Mark Stewart
fuente
2
&& echo $?parece una cosa peculiar que hacer; se imprimirá 0o nada en absoluto. También podrías decir && echo OKo && echo Success.
G-Man dice 'reinstalar a Monica' el
1
no, no es como echo ok. Se hace eco del resultado real del último comando. Si es un 0, fue exitoso. Si no tiene éxito, será un 1.
Mark Stewart
1
¡Pero estás diciendo && echo $?! Si el (primer) comando falla, el shell no ejecutará el segundo comando (el siguiente  &&) y, por lo tanto, no imprimirá nada.
G-Man dice 'reinstala a Monica' el
1
No, cuando falla, imprimirá el mensaje que systemctl envía cuando el servicio no se inicia. Pruébalo tú mismo, funciona. Lo he usado. Por ejemplo (tengo que usar llamadas de servicio, ya que RHEL genera resultados en caso de error o éxito) Cuando un servicio falla, obtiene la salida de error estándar del sistema. Cuando se inicia el servicio, obtiene un 0. &&) El servicio se ejecuta:
Mark Stewart
2
No dije que no funcionó. Dije que && echo $?funciona exactamente igual que && echo 0: el " $?" hace que parezca que estás haciendo algo más sofisticado de lo que eres, y, siempre que vayas a hacer algo tan poco sofisticado como && echo 0tú, también podrías hacer lo && echo OKque dará el resultado que pide la pregunta. ... ... ... ... ... ... ... ... ... ... ... ... ... ... es  echo 0exactamente lo mismo que echo OK? No claro que no; 0 es un carácter, que es un dígito, mientras que OK son dos caracteres, que son letras (alfabéticas). Duh … (Continúa)
G-Man dice 'Restablece a Mónica' el