GNU/Linux >> Tutoriales Linux >  >> Debian

Debian:¿cómo funcionan los servicios en Debian y cómo puedo administrarlos?

En Windows tengo el administrador de servicios, donde veo todos los servicios del sistema, que se pueden iniciar a través de Windows mismo, configuro el usuario que usa, la administración de derechos está ahí y puedo pasar variables y alguna otra información a los servicios. , puedo nombrarlos y puedo crear servicios duplicados de un programa y así sucesivamente. Así que tengo una herramienta de administración principal en Windows.

¿Cómo puedo hacer lo mismo en Linux? ¿Cómo puedo activar para ejecutar "svnserve" al inicio, o cómo puedo configurar los servicios para que se ejecuten en un contexto especial? ¿Cómo puedo ver todos los servicios "programados"?

Respuesta aceptada:

Actualmente hay 3 sistemas de inicio principales utilizados por Linux. Hace unos años, solo había uno, SysVinit. Pero SysVinit carecía seriamente de capacidades como la representación gráfica de la dependencia del servicio, por lo que ya está obsoleta en la mayoría de las distribuciones. Actualmente, la mayoría de las distribuciones están cambiando a systemd. Aunque también hay advenedizo.

Pero aquí está la respuesta a su pregunta para cada uno de los 3 sistemas de inicio:

SysVinit

SysVinit actualmente utilizado por Debian y RedHat. Aunque la próxima versión de RedHat (7) usará systemd.

La forma universal de habilitar los servicios de SysVinit en el arranque es enlazarlos en /etc/rc3.d (o /etc/rc2.d ). Todos los servicios se pueden encontrar en /etc/init.d . Sin embargo, tenga en cuenta que las distribuciones a menudo tendrán su propia herramienta para administrar estos archivos, y esa herramienta debe usarse en su lugar. (Fedora/RedHat tiene service y chkconfig , ubuntu tiene update-rc.d )

Servicios de lista:

ls /etc/init.d/

Iniciar servicio:

/etc/init.d/{SERVICENAME} start

o

service {SERVICENAME} start

Detener servicio:

/etc/init.d/{SERVICENAME} stop

o

service {SERVICENAME} stop

Habilitar servicio:

cd /etc/rc3.d
ln -s ../init.d/{SERVICENAME} S95{SERVICENAME}

(el S95 se utiliza para especificar el orden. S01 comenzará antes que S02, etc.)

Desactivar servicio:

rm /etc/rc3.d/*{SERVICENAME}

Sistema

La distribución más notable que usa systemd es Fedora. Aunque es utilizado por muchos otros. Además, dado que Debian eligió usar systemd en lugar de advenedizo, se convertirá en el sistema advenedizo de facto para la mayoría de las distribuciones (ubuntu ya ha anunciado que eliminarán advenedizo para systemd).

Servicios de lista:

systemctl list-unit-files

Iniciar servicio:

systemctl start {SERVICENAME}

Detener servicio:

systemctl stop {SERVICENAME}

Habilitar servicio:

systemctl enable {SERVICENAME}

Desactivar servicio:

systemctl disable {SERVICENAME}

Advenedizo

Upstart fue desarrollado por la gente de Ubuntu. Pero después de que Debian decidiera optar por systemd, Ubuntu anunció que dejaría de ser advenedizo.

Upstart también fue utilizado brevemente por RedHat, ya que está presente en RHEL-6, pero no se usa comúnmente.

Relacionado:¿Cómo logra la fecha de coreutil obtener resultados tan extraños?

Servicios de lista:

initctl list

Iniciar servicio:

initctl start {SERVICENAME}

Detener servicio:

initctl stop {SERVICENAME}

Habilitar servicio:

2 maneras desafortunadamente:

  1. Habrá un archivo /etc/default/{SERVICENAME} que contiene una línea ENABLED=... . Cambie esta línea a ENABLED=1 .

  2. Habrá un archivo /etc/init/{SERVICENAME}.override . Asegúrate de que contiene start (o está completamente ausente), no manual .

Desactivar servicio:

echo manual > /etc/init/{SERVICENAME}.override

Nota:También existe el sistema de inicio 'OpenRC' que utiliza Gentoo. Actualmente, Gentoo es la única distribución que lo usa, y no está siendo considerado para su uso ni soportado por ninguna otra distribución. Así que no estoy cubriendo su uso (aunque si la opinión es que lo hago, puedo agregarlo).


Debian
  1. Cómo administrar y enumerar servicios en Linux

  2. Cómo administrar los servicios de Systemd con Systemctl en Linux

  3. Cómo usar el comando Systemctl para administrar los servicios de Systemd

  4. Cómo instalar Suricata en Debian 11

  5. ¿Cómo puedo reiniciar servicios en servidores cPanel?

Cómo instalar y configurar Monit en Debian 9

Cómo instalar y usar Monit en Debian 9 / Ubuntu 16.04

Cómo iniciar, detener y reiniciar servicios en Debian

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

Cómo instalar Icinga 2 en Debian 8

Cómo instalar y administrar Java en Debian 11