Jump to content

Search the Community

Showing results for tags 'scheduler'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Keenetic Community
    • Keenetic Development
    • Keenetic Community Support
    • KeeneticOS Testing
    • Mobile App
    • Keenetic RMM
  • Open Package Support
    • Opkg Help
    • Opkg Cookbook
    • Opkg Cookbook RUS

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Location


Web-site


Interests


Occupation


AOL Account


ICQ Account


WLM


YAHOO


Facebook Account


Twitter Account


Skype Account


Youtube Account


Google+ Account


Keenetic

Found 1 result

  1. Внимание! Данный способ является альтернативой новой NDM команде CLI schedule, которая на данный момент успешно развивается и дополняется возможностями. Как это сделать теперь штатными средствами роутера, читайте в моем сообщении ниже Trafficshape по расписанию встроенными средствами роутера, используя командную строку CLI. Если все же нет возможности или не поддерживается номером вашей прошивки, то можно следовать инструкциям ниже. За основу используется материал Александра Рыжова из данной темы по ссылке здесь >>> и материал Zyxmon из темы на его форуме >>> На самом деле здесь нет ничего сложного. Каждый, более или менее знакомый с основами работы OPKG и консолью PuTTY, что-то слышал о CLI и командной строке, легко справиться. На базе данного материала, можно заставить планировщик задач выполнять практически любые задачи, которые доступны для вашего роутера через командную строку CLI. Но рассмотрим конкретно возможность ограничения скорости для конкретных клиентов любого сегмента сети по расписанию, так как в моем конкретном случае было интересно обложить правилом trafficcontrol по расписанию какой ни будь хост в локальной сети, так как, если интернет выключается полностью или совсем отключается Wi-Fi, умные устройства переходят на мобильные данные и съедается незаметно весь траффик. Вариант 1. Для варианта работы на файловых системах EXT2/3, не будет работать на NTFS !!! (vixie's cron) • Инсталлируем планировщик cron: opkg install cron • Если у вас еще непроисталлирован nano: opkg install nano • редактируем его конфигурационный файл: nano /opt/etc/crontab Отредактировать файл /opt/etc/crontab, добавив в него следующие строчки: # Your traffic control schedule for selected host # 30 00 * * * root ndmq -p 'ip traffic-shape host ee:cc:bb:dd:99:44 rate 64' -P message 00 06 * * * root ndmq -p 'no ip traffic-shape host ee:cc:bb:dd:99:44' -P message Внимание! Есть небольшой нюанс при ограничении скорости хостов, они (их MAC адрес) должны быть зарегистрированы в системе на вкладке Устройства (hosts) или с помощью команды в CLI: known host {name} {mac-address} (имя произвольное), иначе скорость на хост ограничена не будет и будет выдана ошибка в логе: Jul 29 16:10:00ndm TrafficControl::Manager: no "cc:5d:4e:4c:f5:35" MAC address in the known host list. • Запустить cron вручную или перезагрузить роутер: /opt/etc/init.d/S10cron start ---------- Вариант 2. Для варианта работы на файловых системах NTFS (busybox crontab). Этот вариант несколько сложнее первого, но на данной файловой системе должен работать без проблем и не вызывать ошибок ядра (так как на этой файловой системе нет правильной поддержки атрибутов для vixie's cron). Если у Вас ntfs - используйте именно этот вариант из установленного busybox. • Если вы по ошибке на файловую систему NTFS проинсталлировали cron и в результате этого у вас начали возникать ошибки ядра системы, то его необходимо удалить и переустановить busybox (для восстановления бинарника crontab) , восстановить симлинк: opkg remove cron opkg install --force-reinstall busybox В результате у Вас восстановится симлинк, проверить можно вводом команды: ~ # >ls -al /opt/bin/cro* Если все произошло успешно, то будет выдано нечто подобное: lrwxrwxrwx 1 root root 16 Jul 26 11:51 /opt/bin/crontab -> /opt/bin/busybox • Если у вас еще непроисталлирован nano, то сделаете это: opkg install nano • Для создания заданий crontab для него необходимо создать файл заднаний crontabs и его папку на вашем внешнем диске mkdir -p /opt/var/spool/cron/crontabs • Первый раз создать и потом всегда редактировать файл настроек нужно следующим вводом команды: EDITOR='/opt/bin/nano' crontab -e Формат файла cronttab немного отличается. Для апплета на одно поле меньше, т.к. не указывается от какого юзера выполнять задание. В первый раз откроется естественно совершенно пустой файл, в который мы пропишем следующее: PATH=/opt/bin:/opt/sbin:/sbin:/usr/sbin:/bin:/usr/bin # Your traffic control schedule for selected host # 30 00 * * * ndmq -p 'ip traffic-shape host ee:cc:bb:dd:99:44 rate 64' -P message 00 06 * * * ndmq -p 'no ip traffic-shape host ee:cc:bb:dd:99:44' -P message Внимание! Есть небольшой нюанс при ограничении скорости хостов, они (их MAC адрес) должны быть зарегистрированы в системе на вкладке Устройства (hosts) или с помощью команды в CLI: known host {name} {mac-address} (имя произвольное), иначе скорость на хост ограничена не будет и будет выдана ошибка в логе: Jul 29 16:10:00ndm TrafficControl::Manager: no "cc:5d:4e:4c:f5:35" MAC address in the known host list. Потом жмем Ctrl+X, соглашаемся Y, сохраняем файл. Посмотреть, что он действительно появился и сохранился, можно в папке на вашем диске, которую мы ранее создали /opt/var/spool/cron/crontabs (папка на вашем_Диске/var/spool/cron/crontabs) • Чтобы crond каждый раз запускался автоматически, файл-скрипт S05crond в папке /opt/etc/init.d nano /opt/etc/init.d/S05crond и наполним его следующим содержанием #!/bin/sh CRON="/opt/sbin/crond" export PATH=/opt/bin:/opt/sbin:/sbin:/usr/sbin:/bin:/usr/bin start() { $CRON -L /dev/null } stop() { killall crond } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; *) echo "Usage: $0 {start|stop}" ;; esac Потом жмем Ctrl+X, соглашаемся Y, сохраняем файл. Посмотреть, что он действительно появился и сохранился, можно в папке /opt/etc/init.d (Ваш_Диск/etc/init.d) • Делаем его исполняемым chmod +x /opt/etc/init.d/S05crond • Запускаем планировщик заданий через созданный скрипт в init.d: /opt/etc/init.d/S05crond start или просто перегрузив ваш роутер. ****** Коментарии. 1. Есть небольшой нюанс при ограничении скорости хостов, они (их MAC адрес) должны быть зарегистрированы в системе на вкладке Устройства (hosts) или с помощью команды в CLI: known host {name} {mac-address} (имя произвольное) 2. Признаком успешной работы будут являтся следующие срочки в логе роутера: Jul 29 13:22:00ndmCore::Server: started Session 127.0.0.1:38686. Jul 29 13:22:00ndmTrafficControl::Manager: "ee:cc:bb:dd:99:44" host rate limited to 64 Kbits/sec. Jul 29 13:22:00ndmCore::Session: client disconnected. Jul 29 13:22:02ndmkernel: SWNAT bind table cleared 3. Оба варианта проверены и работают на Ultra 2, на других не тестировались. Прошу по возможности отписаться, как получилось, и комментировать, что можно было бы улучшить. Успехов!!!
×
×
  • Create New...