Tanto en sistemas Windows como Linux se pueden automatizar scripts o aplicaciones para que se inicien en el arranque del sistema o en el inicio de sesión de usuario.
Comentaré varias opciones para realizar este proceso, tanto en sistemas MS Windows como en distribuciones Linux.
En Windows
Se pueden añadir ficheros binarios o scripts en el inicio del sistema o inicio de sesión de usuario de diferentes maneras.- Creando un valor de cadena y estableciendo la ruta del script batch en la clave de registro: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run.
- Ubicando el script o binario ejecutable del software en la carpeta para la ejecución de inicio del sistema: C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp.
- Mediante una directiva local de Windows (GPO): https://technet.microsoft.com/es-es/library/cc770556(v=ws.11).aspx.
- Con una tarea programada de Windows (taskschd.msc), estableciendo como desencadenador el "Inicio del sistema" o "Inicio de sesión" y en acciones introducir el path de ubicación del script .bat. https://technet.microsoft.com/es-es/library/cc748841(v=ws.11).aspx
En Linux
Al igual que Windows, hay varias formas de hacer que un script o aplicación se ejecute en el inicio del sistema. Una de ellas es haciendo uso del fichero /etc/rc.local. Este fichero se ejecuta en el inicio de sesión del usuario. Se ejecuta en el último nivel una vez iniciado el sistema.Establecemos permisos de ejecución al fichero o programa
sudo chmod +x [script.sh_o_aplicacion]Añadimos el path de ubicación del fichero como una línea al final del fichero /etc/rc.local. De este modo se ejecutará automáticamente en los próximos inicios de sesión. Esto lo haremos desde un superusuario (root) que tiene permisos de escritura sobre el fichero /etc/rc.local.
También se podría hacer de forma manual editando el propio fichero /etc/rc.local.
sudo suOtra opción sería establecer el script.sh o el programa como un servicio del sistema a través del directorio /etc/init.d/. De este modo se iniciará según el sistema se inicie, como si fuese un servicio más.
echo [path_script.sh_o_aplicacion] >> /etc/rc.local
Movemos el script.sh o programa al directorio /etc/init.d/. Establecemos permisos de ejecución sobre el fichero y actualizamos el update-rc.d.
sudo mv [path_script.sh_o_aplicacion] /etc/init.d/Si estamos trabajando con un script .sh y al ejecutar el último comando de actualización de update-rc.d nos diese algún/os error/es del tipo "insserv: missing ...".
sudo chmod +x /etc/init.d/[script.sh_o_aplicacion]
sudo update-rc.d [script.sh_o_aplicacion] defaults
Tendríamos que referenciar en modo de comentarios los siguientes parámetros en el propio fichero del script.
#!/bin/bashSaludos!
### BEGIN INIT INFO
# Provides: descripción
# Required-Start: $syslog
# Required-Stop: $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: descripción
# Description: descripción
### END INIT INFO
[SCRIPT AQUÍ]
No hay comentarios
Publicar un comentario