Нужно ли такое?
Секция [user-mod] не является основной. Но при помощи неё администратор системы может привязать старт демона к таким условиям и событиям как наличие определённых файлов, монтирование каталогов, подключение usb устройств, дисков и сетевых соединений Такой механизм как проверка наличия файла позволяет так же усложнять условия при помощи собственных скриптов которые создадут указанный файл. Однако для большинства пользователей потребности в наполнении этой секции условиями не будет.
[daemon]
# Описание демона
name=test
role=test-daemon
cmd-daemin="/etc/init.d/test"
options-add=start
options-add=stop
options-add=restart
options-add=reload
options-add=status
prioritet=user-mod
# Пользовательские модификации файла приоритетны
#prioritet=auto-mod
## автоматические модификации имеют приоритет над пользовательскими
## Обычно закомментировано.
[user-mod]
# Модификации пользователя, приоритетны над системными.
[dep-hard]
#Жёсткие зависимости
#Без них демон не стартует
# зависимость от наличия в сети определённых компьютеров
dep-host=ipv4=8.8.8.8
dep-host=name=localhost
dep-file-absolute=/mnt/local/test
#dep-file-absolute= ИГНОРИРУЕТ прификс WorkDir, НЕ РЕКОМЕНДУЕТЬСЯ ИСПОЛЬЗОВАТЬ.
# Трудно представить себе ситуацию в которой это понадобиться,
# но я решил оставить эту функцию для повышения гибкости.
# Зависимость от точки монтирования
dep-mount-point=/mnt/local
#Никогда не завершать строку символом / иначе используемый для неё grep фильтр работать не будет
# Пример /dev/sda6 on /mnt/local type ext4 (rw,relatime,data=ordered)
# Зависимость от маршрута
# Пока реализовывать не буду, хватит зависимости от хоста.
# Зависимость от поднятого интерфейса
dep-iface=eth0
# Использует /sbin/ifconfig eth0 | grep "inet addr"
# Если появилась строка длиннее одного символа, значит интерфейс поднят. Конечно костыльное решение.
# Потом придумаю другой метод
# Зависимость от подключенного тома по UUID
dep-volume-uuid=71ED-3670
# Анализирует вывод команды blkid
# Зависимость от подключенного тома по метке
dep-volume-label=flash
# Анализирует вывод команды blkid
# Зависимость от подключенных USB устройств. Просматривает их список используя команду lsusb
[dep-usb]
#Описание устройства. Следует соблюдать регистр букв в ID, а номер шины указывать в формате 000
bus=005
# сформирует фильтр grep "Bus 005"
id=0a5c:2101
# сформирует фильтр grep "ID 0a5c:2101"
name=Broadcom Corp. BCM2045 Bluetooth
# формирует фильтр grep "Broadcom Corp. BCM2045 Bluetooth",
# вообще возможно использовать в качестве произвольного фильтра,
# но во избежании в будущем проблем с совместимостью при изменении
# механизма получения списка устройств, не рекомендуется использовать не по назначению.
[/dep-usb]
[/dep-hard]
[/user-mod]
[auto-mod]
# Модификации вносимые автоматическими программами настройки, обычно менее важны чем пользовательские
# Однако можно установить для них высокий приоритет.
[/auto-mod]
[system]
# Системные установки, не рекомендуется вручную модифицировать
run-level=1
#Уровень выполнения на случай невозможности разрешения зависимостей
[dep-hard]
#Жёсткие зависимости
#Без них демон не стартует
# Зависимость от других демонов
dep-unit=main_daemon
dep-unit=net_fs
# зависимость от наличия определённых файлов
dep-file=/etc/test.conf
#dep-file= подставляет прификс WorkDir, обычно это корневой каталог,
#но иногда это может быть например /home/stas/tmp/root/
#путь следует указывать начиная с /, этот символ будет автоматически отсечён. Не указывать его нельзя.
[/dep-hard]
[/system]