Si desea saber más acerca de los sistemas init, es importante comprender primero los comandos systemctl y service y sus diferencias subyacentes.

Conclusiones clave

  • Los comandos service y systemctl en Linux son vitales y extremadamente similares, siendo systemctl un comando más versátil y poderoso.
  • Tanto service como systemctl permiten a los usuarios configurar e interactuar con los servicios del sistema, pero pertenecen a diferentes sistemas de inicialización (SysVinit y systemd, respectivamente).
  • El servicio opera en archivos del sistema de inicialización en /etc/init.d, mientras que systemctl funciona con archivos en /lib/systemd. Familiarizarse con ambos comandos es importante para administrar los servicios del sistema de manera efectiva.

service y systemctl son comandos vitales y extremadamente similares en Linux. Son tan similares que es fácil preguntarse qué diferencias hay entre ellos y si puede usar los dos comandos indistintamente.

Conocer los detalles más finos sobre el servicio y systemctl le permitirá trabajar con ellos sin problemas.

instagram viewer

¿Qué es el comando de servicio en Linux?

En Linux, el comando de servicio es un script contenedor que permite a los usuarios configurar e interactuar fácilmente con los servicios del sistema. Precede a systemd y funciona principalmente con los scripts que se encuentran en /etc/init.d.

Aunque systemctl superó gran parte de la importancia anterior del servicio, sigue siendo relevante a través de muchas funciones heredadas.

El cambio entre los sistemas de inicialización asociados, SysVinit a systemd, fue controvertido, pero los crecientes desafíos a la función del sistema de inicio original lo hicieron necesario.

systemd inicia los servicios en paralelo en lugar de una secuencia en serie, lo que hace que su tiempo de arranque sea más rápido que SysVinit, y ofrece un control un poco más sofisticado de demonios del sistema a través de la interfaz de línea de comandos (CLI).

¿Qué es el comando systemctl en Linux?

Al igual que service, systemctl es un comando increíblemente versátil que le permite habilitar, recargar, iniciar, detener y verificar el estado de los servicios ejecutándose en su sistema Linux.

systemctl sirve como una interfaz poderosa y fácil de usar para configurar los archivos en systemd; por ejemplo, solo se necesitan uno o dos comandos para deshabilitar un servicio en el arranque usando systemctl.

systemctl es compatible con versiones anteriores del sistema de inicialización, SysVinit, que se usa principalmente con el servicio. systemctl no es un sucesor directo de service, pero es mucho más versátil en cuanto a las herramientas que ofrece para administrar los servicios del sistema.

Puede realizar tareas como enmascarar o deshabilitar un servicio en tan solo una o dos líneas.

Las diferencias entre servicio y systemctl

service y systemctl tienen en gran medida el mismo propósito. Muchas de las similitudes entre ellos se insertaron deliberadamente para permitir a los usuarios una transición más fluida del servicio a systemctl.

Sin embargo, hay algunas diferencias entre los dos que debe tener en cuenta cuando comience a trabajar con el sistema de inicialización en Linux.

1. Diferentes sistemas de inicio

La diferencia más significativa entre service y systemctl es que pertenecen a diferentes sistemas de inicialización. El servicio pertenece a SysVinit (System V Init), también conocido como el proceso clásico de inicialización de Linux.

systemctl pertenece a systemd, el sucesor de SysVinit y el moderno proceso de inicialización utilizado en muchos sistemas Linux.

Debido a que service y systemctl son parte de diferentes procesos de inicialización, operan en archivos del sistema de inicialización en diferentes directorios. El servicio funciona con los archivos del sistema de inicialización que se encuentran en /etc/init.d, mientras que systemctl funciona con los archivos del sistema de inicialización que se encuentran en /lib/systemd.

En general, el sistema de inicialización que encontrará en las instalaciones de Linux listas para usar es systemd, por lo que querrá familiarizarse con el uso de systemctl para interactuar con él.

Si tiene la intención de trabajar con sistemas que preceden o coinciden con el lanzamiento de systemd en 2010, no está de más familiarizarse con el uso del comando de servicio también.

2. Compatibilidad

service sigue siendo un comando extremadamente útil en términos de compatibilidad: como comando contenedor, es capaz de redirigir al administrador de servicios utilizado en diferentes sistemas. Debería planear aprenderlo y convertirlo en parte de su arsenal si va a trabajar con una variedad de sistemas Linux.

3. Funciones subyacentes

Otra diferencia clave entre systemctl y service radica en cómo funcionan. service es un comando de alto nivel que redirige al administrador de servicios subyacente utilizado en un sistema en particular, lo que significa que es bastante versátil entre sistemas. Puede redirigir a /etc/init.d, upstart o incluso systemctl. Mientras tanto, los comandos de systemctl interactúan directamente con systemd.

4. Capacidad

En términos de lo que puede lograr, es seguro decir que systemctl supera con creces el poder del servicio. Además de las funciones básicas, como iniciar, detener, habilitar o deshabilitar un servicio en particular, también puede establecer configuraciones avanzadas con systemctl.

El servicio es más limitado debido a su compatibilidad necesaria con los administradores de servicios subyacentes en los que se basa.

Configure los servicios del sistema de manera efectiva en Linux

service y systemctl son comandos increíblemente importantes para administrar los servicios del sistema. Ya sea que solo desee aprovechar al máximo su sistema Linux o tenga la intención de trabajar en redes empresariales, es vital familiarizarse con ambos comandos.

Afortunadamente, existen muchos tutoriales excelentes que pueden ayudarlo a convertirse en un maestro en el uso de systemctl y service en la terminal.