Cómo ejecutar automáticamente los comandos/scripts durante el reinicio o el inicio

Cómo ejecutar automáticamente los comandos/scripts durante el reinicio o el inicio

Siempre estoy fascinado por las cosas que suceden detrás de escena cuando arranque un sistema de Linux e inicio sesión. Al presionar el botón de encendido en un metal desnudo o iniciar una máquina virtual, pone en marcha una serie de eventos que conducen a un sistema completamente funcional, a veces en menos de un minuto. Lo mismo es cierto cuando inicia sesión y / o apagan el sistema.

Lo que hace que esto sea más interesante y divertido es el hecho de que puede hacer que el sistema operativo ejecute ciertas acciones cuando arranca y cuando inicie sesión o inicio de sesión.

En este artículo de distribución-agnóstico discutiremos los métodos tradicionales para lograr estos objetivos en Linux.

Nota: Asumiremos el uso de Intento como shell principal para eventos de inicio de sesión y cierre de sesión. Si usa uno diferente, algunos de estos métodos pueden funcionar o no. En caso de duda, consulte la documentación de su shell.

Ejecución de scripts de Linux durante el reinicio o el inicio

Hay dos métodos tradicionales para ejecutar un comando o ejecutar scripts durante el inicio:

Método #1 - Use un trabajo cron

Además del formato habitual (minuto / hora / día del mes / mes / día de la semana) que se usa ampliamente para indicar un cronograma, el cron programador también permite el uso de @reiniciar. Esta directiva, seguida de la ruta absoluta hacia el script, hará que se ejecute cuando la máquina arranca.

Sin embargo, hay dos advertencias para este enfoque:

  1. a) El demonio cron debe estar funcionando (que es el caso en circunstancias normales), y
  2. b) El script o el archivo CRONTAB debe incluir las variables de entorno (si las hay) que se necesitarán (consulte este hilo de stackoverflow para obtener más detalles).

Método #2 - Use /etc /rc.D/RC.local

Este método es válido incluso para distribuciones basadas en Systemd. Para que este método funcione, debe otorgar permisos de ejecución a /etc/rc.D/RC.local como sigue:

# chmod +x /etc /rc.D/RC.local 

y agregue su script en la parte inferior del archivo.

La siguiente imagen muestra cómo ejecutar dos scripts de muestra (/Home/Gacanepa/Script1.mierda y /Home/Gacanepa/Script2.mierda) usando un cron trabajo y RC.local, respectivamente, y sus respectivos resultados.

script1.SH:
#!/bin/bash fecha = $ (fecha +'%f%h:%m:%s') dir =/home/gacanepa echo "fecha y hora actuales: $ date"> $ dir/file1.TXT 
script2.SH:
#!/bin/bash sitio = "tecmint.com "dir =/home/gacanepa echo" $ sitio rocas ... agrégenos a sus marcadores."> $ Dir/file2.TXT 
Ejecutar scripts de Linux al inicio

Tenga en cuenta que ambos scripts deben recibir permisos de ejecución previamente:

$ chmod +x/home/gacanepa/script1.sh $ chmod +x/home/gacanepa/script2.mierda 

Ejecución de scripts de Linux al inicio de sesión y el inicio de sesión

Para ejecutar un script al inicio de sesión o inicio de sesión, use ~.bash_profile y ~.bash_logout, respectivamente. Lo más probable es que necesite crear el último archivo manualmente. Simplemente suelte una línea invocando su guión en la parte inferior de cada archivo de la misma manera que antes y estará listo para comenzar.

Resumen

En este artículo hemos explicado cómo ejecutar el script en el reinicio, el inicio de sesión y el inicio de sesión. Si puede pensar en otros métodos que podríamos haber incluido aquí, no dude en usar el formulario de comentarios a continuación para señalarlos. Esperamos con interés escuchar de usted!