Запуск сценариев по событию
From DD-WRT Wiki
Revision as of 06:02, 24 December 2019 (edit) Atatob (Talk | contribs) m (Add language list) ← Previous diff |
Revision as of 06:05, 24 December 2019 (edit) (undo) Atatob (Talk | contribs) m (Изменил ссылку на статью "Переназначение кнопок маршрутизатора") Next diff → |
||
Line 40: | Line 40: | ||
|- | |- | ||
|. sesbutton | |. sesbutton | ||
- | | выполняется, при [[ | + | | выполняется, при нажатии кнопки [[Переназначение кнопок маршрутизатора|SES (или AOSS, EZ-SETUP)]] на маршрутизаторе |
|} | |} | ||
Revision as of 06:05, 24 December 2019
English • Deutsch • Español • Français • Italiano • 日本語 • Polski • Português • Русский • Svenska • 中文(中国大陆) • 中文(台灣) • |
Contents |
Введение
Программа на языке shell часто называют скриптами или сценариями(Script). С помощью shell Вы можете создавать сложные программы, конструируя их, как из кирпичиков, из существующих утилит UNIX. Интерпретатор считывает строки из файла-скрипта и выполняет их, как если бы они были введены пользователем в командной строке. Иногда необходимо, чтобы сценарии выполнялись автоматически, эта статья объясняет, что происходит в момент запуска скрипта.
Общая информация
По умолчанию DD-WRT осуществляет поиск в 4 директориях:
- /etc/config/
- /jffs/etc/config/
- /mmc/etc/config/
- /tmp/etc/config/
Типы сценария
Для правильной работы1 каждое приложение помещённое в одну из директорий должно иметь расширение..
Каждое расширение имеет значение.
Расширение | 'Значение |
.startup | будет выполняться при системном запуске, обычно время начальной загрузки иперед настройкой брандмауэра. |
.prewall | будет выполняться всякий раз, когда интерфейс WAN восстанавливает работоспособность и перед брандмауэром. |
. wanup | будет выполняться всякий раз, когда интерфейс WAN восстанавливает работоспособность и после брандмауэра.2 |
.if | будет выполняться всякий раз, когда любой из интерфейсов восстанавливает работоспособность и после брандмауэра. |
. ipup | запускается, когда соединение PPP восстановлено после разъединения и после брандмауэра. |
. ipdown | запускается, когда соединение PPP было выключено |
. sesbutton | выполняется, при нажатии кнопки SES (или AOSS, EZ-SETUP) на маршрутизаторе |
1Все файлы должны должны быть исполняемыми, к каждому из которых устанавливаються права доступа. Для этого используется команда chmod(1).
2Сценарии .wanup могут выполняться несколько раз, во время загрузки маршрутизатора. [1]
Добавление директорий или сценириев
Для выполнения сценария с различными расширениями или теми, которые расположены в другом каталоге, можно создать скрипт.3
for I in `/bin/ls /jffs/etc/config/*.myextension`;do sh $I & done
Команда sh/jffs/etc/config/*.myextension выполнит каждый сценарий, заканчивающийся на .myextension, найденном в каталоге /jffs/etc/config.
3Меняем путь (/jffs/etc/config) и расширение на свои.
Автозагрузки при старте маршрутизатора
За запуск при старте отвечает переменная rc_startup, которой присваивается значение. Выполняется в коммандной строке.
~# nvram set rc_startup="/jffs/etc/config/*.myextension" ~# nvram commit ~# echo "/jffs/dir/my_scripts &" >> /jffs/etc/config/*.myextension
Для задержки используется ключ ="sleep"
~# nvram set rc_startup="sleep 30; /jffs/etc/config/*.myextension" ~# nvram commit