GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo saber si estoy usando systemd en Linux?

Compruebe qué proceso se está ejecutando como PID 1. Puede hacerlo ejecutando ps 1 y desplazándose hasta la parte superior. Si tiene algo de systemd ejecutándose como PID 1, tiene systemd ejecutándose.

Alternativamente, ejecute systemctl para enumerar las unidades systemd en ejecución.

También es posible que desee comprobar qué es /sbin/init; file /sbin/init le dirá si es un ejecutable real o si es un enlace simbólico al ejecutable de algún otro paquete. En un cuadro systemd, por ejemplo:

[email protected] / # file /sbin/init
/sbin/init: symbolic link to ../lib/systemd/systemd

Para obtener más información, consulta esto:https://en.wikipedia.org/wiki/Linux_startup_process

Otra forma de ver exactamente lo que tiene en su sistema es escribir man init y ver en qué página del manual del programa acabas.


Sé que esta es una vieja pregunta, pero como me estaba haciendo la misma pregunta, aquí están mis 2ct.

La mejor solución que se me ocurrió

ps --no-headers -o comm 1

Esto devuelve systemd o init y parece fiable en todas las versiones y distribuciones de Linux.

file /sbin/init funcionaría, con la ayuda de la coincidencia de patrones. Salida de ps 1 no parece útil ya que en algunas distribuciones de Linux imprimirá 'init' (el enlace simbólico) a pesar de que se usa systemd.

Debian 8

$ ps 1
  PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:02 /sbin/init
$ file /sbin/init
/sbin/init: symbolic link to /lib/systemd/systemd

RHEL 7

$ ps 1
  PID TTY      STAT   TIME COMMAND
    1 ?        Ss     7:46 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
$ file /sbin/init
/sbin/init: symbolic link to `../lib/systemd/systemd'

SLES 12

$ ps 1
  PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:24 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
$ file /sbin/init
/sbin/init: symbolic link to `../usr/lib/systemd/systemd'

abrir SUSE 13.1

$ ps 1
  PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:33 /sbin/init showopts
$ /sbin/init: symbolic link to `../usr/lib/systemd/systemd'

Linux
  1. Cómo depurar programas C en Linux usando gdb

  2. ¿Cómo maneja Linux múltiples separadores de rutas consecutivas (/home////username///file)?

  3. ¿Cómo utiliza Systemd los scripts /etc/init.d?

  4. ¿Qué tan portátiles son /dev/stdin, /dev/stdout y /dev/stderr?

  5. Instalar binarios en /bin, /sbin, /usr/bin y /usr/sbin, interacciones con --prefix y DESTDIR

Cómo hacer un servidor CS:GO en Linux VPS

Cómo mostrar usuarios en MySQL usando Linux

Cómo listar usuarios en Linux

Cómo cambiar el nombre de los archivos usando la línea de comandos en Linux

Cómo enumerar los sistemas de archivos en Linux usando Lfs

Linux:¿/sbin/init no existe?