Cuando inicia un sistema Linux, comienza con un solo proceso, un programa llamado init.
Desde el lanzamiento deUNIX versión cinco(Sistema V), el sistema de inicio SysV ha sido el más popular y se introdujo en los sistemas Linux en 1991.
Siguió siendo el sistema de inicio más popular durante años, pero gradualmente, muchas distribuciones de Linux comenzaron a usar OpenRC, Runit, UpStart, etc.
En la actualidad, systemd se usa ampliamente y, por lo tanto, es probable que esté usando systemd en su sistema.
Pero como lo confirmas? Ejecutas este comando:
ps -p 1 -o comm=
Si obtiene systemd en la salida, está utilizando systemd.
Eso funciona para las distribuciones de Linux que usan systemd, pero ¿qué pasa si está usando algún otro sistema de inicio? Discutamos esa parte también.
Comprobando el sistema de inicio en Linux
Recuerde que init es el primer proceso que se inicia en su sistema Linux.
Esto significa que el detalle está en el proceso con PID 1. Verifique el proceso 1 y luego:
ps 1
Pero desafortunadamente, eso no es suficiente porque el proceso a menudo se muestra como /sbin/init y eso no brinda información precisa.
[email protected]:~$ ps 1
PID TTY STAT TIME COMMAND
1 ? Ss 0:01 /sbin/init splash
El /sbin/init es un enlace simbólico al proceso de inicio real. Puede seguir el enlace simbólico y ver el proceso real.
Estoy usando el comando stat y puedes ver que /sbin/init está vinculado a /lib/systemd/systemd en Ubuntu.
[email protected]:~$ stat /sbin/init
File: /sbin/init -> /lib/systemd/systemd
Size: 20 Blocks: 0 IO Block: 4096 symbolic link
Device: 10306h/66310d Inode: 30675721 Links: 1
Access: (0777/lrwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2022-09-21 09:17:59.616364311 +0530
Modify: 2022-06-27 23:58:46.000000000 +0530
Change: 2022-07-12 18:24:23.667196373 +0530
Birth: 2022-07-12 18:24:23.667196373 +0530
Esta es una indicación de que systemd está en uso.
Toma otro example. Estoy usando Alpine Linux versión 3.16. Aquí está la información inicial.
localhost:~# stat /sbin/init
File: '/sbin/init' -> '/bin/busybox'
Size: 12 Blocks: 0 IO Block: 4096 symbolic link
Device: 800h/2048d Inode: 169 Links: 1
Access: (0777/lrwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2022-09-22 04:53:46.677137693 +0000
Modify: 2022-07-21 04:10:19.149395174 +0000
Change: 2022-07-21 04:10:19.149395174 +0000
Como puede ver, Alpine Linux utiliza el sistema de inicio ligero BusyBox.

También puede usar elpstree
comando pero eso puede no funcionar en cualquier otra distribución para identificar el sistema init.
pstree
Para Ubuntu, indica claramente si la distribución de Linux está usando systemd.

Como puede ver, puede que no sea sencillo, pero tampoco es tan complicado saber si su sistema Linux está usando systemd o no.