Servicio frente a Systemctl

Servicio Frente A Systemctl



service y systemctl son dos utilidades de línea de comandos que se utilizan para administrar los servicios del sistema. Ambas utilidades pertenecen a dos sistemas de inicio diferentes, SysV y systemd respectivamente.

En esta guía, analizaré los comandos service y systemctl, y en qué se diferencian cuando se trata de la gestión de servicios.

Antes de continuar, primero comprendamos dos sistemas de inicio de Linux populares; Sistema y Systemd.







Sistema V frente a Systemd

El sistema de inicio en Linux es una parte crucial del proceso de arranque. Es el primer proceso con PID 1 que se inicia cuando se inicia el sistema. Luego inicia los procesos presentes en el archivo inittab. System V también conoce SysV y systemd son sistemas de inicio de Linux populares.



El SysV es un sistema de inicio más antiguo y ha sido parte de distribuciones más antiguas de Unix y Linux. Gestiona los servicios del sistema utilizando los scripts ubicados en /etc/init.d. Algunas distribuciones de Linux que todavía usan SysV son Slackware, Gentoo y antiX Linux.



Por otro lado, sistemad se lanzó en 2010 y fue rápidamente adoptado por muchas distribuciones de Linux. El sistema systemd init gestiona los servicios a través de archivos .service. Ahora forma parte de todas las distribuciones modernas de Linux, incluidas Red Hat Enterprise Linux, CentOS, Amazon Linux, Fedora, Debian, Ubuntu y distribuciones basadas en estos sistemas operativos.





Systemd es mucho más eficiente en comparación con SysV. Proporciona un tiempo de arranque más rápido, una gestión de servicios eficiente y un manejo de dependencias.

Ambos sistemas de inicio proporcionan dos utilidades de línea de comandos para la gestión de servicios.



En las siguientes secciones de la guía, analizaré estas dos utilidades.

comando de servicio

El servicio El comando es un contenedor de secuencias de comandos que ejecuta secuencias de comandos ubicadas en el /etc/init.d directorio. Fue desarrollado para gestionar el servicio de SysV o Sistema V sistema de inicio. Las distribuciones de Linux que utilizan SysV como sistema de inicio utilizan el servicio Comando para la gestión de servicios.

La sintaxis general para utilizar el comando de servicio se proporciona a continuación.

servicio [ Nombre del Servicio ] [ acción ]

Para obtener el estado de los servicios controlados por System V, use el comando service con el –estado-todo opción.

servicio --estado-todo

El + indica que el servicio se está ejecutando y el muestra que el servicio está inactivo.

El estado actual de cualquier servicio específico también se puede verificar mencionando el nombre del servicio.

servicio [ Nombre del Servicio ] estado

A continuación se enumeran algunos otros comandos de servicio útiles, como iniciar, detener y reiniciar un servicio.

servicio [ Nombre del Servicio ] comenzar

servicio [ Nombre del Servicio ] detener

servicio [ Nombre del Servicio ] Reanudar

Este comando de servicio proporciona control básico para administrar servicios. La mayoría de las distribuciones de Linux han reemplazado a SysV como sistema de inicio, pero debido a la compatibilidad heredada, este comando todavía viene en muchas distribuciones de Linux más recientes listas para usar.

comando systemctl

Usando el comando systemctl, puede controlar los servicios en el /lib/systemd/sistema y /etc/systemd/sistema directorios. Es un componente de systemd; un sistema de inicio que se encuentra en la mayoría de las distribuciones de Linux contemporáneas.

systemctl está diseñado para proporcionar más control sobre la gestión de servicios del sistema. La sintaxis general para usar el comando systemctl se proporciona a continuación:

sistemactl [ opción ] [ Nombre del Servicio ]

Para verificar el estado de todos los servicios, use el siguiente comando.

unidades de lista systemctl --tipo =servicio --todo

Para un uso de servicio específico:

estado del sistema [ Nombre del Servicio ]

A continuación se detallan los comandos para la gestión básica del servicio mediante systemctl:

sistemactl permitir [ Nombre del Servicio ]

inicio systemctl [ Nombre del Servicio ]

parada systemctl [ Nombre del Servicio ]

systemctl desactivar [ Nombre del Servicio ]

reiniciar systemctl [ Nombre del Servicio ]

El comando systemctl va más allá cuando se trata de controlar servicios. La siguiente tabla contiene algunos comandos avanzados de systemctl.

rutas de lista Para enumerar la ruta de todos los servicios en la memoria
está activo [nombre_servicio] Para comprobar si el servicio o unidad está funcionando o no
lista-dependencias [nombre_servicio] Para imprimir la lista de dependencias del servicio especificado
reinicio fallido Para restablecer los servicios que no se cargaron debido a alguna anomalía
máscara [nombre_servicio] Para deshabilitar el servicio y hacer que no pueda iniciarse
obtener el valor predeterminado Para imprimir el nivel de ejecución o el objetivo predeterminado
establecido por defecto [objetivo] Para establecer el nivel de ejecución o el objetivo predeterminado
está-el-sistema-en-ejecución Para comprobar el estado operativo del sistema.
reiniciar Para reiniciar el sistema
apagado Para apagar el sistema

Por qué todavía hay un comando de servicio en las distribuciones de Linux con el sistema systemd init

El comando de servicio todavía forma parte de muchas distribuciones de Linux porque es un script contenedor y abstrae el sistema de inicio subyacente, ya sea SysV o systemctl. Por ejemplo, en Ubuntu, el comando de servicio redirige al systemctl.

Conclusión

service y systemctl son dos utilidades de línea de comandos que pertenecen a los sistemas SysV y systemd init, respectivamente. A pesar de la sustitución del comando de servicio en las distribuciones modernas de Linux, sigue siendo una herramienta clave para mantener los servicios debido a su simplicidad y compatibilidad. systemctl, por otro lado, forma parte de todas las distribuciones de Linux actuales y proporciona opciones avanzadas para la administración de servicios.