Introducción
En este laboratorio, obtendrás experiencia práctica en la gestión de servicios del sistema en RHEL utilizando el comando systemctl. Aprenderás a visualizar todos los servicios cargados y activos, verificar el estado de servicios específicos y controlar su comportamiento en tiempo de ejecución iniciándolos, deteniéndolos y reiniciándolos. Además, explorarás cómo recargar configuraciones de servicios, habilitar o deshabilitar servicios para su inicio automático durante el arranque, y comprenderás los conceptos avanzados de enmascaramiento y desenmascaramiento de servicios para impedir su activación.
Esta guía práctica te dotará de habilidades esenciales para la administración de sistemas, permitiéndote monitorear y gestionar eficazmente el ciclo de vida de los servicios cruciales para el funcionamiento de tu sistema RHEL.
Visualizar todos los servicios cargados y activos con systemctl
En este paso, aprenderás a identificar los procesos del sistema que se inician automáticamente utilizando el comando systemctl. systemctl es la herramienta principal para gestionar servicios de systemd en Red Hat Enterprise Linux.
Primero, exploremos cómo listar todas las unidades de servicio cargadas y activas actualmente. Para este propósito se utiliza el comando systemctl list-units --type=service. Este comando muestra las unidades de servicio que el demonio systemd ha analizado y cargado correctamente en la memoria, y que se encuentran activas en este momento.
Abre tu terminal en el entorno RHEL. Ya has iniciado sesión como usuario labex y tu directorio actual es ~/project.
Ejecuta el siguiente comando para listar todas las unidades de servicio cargadas y activas:
systemctl list-units --type=service
Verás una salida similar a esta, que muestra varios servicios y sus estados:
UNIT LOAD ACTIVE SUB DESCRIPTION
atd.service loaded active running Job spooling tools
auditd.service loaded active running Security Auditing Service
chronyd.service loaded active running NTP client/server
crond.service loaded active running Command Scheduler
dbus-broker.service loaded active running D-Bus System Message Bus
...output omitted...
Analicemos las columnas de la salida:
- UNIT: Es el nombre de la unidad de servicio, que normalmente termina en
.service. - LOAD: Indica si el demonio
systemdanalizó correctamente la configuración de la unidad y la cargó en memoria.loadedsignifica que la operación fue exitosa. - ACTIVE: Es el estado de activación de alto nivel de la unidad.
activegeneralmente significa que la unidad se inició correctamente. - SUB: Es el estado de activación de bajo nivel, que proporciona información más detallada. Para los servicios en ejecución,
runninges común. - DESCRIPTION: Una breve descripción de lo que hace el servicio.
Presiona q para salir del comando.
A continuación, puedes usar la opción --all con systemctl list-units --type=service para listar todas las unidades de servicio independientemente de sus estados de activación (activo, inactivo, fallido, etc.). Esto es útil para ver servicios que están instalados pero no se están ejecutando actualmente.
Ejecuta el siguiente comando:
systemctl list-units --type=service --all
La salida incluirá servicios que están inactive o en otros estados, proporcionando una vista más completa:
UNIT LOAD ACTIVE SUB DESCRIPTION
atd.service loaded active running Job spooling tools
auditd.service loaded active running Security Auditing ...
auth-rpcgss-module.service loaded inactive dead Kernel Module ...
chronyd.service loaded active running NTP client/server
cpupower.service loaded inactive dead Configure CPU power ...
crond.service loaded active running Command Scheduler
dbus-broker.service loaded active running D-Bus System Message Bus
● display-manager.service not-found inactive dead display-manager.service
...output omitted...
Finalmente, para ver el estado de todos los archivos de unidad instalados, incluidos aquellos que no están cargados o activos, puedes usar systemctl list-unit-files --type=service. Este comando muestra si un servicio está enabled (se inicia al arrancar), disabled (no se inicia al arrancar), static (no se puede habilitar directamente pero podría ser iniciado por otra unidad) o masked (se impide su inicio).
Ejecuta el siguiente comando:
systemctl list-unit-files --type=service
Verás una salida similar a esta, que indica el STATE (estado) y el VENDOR PRESET (preajuste del proveedor) para cada archivo de unidad de servicio:
UNIT FILE STATE VENDOR PRESET
arp-ethers.service disabled disabled
atd.service enabled enabled
auditd.service enabled enabled
auth-rpcgss-module.service static -
autovt@.service alias -
blk-availability.service disabled disabled
...output omitted...
Este comando es particularmente útil para comprender qué servicios están configurados para iniciarse automáticamente cuando el sistema arranca.
Verificar el estado de un servicio específico con systemctl status
En este paso, aprenderás a verificar el estado detallado de un servicio específico utilizando el comando systemctl status. Este comando proporciona información completa sobre un servicio, incluyendo si se está ejecutando, su ID de proceso (PID), uso de memoria y entradas de registro recientes.
Usaremos crond.service (el demonio cron) como ejemplo. El demonio cron es un servicio común que gestiona tareas programadas.
Abre tu terminal en el entorno RHEL. Asegúrate de estar en tu directorio ~/project.
Ejecuta el siguiente comando para verificar el estado de crond.service:
systemctl status crond.service
Verás una salida detallada similar a esta:
● crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; preset: enabled)
Active: active (running) since Mon 2022-03-14 05:38:10 EDT; 25min ago
Main PID: 1089 (crond)
Tasks: 1 (limit: 35578)
Memory: 1.2M
CPU: 12ms
CGroup: /system.slice/crond.service
└─1089 /usr/sbin/crond -n
Mar 14 05:38:10 workstation systemd[1]: Started Command Scheduler.
Warning: some journal files were not opened due to insufficient permissions.
Analicemos los campos clave de la salida:
Loaded: Esta línea te indica si el archivo de configuración de la unidad de servicio ha sido procesado. También muestra la ruta al archivo de unidad (/usr/lib/systemd/system/crond.service) y su estado de habilitación (enabledsignifica que está configurado para iniciarse al arrancar).Active: Esto es crucial. Indica el estado actual del servicio.active (running)significa que el servicio está activo actualmente y sus procesos se están ejecutando. También muestra cuánto tiempo ha estado activo. Otros estados podrían serinactive(no se está ejecutando),active (exited)(completó una tarea de una sola vez) ofailed(encontró un error).Main PID: El ID de proceso (PID) del proceso principal asociado con el servicio, junto con el nombre del comando.Tasks: El número de tareas (hilos) que el servicio está utilizando actualmente.Memory: La cantidad de memoria que el servicio está consumiendo.CPU: El tiempo de CPU consumido por el servicio.CGroup: Información sobre el grupo de control al que pertenece el servicio, que se utiliza para la gestión de recursos.- Las líneas debajo de
CGroupmuestran entradas de registro recientes relacionadas con el servicio, proporcionando información sobre su inicio y actividades en curso.
Además de systemctl status, existen comandos más sencillos para verificar rápidamente aspectos específicos del estado de un servicio:
Para verificar si un servicio está activo:
systemctl is-active crond.serviceSalida esperada:
activePara verificar si un servicio está habilitado (configurado para iniciarse al arrancar):
systemctl is-enabled crond.serviceSalida esperada:
enabledPara verificar si un servicio ha fallado:
systemctl is-failed crond.serviceSalida esperada (si se ejecuta correctamente):
activeSi un servicio tuviera problemas al iniciarse o ejecutarse, este comando devolvería
failed.
Estos comandos son útiles para scripts o verificaciones rápidas cuando no necesitas la salida detallada completa de systemctl status.
Iniciar, detener y reiniciar un servicio con systemctl
En este paso, aprenderás a gestionar el ciclo de vida de los servicios del sistema utilizando comandos de systemctl. Practicarás cómo iniciar, detener y reiniciar un servicio. Para este ejercicio, utilizaremos un servicio ficticio que crearemos nosotros mismos. Este enfoque garantiza que podamos manipular un servicio de forma segura sin afectar las funciones críticas del sistema.
Primero, creemos un archivo de unidad de servicio simple. Este archivo definirá un servicio que simplemente escribe una marca de tiempo en un archivo de registro cada pocos segundos.
Crea un nuevo archivo de unidad de servicio llamado mytest.service directamente en el directorio del sistema de systemd usando nano:
sudo nano /etc/systemd/system/mytest.service
Pega el siguiente contenido en el editor nano:
[Unit]
Description=My Test Service
After=network.target
[Service]
Type=simple
ExecStart=/bin/bash -c 'while true; do echo "$(date): My Test Service is running." >> /tmp/mytest.log; sleep 5; done'
ExecStop=/bin/bash -c 'echo "$(date): My Test Service stopped." >> /tmp/mytest.log'
Restart=on-failure
[Install]
WantedBy=multi-user.target
[Unit]: Contiene información genérica sobre la unidad.Descriptionproporciona un nombre legible por humanos, yAfter=network.targetespecifica que este servicio debe iniciarse después de que la red esté activa.[Service]: Define el comportamiento del servicio.Type=simple: Indica un tipo de servicio simple donde el comandoExecStartes el proceso principal.ExecStart: El comando a ejecutar cuando se inicia el servicio. Aquí, es un bucle bash que escribe un mensaje con marca de tiempo en/tmp/mytest.logcada 5 segundos.ExecStop: El comando a ejecutar cuando se detiene el servicio. Escribe un mensaje de detención en el registro.Restart=on-failure: Configura el servicio para que se reinicie si sale con un estado distinto de cero.
[Install]: Contiene información sobre cómo debe instalarse el servicio.WantedBy=multi-user.targetsignifica que este servicio debe iniciarse cuando el sistema alcance el nivel de ejecución multiusuario.
Guarda el archivo presionando Ctrl+X, luego Y para confirmar y Enter para guardar.
Ahora, recarga el demonio systemd para que reconozca el nuevo archivo de servicio:
sudo systemctl daemon-reload
Iniciar un servicio
Para iniciar un servicio, utiliza el comando systemctl start.
Ejecuta el siguiente comando para iniciar mytest.service. Ten en cuenta que debemos usar sudo porque las operaciones de systemctl normalmente requieren privilegios de root.
sudo systemctl start mytest.service
No habrá salida inmediata si el comando es exitoso.
Ahora, verifica que el servicio se esté ejecutando comprobando su estado:
systemctl status mytest.service
Deberías ver una salida que indique que el servicio está active (running):
● mytest.service - My Test Service
Loaded: loaded (/etc/systemd/system/mytest.service; disabled; preset: disabled)
Active: active (running) since ...
Main PID: ... (bash)
Tasks: 2 (limit: ...)
Memory: ...
CPU: ...
CGroup: /system.slice/mytest.service
├─... /bin/bash -c "while true; do echo \"\$(date): My Test Service is running.\" >> /tmp/mytest.log; sleep 5; done"
└─... sleep 5
...output omitted...
También puedes verificar el archivo de registro para ver si el servicio está escribiendo mensajes:
tail -f /tmp/mytest.log
Deberías ver nuevas líneas apareciendo cada 5 segundos, similares a esta:
Tue Jul 22 09:15:09 AM CST 2025: My Test Service is running.
Tue Jul 22 09:15:14 AM CST 2025: My Test Service is running.
Presiona Ctrl+C para salir de tail.
Detener un servicio
Para detener un servicio en ejecución, utiliza el comando systemctl stop.
Ejecuta el siguiente comando para detener mytest.service:
sudo systemctl stop mytest.service
Nuevamente, no habrá salida inmediata.
Verifica que el servicio se haya detenido:
systemctl status mytest.service
La salida ahora debería mostrar Active: inactive (dead):
○ mytest.service - My Test Service
Loaded: loaded (/etc/systemd/system/mytest.service; disabled; preset: disabled)
Active: inactive (dead) since ...
...output omitted...
Verifica el archivo de registro /tmp/mytest.log nuevamente. Deberías ver el mensaje "My Test Service stopped." y no deberían aparecer nuevos mensajes de "running".
tail /tmp/mytest.log
La salida se verá similar a esta:
Tue Jul 22 09:15:24 AM CST 2025: My Test Service is running.
Tue Jul 22 09:15:28 AM CST 2025: My Test Service stopped.
Reiniciar un servicio
Para reiniciar un servicio, utiliza el comando systemctl restart. Este comando primero detiene el servicio y luego lo inicia de nuevo. Esto es útil cuando has realizado cambios en la configuración de un servicio y necesitas que surtan efecto.
Ejecuta el siguiente comando para reiniciar mytest.service:
sudo systemctl restart mytest.service
Verifica que el servicio se esté ejecutando de nuevo:
systemctl status mytest.service
Deberías ver Active: active (running) nuevamente, y el Main PID probablemente será un número nuevo, lo que indica que se ha iniciado un nuevo proceso.
● mytest.service - My Test Service
Loaded: loaded (/etc/systemd/system/mytest.service; disabled; preset: disabled)
Active: active (running) since ...
Main PID: ... (bash)
Tasks: 2 (limit: ...)
Memory: ...
CPU: ...
CGroup: /system.slice/mytest.service
├─... /bin/bash -c "while true; do echo \"\$(date): My Test Service is running.\" >> /tmp/mytest.log; sleep 5; done"
└─... sleep 5
...output omitted...
Verifica el archivo de registro /tmp/mytest.log para confirmar que el servicio ha reanudado la escritura de mensajes "running".
tail -f /tmp/mytest.log
Deberías ver un mensaje de "stopped" seguido de nuevos mensajes de "running":
Tue Jul 22 09:15:28 AM CST 2025: My Test Service stopped.
Tue Jul 22 09:15:40 AM CST 2025: My Test Service is running.
Presiona Ctrl+C para salir de tail.
Aplicar cambios de configuración a un servicio
En este paso, aprenderás sobre la recarga de configuraciones de servicios. Algunos servicios pueden aplicar cambios a sus archivos de configuración sin necesidad de un reinicio completo. Esto se conoce como "recargar" el servicio. Generalmente, se prefiere la recarga sobre el reinicio porque evita el tiempo de inactividad del servicio y preserva las conexiones o estados existentes. Cuando se recarga un servicio, su ID de proceso (PID) normalmente permanece igual, a diferencia de un reinicio completo donde el PID cambia.
Continuaremos usando nuestro mytest.service del paso anterior. Modificaremos su comportamiento e intentaremos recargarlo para ver qué sucede.
Primero, asegúrate de que mytest.service esté ejecutándose. Si no es así, inícialo:
sudo systemctl start mytest.service
Verifica su estado y toma nota de su Main PID:
systemctl status mytest.service
Ahora, modifiquemos el archivo mytest.service para cambiar el mensaje que registra y el intervalo. Cambiaremos el mensaje de registro y la duración de sleep.
Abre /etc/systemd/system/mytest.service con nano:
sudo nano /etc/systemd/system/mytest.service
Cambia la línea ExecStart a la siguiente, modificando el mensaje y el tiempo de sleep de 5 a 2 segundos:
[Unit]
Description=My Test Service
After=network.target
[Service]
Type=simple
ExecStart=/bin/bash -c 'while true; do echo "$(date): My Test Service (reloaded) is running." >> /tmp/mytest.log; sleep 2; done'
ExecStop=/bin/bash -c 'echo "$(date): My Test Service stopped." >> /tmp/mytest.log'
Restart=on-failure
[Install]
WantedBy=multi-user.target
Guarda el archivo presionando Ctrl+X, luego Y y Enter.
Después de guardar los cambios, debes informar a systemd que la configuración del servicio ha cambiado.
sudo systemctl daemon-reload
Ahora, intentemos recargar el servicio para aplicar los cambios:
sudo systemctl reload mytest.service
Es probable que encuentres un error:
Failed to reload mytest.service: Job type reload is not applicable for unit mytest.service.
Este error ocurre porque nuestro servicio simple no está configurado para manejar una solicitud de recarga. Para que un servicio sea recargable, su archivo de unidad debe incluir una directiva ExecReload, que especifica el comando a ejecutar para recargar la configuración. Dado que a nuestro mytest.service le falta esto, systemd no sabe cómo recargarlo.
En situaciones como esta, systemd proporciona un comando conveniente: reload-or-restart. Este comando intentará recargar el servicio, pero si la recarga no es compatible, recurrirá al reinicio del servicio. A menudo, esta es una forma más segura y efectiva de aplicar cambios de configuración.
Usemos reload-or-restart ahora:
sudo systemctl reload-or-restart mytest.service
Este comando debería tener éxito. Ahora, verifica el estado del servicio nuevamente:
systemctl status mytest.service
Observa el Main PID. Dado que nuestro servicio se reinició (porque no pudo ser recargado), notarás que el Main PID es un número nuevo. Esto confirma que el proceso antiguo se detuvo y se inició uno nuevo con la configuración actualizada.
Finalmente, verifiquemos el archivo /tmp/mytest.log para ver si los cambios han surtido efecto.
tail -f /tmp/mytest.log
Deberías ver el nuevo mensaje de registro "My Test Service (reloaded) is running." apareciendo cada 2 segundos. Presiona Ctrl+C para salir de tail.
Habilitar y deshabilitar servicios al arrancar con systemctl
En este paso, aprenderás a configurar servicios para que se inicien automáticamente al arrancar el sistema (habilitar) o impedir que se inicien al arrancar (deshabilitar). Esto es crucial para gestionar los recursos del sistema y garantizar que los servicios necesarios estén disponibles cuando el sistema se inicia.
En un entorno systemd típico, habilitar un servicio crea enlaces simbólicos en los directorios de configuración de systemd apropiados (por ejemplo, /etc/systemd/system/multi-user.target.wants/) que apuntan al archivo de unidad del servicio. Deshabilitar un servicio elimina estos enlaces.
Dado que estamos en un entorno contenerizado donde systemd podría no estar completamente operativo en el sentido tradicional, los comandos enable y disable podrían no crear enlaces simbólicos reales en el directorio /etc/systemd/system que persistan tras los reinicios del contenedor. Sin embargo, systemctl sigue procesando estos comandos y actualizando su estado interno, que es lo que observaremos.
Continuaremos usando nuestro mytest.service para esta demostración.
Primero, asegúrate de que mytest.service esté detenido desde el paso anterior:
sudo systemctl stop mytest.service
Habilitar un servicio
Para habilitar un servicio, utiliza el comando systemctl enable. Este comando configura el servicio para que se inicie automáticamente cuando el sistema arranca.
Ejecuta el siguiente comando para habilitar mytest.service:
sudo systemctl enable mytest.service
Es posible que veas una salida similar a esta, que indica que se crearía un enlace simbólico en un entorno systemd completo:
Created symlink /etc/systemd/system/multi-user.target.wants/mytest.service → /etc/systemd/system/mytest.service.
Ahora, verifica que el servicio esté habilitado usando systemctl is-enabled:
systemctl is-enabled mytest.service
Salida esperada:
enabled
Esto confirma que systemctl ahora considera que mytest.service está habilitado para el arranque.
También puedes combinar la habilitación y el inicio de un servicio en un solo comando usando la opción --now. Esta es una forma conveniente de garantizar que un servicio esté tanto en ejecución inmediata como configurado para iniciarse en futuros arranques.
Primero, deshabilitémoslo para prepararnos para la demostración de --now:
sudo systemctl disable mytest.service
Ahora, habilítalo e inícialo simultáneamente:
sudo systemctl enable --now mytest.service
Verifica su estado y habilitación:
systemctl status mytest.service
systemctl is-enabled mytest.service
Deberías ver Active: active (running) desde el comando status y enabled desde el comando is-enabled.
Deshabilitar un servicio
Para deshabilitar un servicio, utiliza el comando systemctl disable. Este comando elimina la configuración que hace que el servicio se inicie al arrancar.
Ejecuta el siguiente comando para deshabilitar mytest.service:
sudo systemctl disable mytest.service
Es posible que veas una salida que indica la eliminación del enlace simbólico:
Removed /etc/systemd/system/multi-user.target.wants/mytest.service.
Ahora, verifica que el servicio esté deshabilitado:
systemctl is-enabled mytest.service
Salida esperada:
disabled
Al igual que con la habilitación, puedes combinar la deshabilitación y la detención de un servicio usando la opción --now. Esto detendrá el servicio inmediatamente y evitará que se inicie en futuros arranques.
sudo systemctl disable --now mytest.service
Verifica su estado y habilitación:
systemctl status mytest.service
systemctl is-enabled mytest.service
Deberías ver Active: inactive (dead) desde el comando status y disabled desde el comando is-enabled.
Esto concluye la demostración de habilitación y deshabilitación de servicios. Recuerda que en un entorno systemd real, estos comandos manipulan directamente la configuración de arranque.
Enmascarar y desenmascarar servicios con systemctl
En este paso final, aprenderás sobre el enmascaramiento (masking) y desenmascaramiento (unmasking) de servicios. Enmascarar un servicio es una forma poderosa de evitar que se inicie, ya sea manualmente o automáticamente al arrancar.
Cuando enmascaras un servicio, systemd crea un enlace simbólico desde /etc/systemd/system/<service-name>.service a /dev/null, haciendo que el archivo de unidad del servicio no esté disponible para systemd. Esta es una alternativa más fuerte que disable.
Este mecanismo funciona mejor para los servicios que están definidos en /usr/lib/systemd/system, que es donde los paquetes instalan sus archivos de servicio. El comando mask crea un archivo "vacío" de anulación en /etc/systemd/system. Sin embargo, como has descubierto, si intentas enmascarar un servicio que creaste directamente en /etc/systemd/system (como nuestro mytest.service), el comando puede fallar porque está diseñado para no sobrescribir un archivo de configuración existente, lo que causaría pérdida de datos.
Para demostrar el enmascaramiento correctamente, usaremos un servicio preexistente, atd.service.
Primero, verifiquemos el estado actual de atd.service. Debería estar activo y habilitado.
systemctl status atd.service
La salida será similar a esta, mostrando que el servicio está activo y en ejecución:
● atd.service - Deferred execution scheduler
Loaded: loaded (/usr/lib/systemd/system/atd.service; enabled; preset: enabled)
Active: active (running) since Tue 2025-07-22 09:13:06 CST; 22min ago
Docs: man:atd(8)
Main PID: 1222 (atd)
Tasks: 1 (limit: 22509)
Memory: 900.0K
CPU: 5ms
CGroup: /system.slice/atd.service
└─1222 /usr/sbin/atd -f
Enmascarar un servicio
Es una buena práctica detener un servicio antes de enmascararlo.
sudo systemctl stop atd.service
Ahora, ejecuta el siguiente comando para enmascarar atd.service:
sudo systemctl mask atd.service
Verás una salida que indica la creación de un enlace simbólico a /dev/null:
Created symlink /etc/systemd/system/atd.service → /dev/null.
Ahora, intenta iniciar el servicio enmascarado:
sudo systemctl start atd.service
Recibirás un mensaje de error, indicando que el servicio está enmascarado:
Failed to start atd.service: Unit atd.service is masked.
También puedes verificar el estado del servicio usando systemctl list-unit-files:
systemctl list-unit-files --type=service | grep atd.service | tee ~/project/atd-mask-state.txt
La salida debería mostrar masked para atd.service:
atd.service masked enabled
Esto confirma que el servicio ahora está enmascarado y no se puede iniciar.
Desenmascarar un servicio
Para desenmascarar un servicio, utiliza el comando systemctl unmask. Este comando elimina el enlace simbólico a /dev/null, restaurando el archivo de servicio original desde /usr/lib/systemd/system.
Ejecuta el siguiente comando para desenmascarar atd.service:
sudo systemctl unmask atd.service
Verás una salida que indica la eliminación del enlace simbólico:
Removed "/etc/systemd/system/atd.service".
Después de desenmascarar, inicia el servicio nuevamente porque unmask solo elimina el enlace a /dev/null y no reinicia el servicio por ti.
sudo systemctl start atd.service
Ahora, verifica el estado del servicio:
systemctl status atd.service
Deberías ver Active: active (running), similar a esto:
● atd.service - Deferred execution scheduler
Loaded: loaded (/usr/lib/systemd/system/atd.service; enabled; preset: enabled)
Active: active (running) since Tue 2025-07-22 09:36:10 CST; 2s ago
Docs: man:atd(8)
Main PID: 7372 (atd)
Tasks: 1 (limit: 22509)
Memory: 868.0K
CPU: 6ms
CGroup: /system.slice/atd.service
└─7372 /usr/sbin/atd -f
Esto concluye el laboratorio sobre el control de servicios y demonios. Has aprendido cómo visualizar, iniciar, detener, reiniciar, recargar, habilitar, deshabilitar, enmascarar y desenmascarar servicios usando systemctl.
Resumen
En este laboratorio, obtuvimos experiencia práctica en la gestión de servicios del sistema de control utilizando el comando systemctl, incluso dentro de un entorno contenerizado donde systemd podría no ser el sistema de inicio principal. Aprendimos cómo listar todas las unidades de servicio cargadas y activas usando systemctl list-units --type=service, comprendiendo las columnas UNIT, LOAD, ACTIVE y SUB para interpretar los estados de los servicios.
Además, exploramos operaciones esenciales de gestión de servicios: verificar el estado de un servicio específico con systemctl status y controlar el ciclo de vida del servicio iniciando, deteniendo y reiniciando servicios. También cubrimos cómo recargar configuraciones de servicios, habilitar y deshabilitar servicios para controlar su comportamiento al arrancar, y los conceptos avanzados de enmascaramiento y desenmascaramiento de servicios para evitar que se inicien. Este conjunto integral de habilidades proporciona una base sólida para gestionar servicios en sistemas RHEL.



