Cómo ejecutar automáticamente el script de shell al arranque de inicio en Systemd Linux

Cómo ejecutar automáticamente el script de shell al arranque de inicio en Systemd Linux

La siguiente configuración discutirá un ejemplo básico sobre cómo ejecutar script de shell durante un tiempo de arranque en Systemd Linux. Quizás hay varias razones por las que es posible que desee ejecutar script de shell durante el inicio de Linux, como, por ejemplo, para iniciar un servicio personalizado en particular, verificar el espacio de disco, crear una copia de seguridad, etc.

El siguiente ejemplo a continuación servirá como una plantilla básica para ser modificada más tarde para satisfacer sus necesidades específicas. En el siguiente ejemplo veremos un espacio en disco de un /hogar/ directorio durante una hora de arranque y escriba un informe para /raíz/ directorio.

Unidad de servicio Systemd

Primero, necesitamos crear un script de inicio de Systemd, por ejemplo,.comprobar el disco.servicioy colóquelo en /etc/systemd/system/ directorio. Puede encontrar el ejemplo de dicho script de inicio de Systemd a continuación:

[Unidad] después = mysql.servicio [servicio] execstart =/usr/local/bin/disk-space-check.sh [install] WantedBy = predeterminado.objetivo 
  • Después: instruye a Systemd sobre cuándo se debe ejecutar el script. En nuestro caso, el script se ejecutará después de que haya comenzado la base de datos mySQL. Otro ejemplo podría ser red.objetivo etc.
  • Execstart: este campo proporciona una ruta completa en que se ejecutará el script real
  • Wantedby: en el objetivo de arranque se debe instalar la unidad Systemd

Lo anterior es un mínimo absoluto que nuestra unidad de servicio Systemd debe contener para ejecutar nuestro script en el momento de arranque. Para obtener más información y opciones que se utilizarán, ver system.servicio Página manual:

$ hombre systemd.servicio 

Script de shell de inicio

A continuación, creamos nuestro script de shell personalizado que se ejecutará durante el inicio de Systemd. La ubicación y el nombre del script ya están definidos por la unidad de servicio como /usr/local/bin/disco-space check.mierda. El contenido del script puede ser simple como:

#!/bin/bash fecha>/root/disk_space_report.txt du -sh /home />> /root /disk_space_report.TXT 


Configurar e instalar

Antes de reiniciar nuestro sistema, necesitamos que nuestro script sea ejecutable:

# CHMOD 744/usr/local/bin/disco-space check.mierda 

A continuación, instale la unidad de servicio Systemd y habilitela para que se ejecute en el momento del arranque:

# CHMOD 664/etc/Systemd/System/Disk-Space Check.Servicio # SystemCTL Daemon-Reload # SystemCTL Habilitar el disco-Space Check.Servicio creado Symlink desde/etc/systemd/system/predeterminado.objetivo.deseos/check-space-check.servicio a/etc/systemd/system/disco-space-check.servicio. 

Si desea probar su script antes de reiniciar:

# SystemCTL Start Disk-Space Check.servicio # cat /root /disk_space_report.txt jueves 7 de julio 11:30:25 AEST 2016 1.5G /Inicio / 

Listo. Después de reiniciar su sistema Linux, la unidad Systemd anterior invocará el script de shell para ejecutarse durante el tiempo de arranque.

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
  • Ubuntu 20.04 trucos y cosas que quizás no sepas
  • Descarga de Linux
  • Cosas para instalar en Ubuntu 22.04
  • La mejor distribución de Linux para desarrolladores
  • Cómo imprimir el árbol de directorio usando Linux
  • Sistema colgado de Linux? Cómo escapar a la línea de comando y ..