omezik Posted November 8, 2016 Share Posted November 8, 2016 Прошу о помощи. Аппарат GIGA 2 прошивка 2.08 + Entware-3x + cron Все это делалось для перезагрузки роутера раз в один час (для смены ip адресов) SHELL=/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin:/opt/bin:/opt/sbin MAILTO="" HOME=/ # ---------- ---------- Default is Empty ---------- ---------- # */1 * * * * root /opt/bin/run-parts /opt/etc/cron.1min */5 * * * * root /opt/bin/run-parts /opt/etc/cron.5mins 01 * * * * root /opt/bin/run-parts /opt/etc/cron.hourly 02 4 * * * root /opt/bin/run-parts /opt/etc/cron.daily 22 4 * * 0 root /opt/bin/run-parts /opt/etc/cron.weekly 42 4 1 * * root /opt/bin/run-parts /opt/etc/cron.monthly 50 22 * * * reboot Команда 50 22 * * * reboot не выполняется может ее нужно как то по другому прописать. Или какую другую команду для переподключения PPPoE0 подключения. Пробывал вот так 50 22 * * * ndmq -p 'interface PPPoE0 down' -P message; 51 22 * * * ndmq -p 'interface PPPoE0 up' -P message Выполняется только первая команда, а вторая нет. (Впринципе ip не меняет даже если в терменале ssh ввести, просто отключается интернет а потом включается) Quote Link to comment Share on other sites More sharing options...
gvan Posted November 9, 2016 Share Posted November 9, 2016 10 часов назад, omezik сказал: 50 22 * * * reboot Ну, неправильно введено, пропущено имя пользователя, от которого нужно запускать команду. Нужно так (в принципе path задан правильный, но лучше указать полный путь к команде перезагрузки) 50 22 * * * root /opt/sbin/reboot Также не забудьте сделать в файле /opt/etc/crontab последнюю строку пустой. Чтобы сделать перезагрузку роутера раз в час (например, в 00:00, 01:00 и так далее) команда будет выглядеть так: 0 */1 * * * root /opt/sbin/reboot Также файловая система на entware должна быть ext*. Чтобы отлавливать ошибки cron. можно включить логирование с помощью syslog-ng (см. соответствующую тему на форуме в разделе готовых решений). Quote Link to comment Share on other sites More sharing options...
Le ecureuil Posted November 9, 2016 Share Posted November 9, 2016 12 часа назад, omezik сказал: 50 22 * * * ndmq -p 'interface PPPoE0 down' -P message; 51 22 * * * ndmq -p 'interface PPPoE0 up' -P message Выполняется только первая команда, а вторая нет. (Впринципе ip не меняет даже если в терменале ssh ввести, просто отключается интернет а потом включается) Потому что для PPP-интерфейсов команды up/down не вызывают разрыва линка, они просто опускают работающий интерфейс, сохраняя при этом PPP-соединение. Вам нужно вызывать interface PPPoE0 no connect / interface PPPoE0 connect, тогда все будет работать как ожидается. Quote Link to comment Share on other sites More sharing options...
omezik Posted November 10, 2016 Author Share Posted November 10, 2016 (edited) Перед редактированием файла crontab делаю следующее в терминале ssh /opt/etc/init.d/S10cron stop останавливаю службы cron chmod 600 /opt/etc/crontab применяю права к фаилу (иначе пишит ошибки) /opt/etc/init.d/S10cron start запускаю службу cron Пустая строка имеется в конце, cron не выполняет не одну из команд за исключением . interface PPPoE0 no connect а interface PPPoE0 connenct не выполняет. Может как то можно объединить 2 команды в одну interface PPPoE0 no connect / interface PPPoE0 connenct, по типу interface pppoe0 reboot если писать в каждую строку то первая строка выполняется судя по логам а вторая нет. Edited November 10, 2016 by omezik Quote Link to comment Share on other sites More sharing options...
TheBB Posted November 11, 2016 Share Posted November 11, 2016 какая файловая система на флешке/диске? Quote Link to comment Share on other sites More sharing options...
omezik Posted November 12, 2016 Author Share Posted November 12, 2016 ext3 Quote Link to comment Share on other sites More sharing options...
omezik Posted November 12, 2016 Author Share Posted November 12, 2016 SHELL=/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin:/opt/bin:/opt/sbin MAILTO="" HOME=/ # ---------- ---------- Default is Empty ---------- ---------- # */1 * * * * root /opt/bin/run-parts /opt/etc/cron.1min */5 * * * * root /opt/bin/run-parts /opt/etc/cron.5mins 01 * * * * root /opt/bin/run-parts /opt/etc/cron.hourly 02 4 * * * root /opt/bin/run-parts /opt/etc/cron.daily 22 4 * * 0 root /opt/bin/run-parts /opt/etc/cron.weekly 42 4 1 * * root /opt/bin/run-parts /opt/etc/cron.monthly 0 */1 * * * root /opt/sbin/reboot 0 */1 * * * /opt/sbin/reboot 00 0 * * * /opt/sbin/reboot 00 1 * * * /opt/sbin/reboot 00 2 * * * /opt/sbin/reboot 00 3 * * * /opt/sbin/reboot 00 4 * * * /opt/sbin/reboot 00 5 * * * /opt/sbin/reboot 00 6 * * * /opt/sbin/reboot 00 7 * * * /opt/sbin/reboot 00 8 * * * /opt/sbin/reboot 00 9 * * * /opt/sbin/reboot 00 10 * * * /opt/sbin/reboot 00 11 * * * /opt/sbin/reboot 00 12 * * * /opt/sbin/reboot 00 13 * * * /opt/sbin/reboot 00 14 * * * /opt/sbin/reboot 00 15 * * * /opt/sbin/reboot 00 16 * * * /opt/sbin/reboot 00 17 * * * /opt/sbin/reboot 00 18 * * * /opt/sbin/reboot 00 19 * * * /opt/sbin/reboot 00 20 * * * /opt/sbin/reboot 00 21 * * * /opt/sbin/reboot 00 22 * * * /opt/sbin/reboot 00 23 * * * /opt/sbin/reboot Quote Link to comment Share on other sites More sharing options...
omezik Posted November 12, 2016 Author Share Posted November 12, 2016 Вот так перезагружается раз в час и меняет ip Quote Link to comment Share on other sites More sharing options...
S_A Posted November 12, 2016 Share Posted November 12, 2016 (edited) На зачем такая простыня? Одной строчки "0 */1 * * * root /opt/sbin/reboot" достаточно. А тем у кого нет Entware и пока в startup-config можно писать свои команды, можно просто в startup добавить: system reboot 3600 На всякий случай синтаксис команды для своей прошивки проверьте. Edited November 12, 2016 by S_A Quote Link to comment Share on other sites More sharing options...
omezik Posted November 13, 2016 Author Share Posted November 13, 2016 0 */1 * * * root /opt/sbin/reboot не работает ни чего не происходит Мне бы команду просто для переподключения pppoe0 соединения Quote Link to comment Share on other sites More sharing options...
gvan Posted November 15, 2016 Share Posted November 15, 2016 В 13.11.2016 в 06:10, omezik сказал: 0 */1 * * * root /opt/sbin/reboot не работает ни чего не происходит Это я неправильно написал. Нужно так 0 * * * * root /opt/sbin/reboot В 13.11.2016 в 06:10, omezik сказал: Мне бы команду просто для переподключения pppoe0 соединения Команду подсказали выше. Пример выполнения нескольких команд в одной строке в cron каждый час (выполняется команда date ожидается 1 секунда и date выполняется повторно, результат выполнения записывается в файл): 0 * * * * root (/opt/bin/date && sleep 1 && /opt/bin/date) >> /opt/tmp/date.txt Попробуйте. Если результат для этого примера будет также отрицательный, то лучше настроить логирование entware и смотреть /opt/var/log/message на наличие ошибок. Предполагаю, что переподключение pppoe каждый час будет выглядеть так: 0 * * * * root /opt/bin/ndmq -p 'interface PPPoE0 no connect' -P message && sleep 5 && /opt/bin/ndmq -p 'interface PPPoE0 connect' -P message Проверить не могу, т.к. обрублю себе сук, на котором сижу (если что-то пойдет не так), т.к. сижу удаленно. Но предварительно можно проверить результат в командной строке, выполнив команду: /opt/bin/ndmq -p 'interface PPPoE0 no connect' -P message && sleep 5 && /opt/bin/ndmq -p 'interface PPPoE0 connect' -P message А далее уже добавить в cron. Quote Link to comment Share on other sites More sharing options...
omezik Posted November 15, 2016 Author Share Posted November 15, 2016 "PPPoE0": disabled connection. Error: Network::Interface::PPPoE: "PPPoE0": discovery interface is not set. Попробовал через консоль SSH. Интернет отключился и на этом все в PPPoE0 подключения снялась галочка "с включить" и Подключаться через поменялось на любое подключение хотя была через ISP Quote Link to comment Share on other sites More sharing options...
gvan Posted November 15, 2016 Share Posted November 15, 2016 1 час назад, omezik сказал: Интернет отключился и на этом все Не могу подсказать. Нужно знать правильную команду на включение/отключение pppoe. Я взял команду из сообщения Le ecureuil. Возможно, в мануале на CLI найдете. Но ребут в крон, как я написал выше, должен работать. Quote Link to comment Share on other sites More sharing options...
Le ecureuil Posted November 15, 2016 Share Posted November 15, 2016 2 часа назад, omezik сказал: "PPPoE0": disabled connection. Error: Network::Interface::PPPoE: "PPPoE0": discovery interface is not set. Попробовал через консоль SSH. /opt/bin/ndmq -p 'interface PPPoE0 no connect' -P message && sleep 5 && /opt/bin/ndmq -p 'interface PPPoE0 connect' -P message 0 Цитировать Интернет отключился и на этом все в PPPoE0 подключения снялась галочка "с включить" и Подключаться через поменялось на любое подключение хотя была через ISP Правильно, потому что если хотите через конкретный интерфейс, нужно указать > interface PPPoE0 connect via ISP Это все есть в CLI-мануале. Quote Link to comment Share on other sites More sharing options...
vasek00 Posted November 15, 2016 Share Posted November 15, 2016 (edited) Дам наводку, так как судя по всему у вас стоит Entware /opt/bin/ndmq проще нужно поработать с сервисом который /usr/sbin/pppd file /var/run/options-PPPoE0 как найти pid или как перегрузить данный сервис - смотрите уже сами, либо воспользоваться так же как и сервис скриптами ip-down и ip-up. killall pppd /usr/sbin/pppd file /var/run/options-PPPoE0 Edited November 15, 2016 by vasek00 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.