Servicio systemctl start/stop: Cómo configurar Upstart Script y Respawn Process en Ubuntu, CentOS, Redhat Linux

Publicado: 2021-06-09

Linux systemd advenedizo - secuencia de comandos advenedizo

¿Cómo escribir un script de inicio para systemd?

systemd es la última service management utility en todas las versiones más recientes de la distribución de Linux, como Ubuntu OS, Redhat OS, CentOS.

Es por eso que la versión Ubuntu 17.4 y Redhat 7.4 ahora es compatible systemctl command como un script advenedizo. Si tiene una versión anterior del sistema operativo Linux, es posible que deba consultar la parte inferior de esta página para ver init.d script anterior.

Vamos a discutir las cosas a continuación en este tutorial.

  • Configuración de la unidad de servicio systemd
  • ¿Cómo configure systemd?
  • ¿Cómo enable systemd?
  • ¿Cómo iniciar el proceso automáticamente usando systemd?
  • ¿Cómo detener y respawn el proceso usando systemd?

Pasos de configuración para este tutorial:

Prerequisite: hemos compilado la versión del programa CrunchifyAlwaysRunningProgram.java en la carpeta /tmp/crunchify . Este proceso Java seguirá ejecutándose en segundo plano para siempre. Puede descargar el programa desde aquí.

Una vez que lo descargue, try to compile y ejecutarlo para asegurarse de que funciona.

Puede escribir CTRL + C para salir del programa.

Ahora comencemos a configurar el script de inicio automático de systemd para el programa anterior.

Paso 1

  • Ir a la carpeta /lib/systemd/system
  • Escriba cd /lib/systemd/system

Paso 2

  • cree el archivo crunchify.service (cambie el nombre del archivo en consecuencia)
  • poner debajo del contenido en él

Paso 3

  • Guardar el archivo
  • Proporcione permiso de ejecución usando chmod 755 crunchify.service

Etapa 4

  • Cargue crunchify.service usando el comando systemctl daemon-reload
  • Habilite crunchify.service usando el comando systemctl enable crunchify.service
  • Inicie crunchify.service usando el comando systemctl start crunchify
  • Verifique el estado de crunchify.service usando el comando systemctl status crunchify

Paso-5

  • ¿Ahora verifique si el proceso se está ejecutando o no?
  • Escriba el comando ps -few | grep java ps -few | grep java para ver todos los procesos de Java en ejecución
  • Debería ver algo como esto

Eso significa que el proceso 28631 está comenzando a usar su script advenedizo. Es posible que tenga un ID de proceso diferente.

¿Cómo verificar si su systemd crunchify.service está funcionando o no?

  • Intente matar el proceso usando kill -9 28631 y debería ver que se debe crear un nuevo proceso automáticamente.
  • En mi caso, se creó el nuevo proceso ID 28887

Video: ejemplo completo de configuración de secuencia de comandos upstart de systemd en vivo:

Este video contiene: ¿Cómo configurar el script de inicio/upstart de systemd en CentOS, Redhat, Ubuntu Linux OS?

  • Cómo ejecutar automáticamente el script de shell en el arranque de inicio
  • Cómo crear un servicio systemd en Linux (CentOS 7)
  • ¿Cómo configurar un servicio de Linux para que se inicie automáticamente?
  • Script de inicio del sistema Centos 7
  • Script de inicio del sistema Ubuntu

¿Quieres saber más sobre systemd? Aquí hay una hoja de trucos para su referencia.

Hoja de referencia de comandos de Linux Systemd

Espero que aprenda everything about systemd command y la configuración de secuencias de comandos upstart en todos los tipos de sistemas operativos Linux.

DETENER: SOLO para versiones anteriores del sistema operativo

Si está ejecutando una older version de Redhat, Ubuntu, CentOS, necesitará tener un script en este formato.

  • Ir a /etc/init
  • Crear archivo crunchify.conf

  • Simplemente inicie el servicio usando el service crunchify start
  • Siga los mismos pasos de verificación que arriba

Avíseme si ve algún problema al ejecutar el script advenedizo en su entorno. Disfruta tu día y feliz codificación.