¿Cómo averiguar qué administrador de servicios está instalado en mi sistema operativo Linux?

2

Sé que mi instalación de Linux viene con una de las implementaciones del administrador de servicios. Puede ser Systemd, Upstart o cualquiera de los otros.

Entonces, mi pregunta es, ¿cómo puedo saber cuál está instalado en mi sistema Linux?

Gracias.

ACTUALIZAR

Aquí hay algunos comandos ps / grep de mi sistema que buscan systemd y upstart, y sus salidas:

$ ps aux | grep systemd
root       341  0.0  0.0  52244  3836 ?        Ss   15:54   0:00 /lib/systemd/systemd-udevd --daemon
root       588  0.0  0.0  43452  3200 ?        Ss   15:54   0:00 /lib/systemd/systemd-logind
root      1889  0.0  0.0  17520  1840 ?        S    15:54   0:00 /lib/systemd/systemd-localed
user123      2348  0.0  0.0  15948  2236 pts/1    S+   15:56   0:00 grep --color=auto systemd
$ ps aux | grep upstart
root       329  0.0  0.0  19744  2308 ?        S    15:54   0:00 upstart-udev-bridge --daemon
root       763  0.0  0.0  15808  2168 ?        S    15:54   0:00 upstart-file-bridge --daemon
root       770  0.0  0.0  15528  1984 ?        S    15:54   0:00 upstart-socket-bridge --daemon
user123      1525  0.0  0.0  22304  2336 ?        Ss   15:54   0:00 upstart-event-bridge
user123      1553  0.0  0.0  22368  1828 ?        S    15:54   0:00 upstart-dbus-bridge --daemon --session --user --bus-name session
user123      1560  0.0  0.0  30784   280 ?        S    15:54   0:00 upstart-file-bridge --daemon --user
user123      1562  0.0  0.0  22312   216 ?        S    15:54   0:00 upstart-dbus-bridge --daemon --system --user --bus-name system
user123      2350  0.0  0.0  15948  2280 pts/1    S+   15:56   0:00 grep --color=auto upstart
hebbo
fuente
1
¿Buscando cualquiera o simplemente probando los comandos apropiados? Además, generalmente hay un estándar para una distribución dada. Dónde y cómo buscarías eso depende de la distribución.
Seth
1. dame un ejemplo. Por ejemplo, en su propia distribución de Linux. 2. ¿hay una "firma" o puede haber un mensaje de registro volcado en el registro que puede dar una pista? El problema es que no estoy familiarizado con estos administradores de servicios. Acabo de enterarme de su existencia hoy. Entonces, cualquier pista ayudaría ... realmente.
hebbo
1
¿Cómo funcionan los servicios en Debian y cómo puedo administrarlos? tiene un ejemplo para cada una de las alternativas que nombró. Aunque Debian cambió , es por defecto.
Seth
1
Este es un duplicado de Detect init system usando el shell .
Mark Stosberg

Respuestas:

3

La forma más fácil es averiguar qué sistema operativo y ver qué se ejecuta por defecto. Los sistemas init no son triviales para cambiar.

En un sistema completamente desconocido, sugeriría usar una combinación de ps y grep para verificar los procesos comunes relacionados con cada sistema init y ver ...

No tengo un sistema que use el sistema de script de inicio 'clásico', así que no tengo forma de verificarlo.

En una caja moderna de fedora o ubuntu, puede usar ps aux | grep systemd, que debería emitir líneas como usr/lib/systemd/systemd. También almacena archivos de configuración enetc/systemd/

También usarías systemctl para manejar servicios

En un sistema basado en arranque puede hacer ps aux | grep upstarty encontrar algunos procesos relacionados con arranque.

Upstart utiliza el comando de servicio y almacena los archivos de configuración en / etc / init / al igual que un archivo init clásico. Utiliza su propio formato, guardado como archivos .conf, aunque algunos de estos son archivos de inicio clásicos.

A menudo usa scripts de inicio de estilo sysv junto con los más modernos, pero no tengo ningún sistema que los use únicamente para verificarlos. Si está escribiendo un guión de inicio para un sistema desconocido, esta suele ser una apuesta segura, aunque pierde las cosas brillantes que agregan los nuevos sistemas de inicio.

Journeyman Geek
fuente
También hay una referencia de respuesta en el comentario de MarkStosberg sobre la pregunta.
hebbo