Существует несколько способов достижения этого, но вам понадобятся права root для любых следующих. Для того, чтобы получить корень, откройте терминал и выполните команду:
sudo su
и командная строка изменится на «#», указывая, что терминал сеанс имеет привилегии суперпользователя.
Альтернатива №1. Добавить Стартовый скрипт
Создайте новый скрипт в /etc/init.d/myscript
:
vi /etc/init.d/myscript
(Очевидно, что это не будет называться «MyScript».) В этом сценарии, делать все, что вы хотите сделать. Может быть, просто запустить скрипт, который вы упомянули:
#!/bin/sh
/path/to/my/script.sh
сделать его исполняемым:
chmod ugo+x /etc/init.d/myscript
Настройка системы инициализации для запуска этого скрипта при запуске:
update-rc.d myscript defaults
Альтернатива 2 #. Добавление команд в /etc/rc.local
vi /etc/rc.local
с содержанием, как следующее:
# This script is executed at the end of each multiuser runlevel
/path/to/my/script.sh || exit 1 # Added by me
exit 0
Вариант № 3. Добавить Upstart работу
Создать /etc/init/myjob.conf
:
vi /etc/init/myjob.conf
со следующим содержанием:
description "my job"
start on startup
task
exec /path/to/my/script.sh
КСТАТИ:
Вам не нужно быть суперпользователем, если вы можете изменить ваш crontab (crontab -e)
и создать запись примерно такая:
@reboot /path/to/script.sh
Таким образом, вы можете запускать его как обычного пользователя. @reboot просто означает, что он запускается при запуске компьютера (не обязательно, когда он перезагружен).
В среде systemd служба является лучшим вариантом для запуска ваших scritp/программ. Обратите внимание, что вы можете установить другие параметры при запуске службы и добавлении зависимостей. –