Jump to content

typedef

Forum Members
  • Posts

    31
  • Joined

  • Last visited

Equipment

  • Keenetic
    Air (KN-1611)

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

typedef's Achievements

Member

Member (2/5)

4

Reputation

  1. пардон, просмотрел :( в общем, поборол я задачу ) 1. добавил в \keenetic-sdk\package\base-files\Makefile ln -s /bin $(1)/opt/bin chmod +x $(1)/opt/etc/ndm/ifcreated.d/01-on_bridge0_created.sh 2. добавил скрипт /opt/etc/ndm/ifcreated.d/01-on_bridge0_created.sh #!/bin/ash logger "$0 $id" if [ "$id" = "Bridge0" ]; then logger "start avahi-daemon" avahi-daemon -D -f /opt/etc/avahi/avahi-daemon.conf fi ну и все завелось наконец-то. Огромное спасибо sergeyk за терпение и поддержку!
  2. ага, я когда раньше такое пробовал, то остановился на том, что не вызываются initrc и init.d/* Но эти хуки вызываются. Но у меня опять что то не все ОК сделал три хука: /opt/etc/ndm/ifcreated.d/01-on_ifcreated.sh /opt/etc/ndm/ifipchanged.d/01-on_ifipchanged.sh /opt/etc/ndm/ifstatechanged.d/01-on_ifstatechanged.sh вида #!/bin/ash logger "$0 $id" но в логе что то странное Feb 6 19:00:31 ndm Network::Interface::Switch: "FastEthernet0/1": switch link down at port 1. Feb 6 19:00:31 ndm Process: system failed [0xcffd0a8a], "/opt/bin/ash" executable not found. Feb 6 19:00:31 ndm Process: unable to create and initialize "Opkg shell" process. Feb 6 19:00:31 ndm Io::Process: "Opkg shell" is broken. Feb 6 19:00:31 ndm Opkg::Manager: process /opt/etc/ndm/ifstatechanged.d/01-on_ifstatechanged.sh: failed to start. Feb 6 19:00:31 ndm Process: system failed [0xcffd0a8a], "/opt/bin/ash" executable not found. Feb 6 19:00:31 ndm Process: unable to create and initialize "Opkg shell" process. Feb 6 19:00:31 ndm Io::Process: "Opkg shell" is broken. Feb 6 19:00:31 ndm Opkg::Manager: process /opt/etc/ndm/ifstatechanged.d/01-on_ifstatechanged.sh: failed to start. притом если запускать из терминала /opt/etc/ndm/ifstatechanged.d/01-on_ifstatechanged.sh то все ок
  3. а что у Вас в настройках opkg ? Какой Driver и что за модель роутера?
  4. только сейчас обратил внимание keenetic-sdk/files а не keenetic-sdk/package/base-files/files есть разница?
  5. так я с этого и начинал!!! Но, после "opkg disk temp:/" все мои скрипты исчезают, так как на /opt монтируется /tmp А если без "opkg disk temp:/", то да, мои скрипты лежат в /opt, но автоматический запуск (хуки) не отрабатывают
  6. так а куда мне скрипт складывать в base_files? после "opkg disk temp:/" /op смонтирован на /tmp я вижу такой порядок действий (может ошибаюсь) 1. запускаю на роутере opkg disk temp:/ /opt -> /tmp 2. скрипт для запуска демона avahi-daemon складываю в package/base_files/files/XXX 3. собираю прошивку 4. после ребута роутера скрипт, подготовленный на шаге 2. оказывается в /opt/XXX 5. срабатывает хук и скрипт запускается так вот вся моя проблема в шаге 4. Как собрать образ так, чтобы скрипт был в /opt ?
  7. спасибо, жаль. Просто при монтировании на /tmp смысла от этих хуков нет, поскольку никаких скриптов на момент монтирования там нет. Поэтому я и спрашивал, возможно ли смонтировать /opt на какую то ветку из rootfs. Тогда я бы смог подготовить все скрипты и нужные конфиги в прошивке. Я пробовал в base_files складывать скрипты на /tmp - понятно бессмысленно и на /opt. В последнем случае, если не использовать opkg disk XXX, то скрипты на /opt лежат, но initrc автоматом не исполняется, если вызывать opkg disk, то моя папка /opt из прошивки затирается.
  8. как я понял этой командой мы монтируем /tmp на /opt все классно, но при рестарте все его содержимое стирается А какие еще варианты есть кроме "temp:/", можно ли примонтировать какую-нибудь ветку от rootfs, например /etc ?
  9. после этого на /opt, который раньше был пустой появляется куча файлов Я туда опять складываю свои скрипты, но после ребута скрипты удаляются короче, никак мне не понять как решить казалось бы простую задачу, запуска скрипта при старте роутера
  10. а-а-а ну команда сработала (config)> opkg disk temp:/ Opkg::Manager: Disk is set to: temp:/. а что с этим дальше делать?
  11. так в том и проблема, как я писал выше, что opkg похоже не встал / # opkg disk temp:/ /bin/ash: opkg: not found
  12. похоже на то что opkg толком не встал (или я что то не то сделал) / # find / -name *opkg* /usr/sbin/opkg_led_ctl / # поэтому, думаю, ничего из этой статьи не работает https://github.com/ndmsystems/packages/wiki/Opkg-Component#hook-scripts
  13. с этим вчера разобрался, добавил пару строк chmod в Makefile Но вот скрипт /opt/etc/initrc автоматом не стартует Руками потом запускаю все ок, а сам не хочет
  14. Что то не получилось у меня с наскока сделать автоматический запуск демона :( Файлы в \package\base-files\files\opt\etc положил (и initrc и директорий init.d со скриптом внутри добавил). Они не запускаются потому что без флага на запуск. Видимо где то в makefile надо делать chmod +x Может где то есть примерчик, чтобы по аналогии сделать? Ну или, если я Вас еще не задолбал, поясните по подробнее как добавить скрипт start\stop какого-нить сервиса
  15. ага, спасибо! Вечером попробую. Я правильно понимаю, что я должен написать скрипт /opt/etc/initrc и положить его в \package\base-files\files\ Ну или лучше написать отдельный скрипт avahi, положить его в \package\base-files\files\opt\etc\init.d В SDK я что то не нашел подобных скриптов, в том числе /opt/etc/ndm/*
×
×
  • Create New...