LINUX.ORG.RU

Очевидно, добавить его вызов в rc.local или что там в gentoo вместо него.

Stanson ★★★★★ ()

Кинь его в /etc/local.d с именем xxx.start

hateyoufeel ★★★★★ ()

А ты под системд сидишь или на openrc? Как идеологически правильно не знаю, но в зависимости от ответа, способ будет различаться, imho.

TuxR ★★★★ ()
Ответ на: комментарий от Pinkbyte

Скрипты в этой папке разве не посреди загрузки будут выполняться (со стартом local)? Мне нужно небольшой костыльный скрипт выполнять после полной загрузки системы, local.d подойдет?

MahMahoritos ★★★ ()
Ответ на: комментарий от MahMahoritos

не посреди загрузки будут выполняться (со стартом local)?

Да, они будут выполнены со стартом local.

Теперь идем и читаем секцию depend в /etc/init.d/local:

after *

Читается как «запустить самым последним».

То есть /etc/init.d/local будет запущен ПОСЛЕ всех других демонов.

Pinkbyte ★★★★★ ()
Ответ на: комментарий от WatchCat

а если у меня самопальный инит скрипт для запуска какого нибудь игрового сервера который я тоже хочу запускать в самом конце?

TDrive ★★★★★ ()

Crontab с параметром reboot? Хз правда насколько это идеологически правильно.

vanoc ()
Ответ на: комментарий от WatchCat

И его можно будет так же перезагружать? отключить когда он не нужен? другие всякие специфичные команды выполнять для управления?

TDrive ★★★★★ ()
Ответ на: комментарий от TDrive

Не совсем.
Если ты хочешь полноценный инит-скрипт, то делать надо так:
1. сам init-скрипт в /etc/init.d/
2. в /etc/local.d создаётся файлик с именем, например, mycooldaemon.start
со строчкой /etc/init.d/mycooldaemon start
и mycooldaemon.stop
со строчкой /etc/init.d/mycooldaemon stop
3. ????
4. PROFIT

Если потом надо будет в ручную остановить, то rc-service mycooldaemon stop поможет тебе в этом.

WatchCat ★★★★★ ()
Ответ на: комментарий от WatchCat

Во первых это уже костыли какието.

Во вторых, вот смотри, есть два инит скрипта с after * которые запускаются хрен знает в каком порядкея (помойму по алфавиту, зависит от системы инициализации) и есть 2 скрипта в /etc/local.d которые тоже запускаются в хрен знает каком порятке (тут уже зависит от local service)
В чем принципиальная разница?

TDrive ★★★★★ ()
Ответ на: комментарий от TDrive

(помойму по алфавиту, зависит от системы инициализации)

Мы же вроде смотрим openrc или уже что-то другое?

В чем принципиальная разница?

Порядок в init.d не определён. В случае rc_parallel=«yes» вообще могут одновременно запуститься.
В local он берёт скрипты в алфавитном порядке. Читай README в local.d

Во первых это уже костыли какието.

С чего это костыли?

WatchCat ★★★★★ ()
Ответ на: комментарий от WatchCat

Порядок в init.d не определён.

Определен, алфавитный.

В случае rc_parallel=«yes» вообще могут одновременно запуститься.

возможно, не знаю

С чего это костыли?

С того что это не очевидно, так сказать, через ж.

TDrive ★★★★★ ()
Ответ на: комментарий от WatchCat

Суть в том что все процессы с after * не должны зависить друг от друга, это можно читать как «хз какие там зависимости но если запускать в конце то будет ок». Если есть зависимость ее просто надо четко прописать в after и не придумывать всяких костылей со скриптами инициализации которые запускают другие скрипты инициализации которые запускают тетьи скрипты инициализации... это велосипеденье системы зависимостей которая уже есть.

TDrive ★★★★★ ()
Ответ на: комментарий от MahMahoritos

Мне нужно небольшой костыльный скрипт выполнять после полной загрузки системы

это от DE зависит. В какой-нибудь «автозапуск»

Как идеологический правильно выполнить скрипт от рута в конце загрузки?

1. это само по себе неправильно

2. если очень хочется, пропиши в sudoers с NOPASSWD свой скрипт. Правда тогда твой юзер может его исполнять когда захочет. Но можно прописать так, что-бы _только_ этот скрипт можно было выполнять.

emulek ()
Ответ на: комментарий от TDrive

Определен, алфавитный.

Чё?
Порядок запуска в openrc определяется зависимостями а не алфавитным порядком.

возможно, не знаю

Я у тебя не спрашиваю, так ли это.
То что ты не знаешь и так понятно.


Ты определись чего ты хочешь.
Тебе шашечки или ехать?

WatchCat ★★★★★ ()
Ответ на: комментарий от WatchCat

Порядок запуска в openrc определяется зависимостями а не алфавитным порядком.

Если зависимости не дают четких указаний в каком порядке запускать (как если 2 скрипта с after *) то по алфавиту.

Ты определись чего ты хочешь.
Тебе шашечки или ехать?

Я не ТС если ты не заметил, и давно уже со всем определился, а тут занимаюсь просветительской деятельность.)

TDrive ★★★★★ ()
Ответ на: комментарий от emulek

Там нет DE. На сервере рандомно при загрузке не собирается один из RAID1 массивов, хочу запилить скрипт, проверяющий, собрался ли массив, если нет - скрипт пересобирает его и монтирует, а мне шлет весточку с логами.

MahMahoritos ★★★ ()
Ответ на: комментарий от MahMahoritos

Там нет DE.

тогда в /etc/rc.local

Этот файл выполняется как раз в конце загрузки, но перед загрузкой DE или логином(если нет DE, точнее *DM).

emulek ()
Ответ на: комментарий от MahMahoritos

если нет - скрипт пересобирает его и монтирует

не. Тут не rc.local нужен, а то, что выполняет mount для монтирования локальных ФС. У меня в слаке это /etc/rc.d/rc.S

emulek ()
Ответ на: комментарий от TDrive

а тут занимаюсь просветительской деятельность.)
возможно, не знаю

Ну-ну.

Если зависимости не дают четких указаний в каком порядке запускать (как если 2 скрипта с after *) то по алфавиту.

Внезапно, это не задокументировано.

WatchCat ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.