debian /etc/init.d/ пример скрипта. Выполнить bash скрипт после перезагрузки системы
Primary tabs
Как должен выглядеть файл скрипта
Чтобы уровни запуска подхватились правильно скрипту нужен специально оформленный закомментированный заголовок (см. примеры).
Добавляем в автозапуск
Предположим, что ваш файл называется upscript.sh тогда сохраните его в директорию:
/etc/init.d/
И затем выполните команды:
chmod ugo+x /etc/init.d/upscript.sh update-rc.d upscript.sh defaults
(права на выполнение и добавление в автозапуск)
Проверка добавления в автозагрузку
update-rc.d может выдать предупреждение с локалью, а-ля:
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
........
are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").
(можно попробовать решить так)
-- главное, чтобы update-rc.d добавил ссылку на ваш скрипт, для этого поищем по файлам ссылок:
ls /etc/rc*.d
или сразу с именем вашего скрипта, напр. для скрипта upscript.sh:
ls /etc/rc*.d | grep upscript.sh
-- по-идее фильтр по имени скрипта должен вернуть столько ссылок, сколько у вас в сумме перечислено номеров уровня запуска в опциях Default-Start и Default-Stop заголовка.
Если по какой-либо причине это не так, исправьте ваш скрипт (особенно обратите внимание на заголовок с перечисляемыми уровнями выполнения) и чтобы заново добавить в автозапуск скрипт выполните две команды:
update-rc.d docker-up.sh remove update-rc.d docker-up.sh defaults
-- тут придется явно предварительно удалить все ссылки, иначе новые изменения не применятся.
Источники:
- update-rc.d - install and remove System-V style init script links: https://manpages.debian.org/testing/init...
- LSBInitScripts: https://wiki.debian.org/LSBInitScripts
- Log in to post comments
- 3217 reads