GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo iniciar, detener y reiniciar servicios en Debian

Los servicios son esencialmente programas que se ejecutan en segundo plano fuera del control interactivo de los usuarios del sistema, ya que carecen de una interfaz. Se ejecutan en segundo plano para usarse siempre que se necesiten.

Algunos de los servicios comúnmente conocidos incluyen Mysql, ssh y Nginx. En Debian, los servicios se administran con Systemd, que reemplaza a System V para inicializar el sistema y sus componentes, incluidos los servicios que son clave para el correcto funcionamiento del sistema operativo.

Algunos de los servicios en las versiones basadas en Debian y Ubuntu que se ejecutan en cada arranque son iniciar, reiniciar, detener y recargar. Este tutorial los cubrirá todos en detalle.

Systemd frente a Init

La distribución basada en Linux hoy en día usa systemd en lugar del viejo init. En systemd, puede administrar servicios usando el comando systemctl, mientras que en init, administra el servicio usando los comandos de servicio.

También notará que aunque su sistema Linux, en este caso, Debian, usa systemd, aún tiene la flexibilidad de utilizar el comando de servicio destinado a los sistemas init. Esto es así porque los comandos de servicio redirigen a systemctl. Digamos que es compatibilidad con versiones anteriores introducida por systemd porque los administradores de sistemas solían usar el comando de servicio.

Iniciar, detener y reiniciar servicios en Debian 11

No se preocupe por los servicios de administración, ya que este artículo cubrirá los comandos systemctl y service. Sin más preámbulos, pongámonos en marcha.

Método 1:Uso de Systemctl

El comando systemctl es un conjunto de demonios systemd que se utiliza para administrar los servicios y demonios de Linux representados por la última "d" en el nombre systemd. Esta "d" apareció debido a los demonios de Unix diseñados para ser compatibles con versiones anteriores de los scripts de inicio de SysV y ofrecen varias funciones, como el inicio paralelo de los servicios del sistema en el momento del arranque, la activación de demonios bajo demanda o la lógica de control de servicios basada en dependencias. Su objetivo es unificar la configuración y los comportamientos generales de todas las distribuciones basadas en Linux, reemplazando los antiguos sistemas de inicio Unix SystemV y BSD.

1. Listado de todos los servicios

Antes de ver cómo iniciar, detener y reiniciar servicios en nuestra máquina Debian usando el comando systemctl, primero debemos conocer los servicios disponibles en su sistema. Como tal, utilizaremos el comando list para listar todos los servicios en nuestro sistema Linux:

systemctl list-unit-files --type service -all

Como se ve, el comando anterior genera el tipo de servicio y su estado. El valor de un estado de servicio puede estar habilitado, enmascarado (inactivo hasta que se desactive la máscara), deshabilitado, generado o estático.

Para generar solo servicios en ejecución, puede combinar el comando systemctl con el comando grep, y debería estar listo para comenzar.

sudo systemctl | grep running

El comando systemctl se utiliza para iniciar, comprobar el estado, detener y reiniciar servicios siguiendo las sintaxis de la siguiente tabla:

2. Iniciar un servicio

Para iniciar un servicio usando el comando systemctl, utilice la opción de inicio. Esta opción es luego seguida por el nombre del servicio que desea iniciar. Como tal, utilice la siguiente sintaxis:

systemctl start (ServiceName)

Después de eso, reemplazará (ServiceName) con el servicio real que desea iniciar, como en nuestro caso, queremos iniciar el servicio vsftpd.

sudo systemctl start vsftpd.service

Como se ve arriba, el servicio está en funcionamiento.

3. Estado de un servicio

Como se vio anteriormente en la tabla anterior, la sintaxis para verificar el estado del servicio es la siguiente:

systemctl status (ServiceName)

Por lo tanto, utilizaremos la sintaxis mientras reemplazamos (ServiceName) con los valores apropiados. Para verificar el estado del servicio vsftpd, puede ejecutar el siguiente comando:

sudo systemctl status vsftpd.service

En la instantánea a continuación, debería ver que el servicio ssh está activo y funcionando correctamente

4. Detener un servicio

Ahora, analicemos cómo detener el servicio. Para ello utilizaremos la opción stop del comando systemctl que va seguida del nombre del servicio que queremos detener. detener un servicio sigue la siguiente sintaxis:

sudo systemctl stop (ServiceName)

Por ejemplo, para detener el servicio vsftpd que se está ejecutando actualmente, ejecute el siguiente comando:

sudo systemctl stop vsftpd.service

Después de ejecutar el comando de parada, debería ver que el botón previamente activo ha cambiado a inactivo (muerto).

5. Reiniciar un servicio

Para reiniciar un servicio usando el comando systemctl, utilizaremos la opción "reiniciar". Similar a los ejemplos anteriores, esta opción también va seguida del nombre del servicio que desea reiniciar, como se muestra en la siguiente sintaxis:

sudo systemctl restart (ServiceName)

Luego reemplace (ServiceName) con el servicio real que desea reiniciar, en nuestro caso, "vsftpd".

sudo systemctl restart vsftpd.service

Y así es como se reinician los servicios usando Systemd.

Puede visitar este enlace para obtener más información sobre Systemd.

Método 2:Usar el comando de servicio

El comando de servicio administra los servicios en el directorio /etc/init.d, aunque algunas distribuciones redirigen el comando al comando systemctl explicado anteriormente. El comando de servicio es parte del demonio init comúnmente utilizado en distribuciones anteriores de sistemas Linux para administrar servicios.

Al igual que systemctl, el comando de servicio también se puede usar para verificar el estado, iniciar, reiniciar y detener servicios siguiendo la sintaxis descrita en la siguiente tabla:

ACCIÓN COMANDO
Comprobar el estado del servicio estado systemctl (NombreServicio)
Iniciar un servicio inicio systemctl (NombreServicio)
Detener un servicio sudo systemctl stop (NombreServicio)
Reiniciar un servicio sudo systemctl restart(ServiceName)

La siguiente sección muestra ejemplos de cómo aplicar las sintaxis en la tabla anterior

1. Iniciar servicio

Ahora analicemos cómo iniciar un servicio. Para lograr esto, usaremos la opción de inicio del comando de servicio. Esta opción viene después del nombre del servicio que desea ejecutar. Esta es la sintaxis:

sudo service (ServiceName) start

Por ejemplo, si vamos a iniciar un servicio llamado ssh, reemplazaremos (ServiceName) con el servicio real que se pretende iniciar, como en nuestro caso, “vsftpd”.

sudo service vsftpd start

2. Consultar el estado de un servicio

Utilice la siguiente sintaxis para comprobar el estado de un servicio:

sudo service (ServiceName) status

Si, por ejemplo, queremos ejecutar una verificación de estado de un servicio como vsftpd usando el comando de servicio, tendremos que reemplazar la sintaxis (ServiceName) con el nombre vsftpd como se muestra a continuación:

sudo service vsftpd status

3. Detener un servicio

Ahora veamos cómo detener el servicio. Para ello, utilizaremos la opción stop precedida del nombre del servicio que deseamos detener. Esta es la sintaxis:

sudo service (ServiceName) stop

Después de eso, reemplace (ServiceName) con el servicio real que desea detener como, en nuestro caso, "vsftpd":

sudo service vsftpd stop

Como se ve, el servicio ahora lee Inactivo (muerto) después de ejecutar el comando de detención, lo que significa que está funcionando según lo previsto.

4. Reiniciar un servicio

Probemos los servicios de reinicio usando el comando de servicio que sigue la siguiente sintaxis:

sudo service (ServiceName) restart

Reemplazar:

sudo service vsftpd restart

Como se ve, los comandos del servicio funcionan correctamente como queríamos.

Además, puede utilizar el siguiente comando para recargar una configuración de servicio sin interrumpir el servicio en sí.

sudo service vsftpd reload

Puede visitar este enlace para obtener más información sobre el comando de servicio.

Cómo habilitar un servicio en el arranque

En caso de que desee habilitar un servicio de Debian para que se inicie cuando se inicie el sistema, utilice la siguiente sintaxis:

sudo systemctl enable SERVICE_NAME

Reemplazar:

sudo systemctl enable vsftpd.service

Cómo deshabilitar el servicio en el arranque

También puede detener el inicio del servicio durante el arranque del sistema usando la siguiente sintaxis:

sudo systemctl disable SERVICE_NAME

Por ejemplo:

sudo systemctl disable vsftpd.service

Conclusión

Los servicios son componentes vitales de cualquier dispositivo; por lo tanto, administrarlos es imprescindible para cualquier usuario de nivel Linux. Esta guía muestra que la administración de servicios es bastante sencilla y se puede realizar a través de diferentes métodos. Tenga cuidado de recordar que el método ideal y recomendado para llevar a cabo la tarea del servicio en Linux es el comando systemctl que explicamos anteriormente en la primera sección de esta guía. Otros métodos como tratar con el directorio /etc/init.d están obsoletos.

Este tutorial ha explicado la funcionalidad de iniciar, reiniciar, detener y verificar el estado del servicio, pero eso no te limita a aprender funciones adicionales de sus páginas oficiales. Siga siguiendo FOSS Linux para obtener más guías relacionadas con Linux.


Debian
  1. Servicios de inicio, detención y reinicio en el servidor systemd RHEL 7 Linux

  2. Cómo iniciar, detener y reiniciar servicios en un servidor dedicado Linux

  3. Iniciar, detener o reiniciar servicios en CentOS 8 - ¿Proceso paso a paso?

  4. Debian – ¿Cómo apagar y reiniciar Dirmngr?

  5. Iniciar, detener y reiniciar Crond Daemon en Linux

Cómo iniciar, detener o reiniciar servicios en CentOS 8

Cómo iniciar, detener y reiniciar servicios en Debian 10

Cómo reiniciar servicios en la línea de comandos de Ubuntu

Cómo iniciar, detener o reiniciar servicios en Ubuntu

Ubuntu:servicios de inicio, parada y reinicio

Cómo iniciar, detener o reiniciar servicios de red en Rocky Linux 8

    ACCIÓN COMANDO
    Reiniciar un servicio systemctl (NombreServicio) inicio
    Consultar estado del servicio estado del servicio sudo (ServiceName)
    Iniciar un servicio inicio del servicio sudo (ServiceName)

    Detener un servicio detención del servicio sudo (ServiceName)