iFinder
-
Posts
175 -
Joined
-
Last visited
Content Type
Profiles
Forums
Gallery
Downloads
Blogs
Events
Posts posted by iFinder
-
-
В 07.09.2021 в 11:12, TheBB сказал:
opkg install http://bin.entware.net/mipselsf-k3.4/test/node-bcrypt_5.0.1-1_mipsel-3.4.ipk \ http://bin.entware.net/mipselsf-k3.4/test/node-bufferutil_4.0.3-1_mipsel-3.4.ipk \ http://bin.entware.net/mipselsf-k3.4/test/node-utf-8-validate_5.0.5-1_mipsel-3.4.ipk \ http://bin.entware.net/mipselsf-k3.4/test/node-red_2.0.6-1_mipsel-3.4.ipk
Приветствую. А где можно это всё скачать ?
Это нужно, чтобы обновитьcя до 2 версии как Entware-пакет.
К сожалению сейчас доступна 3 версия, но уже как Node-пакет.
-
32 минуты назад, iFinder сказал:
3. Но как быть с поведением NodeRED ?
4. Удалось решить выполнением при загрузке перед NodeRED файла с единственной командой:
Цитатаchmod 0600 /opt/lib/node_modules/node-red/node_modules/node-red-contrib-join-joaoapps/joinserver
5. В прежней Entware (2019, см. начало темы) тоже на флэшке NTFS такого поведения cron точно не было !
6. Уточняю, что Entware стоит на флэшке с двумя разделами: NTFS (16 Гб) и Linux Swap (512 Мб).
Вопросы:
1. Правильно ли я решил эти проблемы или нужно было по-другому ?
2. Что сделать, чтобы такое не повторилось с другими пакетами Entware и NodeRED - очень уж много времени ушло на поиски.
3. Получается это проблема (при монтаже раздела меняются атрибуты) самой последней на 10.10.2020 Entware !?
-
Ну вот и обнаружилась первая проблема:
Предыстория:
1. Установил пакет 'node-red-contrib-join-joaoapps', настроил и начал пользоваться.
2. Пакет установился в 'opt/lib/node_modules/node-red/node_modules/node-red-contrib-join-joaoapps'
а в ней в том числе папка '/joinserver'.
3. Спустя несколько дней пришлось перезагрузить Giga III, на котором установлена NodeRED.
Проблема № 1:
1. После перезагрузки NodeRED перестала работать отображая всплывающее окно:
ЦитатаFlows stopped due to missing node types.
join-server
2. А в журнале появились строки:
Цитата16 Oct 16:19:05 - [warn] ------------------------------------------------------
16 Oct 16:19:05 - [warn] [node-red-contrib-join-joaoapps/join-server] Error: EROFS: read-only file system, mkdir '/joinserver' (line:11)
16 Oct 16:19:05 - [warn] ------------------------------------------------------3. Выполнил команду:
Цитатаroot@GigaIII-YN:/opt/lib/node_modules/node-red/node_modules/node-red-contrib-join ls -l
drwxrwxr-x 1 root 1000 0 Oct 16 16:15 joinserver
4. Получается папка 'opt/lib/node_modules/node-red/node_modules/node-red-contrib-join-joaoapps/joinserver' имеет атрибуты 775 !
5. Какие были атрибуты до перезагрузки не догадался посмотреть.
Проблема № 2:
1. После перезагрузки перестал работать планировщик cron, выдавая в журнале Giga III:
ЦитатаОкт 16 15:44:32 cron[4782]
(CRON) STARTUP (V5.0)
Окт 16 15:44:32 cron[4782]
(*system*) BAD FILE MODE (/opt/etc/crontab)
2. Стал работать после выполнения команд:
Цитатаchmod 0600 /opt/etc/crontab
/opt/etc/init.d/S40cron restart
3. Но после очередной перезагрузки снова перестаёт работать.
4. При этом файлу /opt/etc/crontab снова присвоены атрибуты 775 !
Выводы и Вопросы:
1. Запуск Cron, конечно, не относится к NodeRED, но что-то проявления похожие.
2. Проблему с поведение Сron удалось решить выполнением при загрузке перед Cron файла с единственной командой:
Цитатаchmod 0600 /opt/etc/crontab
3. Но как быть с поведением NodeRED ?
-
26 минут назад, iFinder сказал:
Приветствую NodeRED на роутерах !
Приветствую NodeRED на всех устройствах с CPU MIPS, в том числе на домашних роутерах Keenetic !
-
Это реально круто.
Приветствую NodeRED на роутерах !
Отсутствие Вашего ответа на мой первый вопрос укрепляет меня в предположении о Вашем авторстве опакечивания NodeRED.
Первые результаты потрясли простотой реализации:
1. Выполнил установку:
opkg install http://bin.entware.net/mipselsf-k3.4/test/node-red_1.1.3-1_mipsel-3.4.ipk
2. Установилось без ошибок за ~3 мин.
3. Запустил NodeRED из под командера mc:
root@GigaIII-YN:/opt/etc/init.d$ ./S99node-red start
4. Через ~40 сек. зашёл в интерфейс NodeRED и установил оттуда свой проблемный узел "node-red-contrib-join-joaoapps":5. Несмотря на 2 записи в логе [err] ... следов неработоспособности пока не обнаружил.
6. Настроил и проверил работу этого узла. Всё работает !
7. Буду тестировать дальше
-
10 часов назад, TheBB сказал:
Уважаемый TheBB !
Получается это Вы вчера сделали сборку и выложили ?
Правильно ли я понимаю по месту расположения пакета, что его статус хоть и остался тестовым, но уже стал не только для Keenetic ?
-
В 29.01.2020 в 22:02, TheBB сказал:
Приветствую, TheBB !
Некорректность прошлой установки заставила сделать всё заново, а тут такая новость: Пакет исчез !
Все подпапки на сервисе пересмотрел и не нашёл о NodeRED вообще ничего.
Означает ли это, что пакет неудачен и его поэтому вообще удалили ?
-
1 час назад, TheBB сказал:
Почти, "опакечен"
1. Почему почти ?
2. В чём разница:
http://bin.entware.net/mipselsf-k3.4/Packages.html - Это пакеты Entware. Ясно.
http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.html - Это пакеты Entware для Keenetic. Но как это понимать ? Что значит для Keenetic ? Ведь все пакеты Entware тоже подходят для Keenetic.
http://bin.entware.net/mipselsf-k3.4/keenetic/test/ - Это тестовые пакеты Entware для Keenetic. И это как понимать, что curl есть и здесь и в http://bin.entware.net/mipselsf-k3.4/Packages.html ?
3. Кому спасибо сказать за опакечивание ?
1 час назад, TheBB сказал:Инструкции? Как напишите, так и появятся.
4. Вы предполагаете, что там сложности возникнут, из-за которых инструкцию писать придётся ?
-
7 минут назад, TheBB сказал:
Начинаем "с чистого листа", т.к. `nod-red` "опакечен". Ждём-с инструкции...
Правильно ли я понимаю, что раньше `nod-red` был пакетом `npm`, который был пакетом `Entware`, а сейчас `nod-red` стал самостоятельным пакетом `Entware`, т.е. в Вашей терминологии опакечен ?
Ждём-с инструкции... от кого ?
И как узнать, что они появились ?
-
В 28.01.2020 в 20:18, Lstt сказал:
Можно вкратце обобщить? Как, имеет смысл устанавливать? Можно порядок действий, основанный на вашем опыте?
Конечно можно. В этой теме достаточно обобщений - Специально для начинающих и писалось.
Можете даже на эти обобщения ссылки сделать.
-
2 минуты назад, TheBB сказал:
Это при "классической установке" в домашнюю директорию пользователя. А я всё перенёс в "/opt/lib/node_modules/...".
А как выглядел перенос ? и на каком этапе ?
-
Нашёл нечто, что может объяснить различие моей Node-Red и Вашей.
Вот фрагмент файла: '/opt/lib/node_modules/node-red/red.js':
Скрытый текстif (parsedArgs.settings) {
// User-specified settings file
settingsFile = parsedArgs.settings;
} else if (parsedArgs.userDir && fs.existsSync(path.join(parsedArgs.userDir,"settings.js"))) {
// User-specified userDir that contains a settings.js
settingsFile = path.join(parsedArgs.userDir,"settings.js");
} else {
if (fs.existsSync(path.join(process.env.NODE_RED_HOME,".config.json"))) {
// NODE_RED_HOME contains user data - use its settings.js
settingsFile = path.join(process.env.NODE_RED_HOME,"settings.js");
} else if (process.env.HOMEPATH && fs.existsSync(path.join(process.env.HOMEPATH,".node-red",".config.json"))) {
// Consider compatibility for older versions
settingsFile = path.join(process.env.HOMEPATH,".node-red","settings.js");
} else {
var userDir = parsedArgs.userDir || path.join(process.env.HOME || process.env.USERPROFILE || process.env.HOMEPATH,".node-red");
var userSettingsFile = path.join(userDir,"settings.js");
if (fs.existsSync(userSettingsFile)) {
// $HOME/.node-red/settings.js exists
settingsFile = userSettingsFile;
} else {
var defaultSettings = path.join(__dirname,"settings.js");
var settingsStat = fs.statSync(defaultSettings);
if (settingsStat.mtime.getTime() <= settingsStat.ctime.getTime()) {
// Default settings file has not been modified - safe to copy
fs.copySync(defaultSettings,userSettingsFile);
settingsFile = userSettingsFile;
} else {
// Use default settings.js as it has been modified
settingsFile = defaultSettings;
}
}
}
}
И еще у меня:
~ # echo $HOME /opt/root ~ # echo $NODE_RED_HOME ~ #
-
5 минут назад, TheBB сказал:40 минут назад, iFinder сказал:
Единственно, что меня смущает...
см. 3
Я имел ввиду, что встречал Рабочую папку '.node-red', но в Вашей Node-Red её совсем нет.
-
Спасибо Вам за проведённые исследования.
Получается, что у Вас так:
1. Запуск Node-Red ПРИ ЗАГРУЗКЕ БЕЗ указания Рабочей папки приводит к тому, что Node-Red запускается и Рабочей папкой считает '/opt/lib/node_modules/node-red/'. При этом тестовый файл записывается в этой папке, а ДопУзлы устанавливаются в папку '/opt/lib/node_modules/node-red/node_modules' и NodeRed их видит.
2. Запуск Node-Red ВРУЧНУЮ ПОСЛЕ ЗАГРУЗКИ БЕЗ указания Рабочей папки приводит к тем же результатам, что и в п.1.
3. Запуск Node-Red ПРИ ЗАГРУЗКЕ С явным указанием Рабочей папки '/opt/root/.node-red' приводит к тем же результатам, что и в п.1.
Единственно, что меня смущает, что у Вас Рабочая папка в начале имени не имеет знака точки '.'. Осваивая работу в Node-Red, я встречал в инете описания настроек, в которых имя Рабочей папки начиналось со знака точки '.'
Надо будет найти возможность и установить Optware и Node-Red с нуля...
-
3 минуты назад, TheBB сказал:14 минуты назад, iFinder сказал:
Даже когда запускаете при загрузке и без указания Рабочей папки ?
Видимо, да.
Но это вроде не при загрузке самой Entware ?
-
10 минут назад, TheBB сказал:
выбрано по одному варианту представления графиков (надо ж тестить хоть что-то ))) )
Увидел, что установили ДопУзлы 'node-red-dashboard' и 'node-red-node-ping'.
Пингуете с помощью ДопУзла 'node-red-node-ping'.
И настроили 6 вариантов Графиков ДопУзел из 'node-red-dashboard'.
А 'node-red-daemon' что делает ?
-
5 минут назад, TheBB сказал:
И ставит и видит.
Даже когда запускаете при загрузке и без указания Рабочей папки ?
-
Постепенно выкресталлизовывается суть проблемы.
Node-Red при запуске берёт пользовательские настройки из папки, которую считает Рабочей.
Кроме того, по идее в этой папке должен создаваться Тестовый файл, а ДопУзлы, установленные из WEB-интерфейса, устанавливаться в '/opt/root/.node-red/node_modules' - у меня, по крайней мере, так:
1. Запуск Node-Red ПРИ ЗАГРУЗКЕ БЕЗ указания Рабочей папки приводит к тому, что Node-Red совсем НЕ запускается.
2. Запуск Node-Red ВРУЧНУЮ ПОСЛЕ ЗАГРУЗКИ БЕЗ указания Рабочей папки приводит к тому, что Node-Red запускается и Рабочей папкой считает '/opt/root/.node-red'. При этом тестовый файл записывается в этой папке, а ДопУзлы устанавливаются в папку '/opt/root/.node-red/node_modules' и NodeRed их видит. - ЭТО единственный вариант,когда функционал полностью работоспособен. Но нужен именно запуск при загрузке.
3. Запуск Node-Red ПРИ ЗАГРУЗКЕ С явным указанием Рабочей папки '/opt/root/.node-red' приводит к тому, что Node-Red запускается и Рабочей папкой считает указанную, НО тестовый файл записывается неизвестно куда, а установка ДопУзлов из WEB-интерфейса заканчивается ошибкой (сама Node-Red не находит их в месте установки). Потоки Node-Red при этом обрабатываются нормально.
Пока приходится делать так: Загрузка происходит по 3-му варианту. Когда мне необходимо записать в Файл, то я указываю явный путь: '/opt/root/.node-red/TestFile.txt'. А если надо установить ДопУзел, то вручную перезапускаю Node-Red с явным указанием Рабочей папки '/opt/root/.node-red'.
Понятно, что надо решить проблему изящнее. И чтобы следом идущие не тратили столько времени на изучение и борьбу с проблемой.
Вот поэтому Вас и терзаю
- 1
-
-
В 19.11.2019 в 11:50, TheBB сказал:В 16.11.2019 в 16:39, iFinder сказал:
3. Где создаётся тестовый файл созданный её узлом 'file' ?
не понял, какой?
Есть узел file, который может писать в файл. Если не указывать полный путь к файлу, то он создастся в той папке, которую NodeRed, вероятно, считает рабочей. У меня, например, если при запуске не указать рабочую папку, то файл пишется так, что его вообще нигде не могу найти (даже на уровень выше /opt). Поэтому очень интересно посмотреть, где его создаст Ваша NodeRed. Подробности записи в файл приложил.
Скорее всего это будет рабочая папка '/opt/lib/node_modules/node-red'
В 19.11.2019 в 11:50, TheBB сказал:В 16.11.2019 в 16:39, iFinder сказал:4. А если запустить её в ручном режиме без указания Рабочей папки, то какую папку она посчитает рабочей ?
дык, кто ж его знает, надо отслеживать.
А вот теперь интересно где Ваша NodeRed создаст этот файл, если ей при запуске не указать Рабочую папку.
В 19.11.2019 в 11:50, TheBB сказал:В 16.11.2019 в 16:39, iFinder сказал:5. Куда тогда устанавливаются Дополнительные узлы и где тогда создаётся тестовый файл созданный её узлом 'file' ?
опять не понял, лучше распишите по шагам, что-где тыкать и куда смотреть
Об использовании файла, как указателя на Рабочую папку написал Выше.
Теперь об установке дополнительных узлов. Их можно доустановить через её Web-интерфейс: Перейти в Меню (три полоски в правом верхнем углу) - Manadge pallete - Install - Отобразится общее кол-во Доп узлов - Указать, например, node-red-contrib-advanced-ping)
Если запускать NodeRed вручную уже после загрузки и не указывать рабочую папку, то при установке Допузлов из интерфейса NodeRed, они устанавливаются в '/opt/root/.node-red/node_modules/' и Node-Red их видит (т.е. они появляются в перечне установленных) !
А как себя в этом случае ведёт себя Ваша Node-Red ?
Куда она ставит Допузлы ? И видит ли их ?
-
В 19.11.2019 в 11:50, TheBB сказал:В 16.11.2019 в 16:39, iFinder сказал:
3. Где создаётся тестовый файл созданный её узлом 'file' ?
не понял, какой?
-
4 минуты назад, TheBB сказал:
рекомендация не моя, а разработчиков )))
Это ни в коем случае не претензия, а подчёркивание факта, что мною делалось также.
5 минут назад, TheBB сказал:дык, кто ж спорит. что имеем, то имеем:
Я с Вами согласен, спорить не о чем.
Почему у Вас Рабочая папка отличается от моей мне пока не понятно.
Но и в остальном у меня полная неразбериха с поведением Node-Red.
Поэтому для чистоты эксперимента мне надо ещё раз установить Node-Red с нуля - тогда ситуация может прояснится.
Но вероятность, что у Вас стандартный вариант установки Node-Red, значительно выше.
Поэтому было бы очень интересно узнать как ведёт себя Ваша Node-Red:
1. Какой строкой Вы её запускаете при загрузке (в INIT-скрипте) ?
2. Куда через её Web-интерфейс устанавливаются Дополнительные узлы (Меню - Manadge pallete - Install - например, node-red-contrib-advanced-ping) ?
3. Где создаётся тестовый файл созданный её узлом 'file' ?
4. А если запустить её в ручном режиме без указания Рабочей папки, то какую папку она посчитает рабочей ?
5. Куда тогда устанавливаются Дополнительные узлы и где тогда создаётся тестовый файл созданный её узлом 'file' ?
У меня большие подозрения, что Ваша тоже преподнесёт сюрпризы !
Если Вам не очень сложно, проведите пожалуйста этот мини эксперимент.
-
18 минут назад, TheBB сказал:
так кто куда ставил, тот то и указывает (с флагом "-g" (global) устанавливается в "/opt/lib/node_modules/", значит-с, имеем: `node-red -u /opt/lib/node_modules/node-red >> $LOG &` )
При всём уважении к Вам, имею основания первый раз с Вами не согласиться. Вот мои аргументы:
Я устанавливал так (по Вашей рекомендации):
В 27.10.2019 в 00:03, iFinder сказал:8. Устанавливаю Node-пакет node-red за несколько минут:
~ # npm install -g --unsafe-perm node-red
Туда сама Node-Red у меня и установилась. Но есть ещё Рабочая папка Пользователя с настройками Node-Red.
Так вот при такой установке у меня эта папка оказалась здесь: '/opt/root/.node-red'.
Теперь, при выполняемом при загрузке Keenetic запуске установленной в '/opt/lib/node_modules/node-red', надо явно указать Рабочую папку Пользователя '/opt/root/.node-red'.
Подчеркну, что это именно папка Пользователя, а не папка, куда была установлена среда Node-Red.
-
В 27.10.2019 в 00:27, iFinder сказал:
15. Установил дополнительный узел Node-RED командой:
~ # npm install node-red-contrib-advanced-ping
оказалось, что оно установилось в: /opt/root/node_modules/,а надо было в: /opt/root/.node-red/node_modules/
и поэтому Node-Red его не видит.Получается, что проблема та же: надо явно указывать путь /opt/root/.node-red/
В справке указано:
~ # npm install -h npm install (with no args, in package dir) npm install [<@scope>/]<pkg> npm install [<@scope>/]<pkg>@<tag> npm install [<@scope>/]<pkg>@<version> npm install [<@scope>/]<pkg>@<version range> npm install <folder> npm install <tarball file> npm install <tarball url> npm install <git:// url> npm install <github username>/<github project> aliases: i, isntall, add common options: [--save-prod|--save-dev|--save-optional] [--save-exact] [--no-save]
Правильно ли я предполагаю, что надо устанавливать пакет так ?:
~ # npm install /opt/root/.node-red node-red-contrib-advanced-ping
Попытка установки Node-RED (Графический конфигуратор для интернета вещей)
in Вопросы по сборке и настройке Opkg
Posted · Edited by iFinder
Спасибо за инструкцию как это сделать.
Но хотелось бы понимать:
1. Что такое "индекс репы" ?
2. Зачем делать "индекс репы" ? - в этой теме раньше никогда об этом не было
3. Для чего нужен "poorbox" (с Ваших слов "обрезанный" busybox), если есть сам busybox ?