Jump to content

gvan

Forum Members
  • Posts

    198
  • Joined

  • Days Won

    2

Everything posted by gvan

  1. Т.е.при ручном запуске/отладке вертит правильно (при достижении нужных критериев), но по крону не отрабатывает? Могу предположить, что нужно в основном файле crontab убрать комментарий для разрешения запуска почасовых задач (в первом сообщении темы об этом есть информация). А скрипт /opt/etc/cron.daily/logrotate просто также скопировать в cron.hourly (test.sh по сути не нужен).
  2. В рамках данного решения (скрипта) этого не предусмотрено. Посмотрите каталог готовых решений для opkg. Возможно, что-то найдете для копирования (переноса) данных на облачные сервисы. Например, упоминается rclone. Соответственно, если получится его настроить, то в конец скрипта добавите необходимые строки для синхронизации локального каталога с бэкапами на облако.
  3. Ну, у меня проблемы с установкой не было, поскольку стояла версия 2.16.D.7.0-1, а обновляться выше в свое время я не стал (когда увидел, что на Giga 2, у некоторых после 8 версии начались проблемы с кирпичами). Как вышла 10 обновился успешно, правда только со второго раза. Первый раз после обновления осталась та же самая версия. Повторная установка 10 прошла нормально. 10-01 с первого раза без проблем поставилась.
  4. Вот еще здесь посмотрите. Аналогичная проблема была у людей как с подключенным модемом, так и без него. У самого Giga 2. Но почитав всё это, решил, что мне хорошо и на 2.16.D.7.0-1. Решил пока не обновляться.
  5. Достаточно было почитать предыдущие сообщения. Комрады хотели (просили), чтобы предыдущие файлы прошивки не удалялись, а именовались по номеру прошивки и оставались на диске. Но по коду скрипта сама прошивка в архив вообще не кладется. Непонятно, почему у вас так происходит. Что касается конфига, то его последняя версия кладется в файл -cur. Если были изменения от текущего его содержимого (а у вас, наверное, конфиг изменялся), старая версия конфига как раз перемещается в архив с датой. Не исключаю, что где-то в скрипте есть баг и нарушена логика именования файлов. У меня например вот такое текущее содержимое каталога с бэкапами (конфиг давно не менялся): На всякий случай выкладываю полный код скрипта последней версии (в первом собщении изменить уже не могу): Можно переместить текущее содержимое бэкапов в другой каталог и проверить функционал по новой.
  6. Тоже несложно. Достаточно мануал на команду find посмотреть. Выглядететь будет примерно так: find $BACSTORDIR -mtime +${DAYSTOR} -a ! -name 'firmware*' -delete
  7. Это не сложно. Можно заменить блок кода в скрипте, где делается бэкап прошивки на код следующего вида: Ключевой элемент здесь - получение номера версии прошивки: REL=`ndmq -p 'show version' -P 'release'` У себя код поменял. Вроде работает. Отредактировать первое сообщение уже не могу. Так что меняйте, проверяйте и у себя.
  8. В версии 2.16.D.1.0-0 Load Average нормализовался. Спасибо!
  9. Нет, журнал изменений 2.13-2.15 читал регулярно. Упоминаний об исправлении не встречал. Проблема наблюдалась на всех версиях 2.13-2.16 (может, конечно, какие-то промежуточные версии и пропустил). Также подтверждается на версии 2.16 на двух других Keenetic Giga II (их использую не я).
  10. Я понимаю. На работу не влияет, но графики статистики LA безбожно врут 😉 Уж очень хорошая и надежная "железка" получилась в виде Keenetic Giga II, которая верой и правдой служит уже несколько лет. Поэтому и хотелось окончательного фэншуя, т.к. в версии 2.12 LA работал, как и задумано. Но нет, так нет. Если исправляющую "затычку" для данного типа устройств сделать сложно, то значит не судьба...
  11. Баг тянется еще с версии 2.13. Судя по сообщениям в предыдущей теме, характерен только Keenetic Giga II и Keenetic II (устройства на 6856). На 2.16.D.0.0-0 также присутствует. Если смотреть загрузку Load Average (через SNMP или команду top в entware), то она всегда будет больше 1. Хотя, если при этом смотреть загрузку CPU (через веб-интерфейс или SNMP), то она будет околонулевая. Соответственно, и LA также должен быть невысоким (меньше 1). Но это не так. Насколько я понял, это фактически последний шанс исправить данный баг в прошивке 2.16 для снятых с поддержки устройств...
  12. Ротация никакого отношения к обновлению логов не имеет. Ее задача правильно перенести/архивировать файлы журналов. На скрине выше вообще непонятно, что вы там настроили. Повторюсь. Если у вас перестали обновляться логи, что ротация здесь не причем (за исключением уж совсем клинических случаев). Сначала разберитесь с обновлением логов и добейтесь того, чтобы данные в них писались. Удалите пакет logrotate и скрипт /opt/etc/cron.daily/logrotate, перезапустите роутер, проверьте данные.
  13. Логи в entware лежат по пути /opt/var/log. Файл messages тоже находится там. Если он перестал обновляться, то настройка ротации логов вряд ли виновата. Для проверки можно сделать рестарт службы syslog-ng и посмотреть, станут ли в него добавляться новые данные. Если нет, то вопрос следует задать в соответствующей теме (ссылка есть в первом сообщении).
  14. Сам сервис запускается через watchguard скрипт collectdmon. Соответственно, предполагаю, что из-за ошибок в конфиге/окружении collectd нормально не стартует, а collectdmon пытается его несколько раз перезапустить. Смотрите, конфиг на наличие ошибок. Пробуйте запустить collectd вручную: /opt/sbin/collectd и смотреть на терминале или в логе ошибки.
  15. Скорее всего, что-то не так с http-сервером. Какой устанавливали и настраивали? Как в инструкции - lighttpd? Нужно проверить, реально ли он запускается. Он также должен писать лог в /opt/var/log/lighttpd, если в его конфиге включена опция server.errorlog = "/opt/var/log/lighttpd/error.log" Возможно, для этого также потребуется включить службу syslong-ng (информация есть в каталоге готовых решений).
  16. Сбор статистики определяется не этим каталогом, а конфигом collectd. В данном каталоге находятся только шаблоны для отображения статистики. В самом конфиге collectd сбор данных с интерфейсов (в т.ч. и PPPoE) выполняется по шаблону. Т.е. для отключения сбора данных по конкретному интерфейсу его нужно будет добавить в правило Ignore. После этого удалить соответствующие файлы rrd в /opt/var/lib/collectd/rrd/. Либо вообще их не трогать - пусть данные пишутся (но не нужно было вручную удалять файлы rrd), но сами шаблоны отображения данных убрать.
  17. Я об этом уже давно писал. Прошло полгода. Ставьте последнюю версию alreader и будет все нормально работать. Удалил уже, ибо все равно медленно для меня работала на роутере, да и для уменьшения БД пришлось урезать текстовую информацию (описание найденных книг). Думал попробовать mysql БД, но потом нашел для себя альтернативный вариант (ниже в оффтопе есть пример, или в крайнем случае можно использовать tor на том же самом роутере).
  18. Дополнение к первому посту: Сбор и отображение статистики для клиентов wi-fi. Сбор данных производится через shell-скрипт посредством выполнения в нем команды ndmq -p 'show associations' -x . Работа скрипта обеспечивается плагином exec для collectd. Устанавливаем модуль exec и gawk (если еще не установлен): opkg install collectd-mod-exec gawk Размещаем из архива wifi.zip файлы по указанным каталогам (скрипт для модуля exec, CGI-скрипт для отображения статистики и шаблон для wi-fi). Редактирование CGI-скриптов (если устройств будет несколько) и шаблона под свое окружением выполним позже. В файле /opt/etc/collectd.conf добавляем загрузку модуля exec и запуск скрипта для сбора статистики wi-fi клиентов: LoadPlugin exec <Plugin exec> Exec "nobody" "/opt/etc/collectd/scripts/wifi-clients" </Plugin> Делаем указанный выше скрипт исполняемым файлом. chmod +x /opt/etc/collectd/scripts/wifi-clients Добавляем в систему пользователя nobody (если его еще нет), прописывая следующую строку в файл /opt/etc/passwd: nobody:*:65534:65534:user "nobody"::/opt/bin/nologin Перезапускаем collectd и примерно через 10 минут в каталоге /opt/var/lib/collectd/rrd/APG3/wifi (у вас имя будет отличаться в зависимости от названия роутера) должны появиться файлы для активных клиентов wi-fi. Проверяем логи collectd для выявления возможных ошибок, если вдруг что-то не заработало. Далее создаем необходимое количество CGI-скриптов для wi-fi клиентов, для которых планируем отображать статистику (на основе файла 710-notebook.rcgi). В них меняем путь до файлов статистики, название, MAC-адреса клиентов. Запускаем скрипт index.sh для обновления общего индексного файла статистики.
  19. Дополнение к первому посту в теме: "Сбор и отрисовка данных по сетевому принтеру на примере Samsung M2070W" Дано: Сетевой принтер, подключенный в сеть keenetic по витой паре или посредством wi-fi, IP-адрес принтера, например, 192.168.1.20. Сетевой принтер должен поддерживать протокол SNMP, и необходимые настройки для его включения на принтере предварительно выполнены. С помощью snmpwalk опрашиваем принтер и определяем, в каких OID "лежит" нужная нам информация: snmpwalk -c public 192.168.1.20 . >/opt/tmp/printer.txt В файле /opt/share/collectd/custom-types.db добавляем необходимые типы данных. У меня это уровень картриджа в процентах, количество напечатанных страниц, сколько всего можно напечатать страниц на этом картридже и работа в часах (эту статистику собираю, но не рисую). m2070w cartlevel:GAUGE:0:U, cartprintedpages:GAUGE:0:U, cartallowedpages:GAUGE:0:U, transfrollerhours:GAUGE:0:U Далее в конфигурационном файле /opt/etc/collectd.conf добавляем тип данных, само устройство и что с него "собирать": <Data "m2070w"> #m2070w cartlevel:GAUGE:0:U, cartprintedpages:GAUGE:0:U, cartallowedpages:GAUGE:0:U, transfrollerhours:GAUGE:0:U Type "m2070w" Table false Instance "" Values "1.3.6.1.4.1.236.11.5.11.53.61.5.2.1.13.1.1" "1.3.6.1.4.1.236.11.5.11.53.61.5.2.1.14.1.1" "1.3.6.1.2.1.43.11.1.1.8.1.1" "1.3.6.1.4.1.236.11.5.1.1.3.27.0" </Data> <Host "m2070w"> Address "192.168.1.20" Version 1 Community "public" Collect "m2070w" Interval 180 </Host> Перезапускаем collectd и через несколько минут убеждаемся, что данные по принтеру собираются в файле /opt/var/lib/collectd/rrd/m2070w/snmp/m2070w.rrd Далее добавляем CGI-скрипт и шаблон (архив printer.zip) для отображения статистики. Редактируем их, если требуются.
  20. Также для себя делал "рисование" картинок для клиентов wi-fi. Используется плагин exec для collectd и скрипт, который "висит" в памяти и периодически обновляет данные по wi-fi клиентам через команду "ndmq -p 'show associations' -x". Для ориентировочного анализа активности wi-fi клиентов мне хватает. Правда минус в том, что ndmq в журнал системы для каждого вызова этой команды бросает сообщение. Еще шаблон для wi-fi принтера дополнительно делал (количество страниц всего, напечатано, осталось % картриджа). Но это в принципе не сложно сделать самостоятельно, если принтер поддерживает SNMP протокол. Если есть интерес, то могу добавить информацию по этим задачам.
  21. Возможность редактирования первого поста у меня по какой-то причине пропала. Написал запрос о восстановлении доступа. Пока выкладываю обновленный архив с исправленным скриптом в этом посте (вызов awk заменен на gawk, добавлено прерывание обработки файла, если он не может прочитаться): files.zip
  22. Явно неправильно отрабатывается регулярное выражение. Т.е. в первой строке DEBUG должно получиться на выходе DEBUG: include/0-page.tmpl, а получается оригинальная строка без изменений. У меня воспроизвести баг не получается на моей системе. Можно еще попробовать в коде скрипта заменить awk на gawk (если его нет, то установить через opkg), т.к. по умолчанию используется awk из busybox. И если entware еще от версии прошивки 2.06, то возможно какая-то старая версия используется. Хотя все должно по идее и со старой версией awk обрабатываться аналогично.
  23. Если в дебажной версии скрипта строку tmplfile=gensub(/.+\s+(.+)>.*/, "\\1", 1); поменять на tmplfile=gensub(/.+\s+(.+)>/, "\\1", 1); ничего не изменится? И сюда просьба выложить полученный index.rcgi.
  24. Хотя не нужно. Я вижу теперь в вашем файле, что при чтении шаблона возникает ошибка: DEBUG: <RRD::INCLUDE include/0-page.tmpl> DEBUG: READ STATUS: -1 Т.е. он не может прочитать файл include/0-page.tmpl по указанному пути. Он точно там лежит и есть права на чтение? P.S.: Неправильно awk обрабатывает регулярное выражение. Поэтому имя файла получается неправильное. Возможно, версии awk у нас не совпадают, поэтому разное поведение. Еще посмотрю, может что придет на ум
×
×
  • Create New...