I have a script in a folder:
/path/to/my/script.sh
I need this script to run every time the system starts (even if no one logs in to the system). What do I need to do in order to make this happen?
I have a script in a folder:
/path/to/my/script.sh
I need this script to run every time the system starts (even if no one logs in to the system). What do I need to do in order to make this happen?
You will need root privileges for any the following. To get root, open a terminal and run the command
sudo -i
and the command prompt will change to '#' indicating that the terminal session has root privileges.
/etc/rc.local
vi /etc/rc.local
with content like the following:
# This script is executed at the end of each multiuser runlevel
/path/to/my/script.sh || exit 1 # Added by me
exit 0
Create /etc/init/myjob.conf
vi /etc/init/myjob.conf
with content like the following
description "my job"
start on startup
task
exec /path/to/my/script.sh
Official statement from upstart website -> "Project is in maintaince mode only. No new features are being developed and the general advice would be to move over to another minimal init system or systemd."
Create a new script in /etc/init.d/myscript
.
vi /etc/init.d/myscript
(Obviously it doesn't have to be called "myscript".) In this script, do whatever you want to do. Perhaps just run the script you mentioned.
#!/bin/sh
/path/to/my/script.sh
Make it executable.
chmod ugo+x /etc/init.d/myscript
Configure the init system to run this script at startup.
update-rc.d myscript defaults