Las distribuciones de Linux se están alejando de sus antiguos procesos de inicio de estilo System V a un mecanismo más nuevo, el daemon systemd y su herramienta de línea de comandos systemctl asociada. Los servicios administrados por systemd/systemctl requieren, como mínimo, un archivo de configuración que defina los procesos de inicio y apagado, una definición de tipo que controle cómo el sistema operativo manejará esos procesos y los ejecutables necesarios para iniciar o detener los procesos de servicio.
En la mayoría de las distribuciones nuevas que usan el sistema, administraríamos los procesos usando el comando systemctl. Los desarrolladores de Linux también han dejado soporte para el comando de servicio; si intentamos finalizar un proceso usando el comando de servicio, veremos que en realidad va a redirigir nuestra solicitud al comando systemctl.
Si encuentra el siguiente error al ejecutar cualquier comando systemctl:
systemctl: command not found
puede intentar instalar el paquete systemd según su elección de distribución.
Distribución | Comando |
---|---|
Debian | apt-get install systemd |
Ubuntu | apt-get install systemd |
Arco Linux | pacman-S systemd |
Kali Linux | apt-get install systemd |
Cent OS | yum instalar systemd |
Fedora | dnf instalar systemd |
Raspbian | apt-get install systemd |
Archivos de configuración
- /usr/lib/systemd/system/ :Contiene archivos de unidad predeterminados del sistema.
- /etc/systemd/sistema :contiene parámetros específicos del sistema para modificar el comportamiento predeterminado de systemd.
- /ejecutar/systemd/system/ :Contiene la configuración de tiempo de ejecución de los archivos de la unidad.
Ejemplos de comandos systemctl
1. Ver estados de servicio con systemctl:
# systemctl status sshd.service
Estado | Descripción |
---|---|
Cargado | El archivo de configuración de la unidad se procesó correctamente |
Activo (en ejecución) | Ejecución con uno o más procesos activos |
Activo (salido) | Se completó con éxito una configuración única |
Activo (en espera) | Corriendo y esperando que ocurra un evento |
Inactivo | No se está ejecutando actualmente |
Habilitado | Comenzará en el momento del arranque |
Deshabilitado | No se iniciará en el momento del arranque |
Estático | No se puede habilitar directamente, pero puede ser iniciado automáticamente por otra unidad habilitada |
2. Muestra el estado de todas las diferentes unidades que están activas y cargadas al inicio:
# systemctl
3. Muestra el estado de las unidades de servicio que están activas:
# systemctl --type=service
o
# systemctl list-units --type=service
4. Muestra el estado de todas las unidades de servicio cargadas, ya sean activas o inactivas:
# systemctl --type=service –all
o
# systemctl list-units --type=service --all
5. Muestra todos los servicios que fallaron:
# systemctl --failed --type=service
6. Muestra si el servicio en particular está actualmente activo o no:
# systemctl is-active sshd
7. Muestra si el servicio en particular está habilitado para iniciarse en el momento del arranque o no:
# systemctl is-enabled sshd
8. Muestra la configuración habilitada, deshabilitada o estática de todas las unidades del tipo especificado:
# systemctl list-unit-files --type=service
9. Muestra información de estado detallada sobre el servicio especificado:
# systemctl status sshd.service -l