Установка системы intraHouse
-
На данный момент свой файл на каждый день и каждый датчик. Датчиков пока всего один. Поэтому в моем случае проще - один файл это один день.
Понятно. В течение недели сделаем скрипт для загрузки и выложим.
А имена файлов за разные дни как-то различаются?
-
Подскажите пожалуйста есть ли настройка ip адреса IH ? чего то найти не могу:)
-
Подскажите пожалуйста есть ли настройка ip адреса IH ? чего то найти не могу:)
Да настройте его прям в убунте)
-
Подскажите пожалуйста есть ли настройка ip адреса IH ? чего то найти не могу:)
Да настройте его прям в убунте)
Так и думал:) вот не помню, в berry был такой пункт или нет, но было б удобно если он был. Или в про версии есть:)
-
Нету там тоже
-
Подскажите пожалуйста есть ли настройка ip адреса IH ? чего то найти не могу:)
В разных операционных системах эта настройка делается разными способами.
По этой причине возможность настройки IP адреса в Project Manager убрали.
-
Подскажите, пожалуйста, как можно корректно перенести папку сервера из /opt/intrahouse-c/ в /var/intrahouse-c/ ?
Интересует перенос именно самого сервера, а не папки проектов.
У меня раздел /opt живет на eMMC, а раздел /var живет на HDD.
А в /opt/intrahouse-c пишутся логи, что хотелось бы делать на HDD.
Достаточно ли переписать папку и поправить пути запуска/останова в /etc/rc.* ?
Или есть какие-то нюансы?
-
Подскажите, пожалуйста, как можно корректно перенести папку сервера из /opt/intrahouse-c/ в /var/intrahouse-c/ ?
Интересует перенос именно самого сервера, а не папки проектов.
У меня раздел /opt живет на eMMC, а раздел /var живет на HDD.
А в /opt/intrahouse-c пишутся логи, что хотелось бы делать на HDD.
Достаточно ли переписать папку и поправить пути запуска/останова в /etc/rc.* ?
Или есть какие-то нюансы?
Да, Вы можете перенести всю папку сервера в другой директорий
Есть и другой вариант - изменить только рабочую папку (Working directory), в которую переписать файл config.json.
Лог будет писаться в рабочую папку, а система может оставаться в opt.
Удалите в /opt/intrahouse-c папку log. Если все настроено верно, после перезагрузки сервера она там появится не должна
Настройка путей в скриптах системы инициализации:
Для systemd в файле /etc/systemd/system/intrahouse-c.service:
[Service] WorkingDirectory=/opt/intrahouse-c // Это рабочий директорий ExecStart=/opt/intrahouse-c/node/bin/node /opt/intrahouse-c/backend/app.js prod // Это путь для запуска службы
Для sysv в файле /etc/init.d/intrahouse-c
dir="/opt/intrahouse-c // Это рабочий директорий cmd="/opt/intrahouse-c/node/bin/node /opt/intrahouse-c/backend/app.js prod"
-
пошел по пути полного переноса, т.к. в корне папки /opt/intrahouse-c тоже есть syslog, authlog, tokens
после переноса не цепляется к базе:
12.04 23:47:42.080 WARN: IH System has started
12.04 23:47:42.136 WARN: IH Create devices start
12.04 23:47:42.166 WARN: IH Created devices:7
12.04 23:47:42.226 INFO: DBAdapter dbagent/var/intrahouse-c/backend/lib/dbadapter/mysqlagent.js has started
12.04 23:47:51.771 INFO: DBAGENT mysqlagent error 220: Database status error: Error: getaddrinfo EAI_AGAIN localhost:3306
и еще глюк после переноса - если выбрать пункт в PM "Restart Intrahouse", сервер останавливается, но не запускается
PS: нашел еще такой файл /etc/init/intrahouse-c.conf
start on filesystem and started networking stop on shutdown respawn chdir /opt/intrahouse-c env NODE_ENV=production exec /opt/intrahouse-c/node/bin/node /opt/intrahouse-c/backend/app.js prod
Попробую в нем тоже поправить пути
PPS: вылечилось. Спасибо. И графики заработали.
Наверное, имеет смысл добавить инструкцию по переносу в другую папку в документацию?
-
пошел по пути полного переноса, т.к. в корне папки /opt/intrahouse-c тоже есть syslog, authlog, tokens
Это все остается в рабочей папке. Если отделить рабочую папку, в папку приложения ничего не пишется
PS: нашел еще такой файл /etc/init/intrahouse-c.conf
> start on filesystem and started networking > stop on shutdown > respawn > chdir /opt/intrahouse-c > env NODE_ENV=production > > exec /opt/intrahouse-c/node/bin/node /opt/intrahouse-c/backend/app.js prod > >
Попробую в нем тоже поправить пути
PPS: вылечилось. Спасибо. И графики заработали.
Запуск сервиса зависит от системы инициализации
Если вам помогло редактирование /etc/init/intrahouse-c.conf - значит у вас upstart
Наверное, имеет смысл добавить инструкцию по переносу в другую папку в документацию?
Вы правы, добавим
-
Есть проблема. Не знаю ,связана ли она с переносом. Похоже, что была и до переноса, судя по логам.
При рестарте операционной системы по команде reboot - сервер после старта операционки запускается,и работает, но dbAgent не может запуститься, при этом в логах идут сообщения, что порт 8088 уже занят.
Если после этого перезапустить intraHouse командой из PM - то dbAdapter запускается, ошибки в логах исчезают.
В момент, когда идут ошибки в логах, netstat показывает ,что порт 8088 занят процессом node.
Такое ощущение, что стартуют два процесса сервера одновременно.По логам характерно, что идут записи 00:32, потом 00:33, потом опять 00:32. Т.е. нечто из двух мест пишет в один и тот же лог.
13.04 00:32:53.637 INFO: INIT Project folder: /var/lib/intrahouse-c/projects/terehovo
13.04 00:32:54.066 INFO: Run /var/lib/intrahouse-c/plugins/ihpro/ihpro_linux_arm
**13.04 00:32:55.514 INFO: ADDON Received 6 files.
13.04 00:32:55.696 WARN: IH System has started**
13.04 00:32:59.561 INFO: INIT Project folder: /var/lib/intrahouse-c/projects/terehovo
13.04 00:32:59.807 INFO: Run /var/lib/intrahouse-c/plugins/ihpro/ihpro_linux_arm
**13.04 00:33:01.132 INFO: ADDON Received 6 files.
13.04 00:33:01.296 WARN: IH System has started**
13.04 00:32:55.750 WARN: IH Create devices start
13.04 00:32:55.773 WARN: IH Created devices:7
13.04 00:32:55.832 INFO: DBAdapter dbagent/var/intrahouse-c/backend/lib/dbadapter/mysqlagent.js has started
13.04 00:33:05.823 INFO: DBAGENT mysqlagent error 220: Database status error: Error: getaddrinfo EAI_AGAIN localhost:3306
13.04 00:33:11.486 INFO: INIT Project folder: /var/lib/intrahouse-c/projects/terehovo
13.04 00:33:11.732 INFO: Run /var/lib/intrahouse-c/plugins/ihpro/ihpro_linux_arm
13.04 00:33:13.049 INFO: ADDON Received 6 files.
**13.04 00:33:13.209 ERR: INIT HTTP server port 8088 error! Address in use.
13.04 00:33:13.219 ERR: FATAL ERROR. { message: 'HTTP server port 8088 error! Address in use.' }**
13.04 00:33:13.724 IH IntraHouse has stopped.
13.04 00:33:14.478 INFO: INIT Project folder: /var/lib/intrahouse-c/projects/terehovo
13.04 00:33:14.677 INFO: Run /var/lib/intrahouse-c/plugins/ihpro/ihpro_linux_arm
13.04 00:33:15.833 INFO: ADDON Received 6 files.
13.04 00:33:15.992 ERR: INIT HTTP server port 8088 error! Address in use.
13.04 00:33:16.002 ERR: FATAL ERROR. { message: 'HTTP server port 8088 error! Address in use.' }
13.04 00:33:16.507 IH IntraHouse has stopped.
13.04 00:33:17.287 INFO: INIT Project folder: /var/lib/intrahouse-c/projects/terehovo
13.04 00:33:17.496 INFO: Run /var/lib/intrahouse-c/plugins/ihpro/ihpro_linux_arm
13.04 00:33:18.603 INFO: ADDON Received 6 files.
13.04 00:33:18.761 ERR: INIT HTTP server port 8088 error! Address in use.
13.04 00:33:18.771 ERR: FATAL ERROR. { message: 'HTTP server port 8088 error! Address in use.' }
13.04 00:33:19.276 IH IntraHouse has stopped.
[ .. дальше этот кусок непрерывно повторяется, до перезапуска из PM .. ]
13.04 00:35:53.211 INFO: INIT Project folder: /var/lib/intrahouse-c/projects/terehovo
13.04 00:35:53.435 INFO: Run /var/lib/intrahouse-c/plugins/ihpro/ihpro_linux_arm
13.04 00:35:54.669 INFO: ADDON Received 6 files.
13.04 00:35:54.828 ERR: INIT HTTP server port 8088 error! Address in use.
13.04 00:35:54.839 ERR: FATAL ERROR. { message: 'HTTP server port 8088 error! Address in use.' }
13.04 00:35:55.344 IH IntraHouse has stopped.
[ … момент перезапуска из PМ .. ]
13.04 00:35:56.122 INFO: INIT Project folder: /var/lib/intrahouse-c/projects/terehovo
13.04 00:35:56.370 INFO: Run /var/lib/intrahouse-c/plugins/ihpro/ihpro_linux_arm
13.04 00:35:56.963 IH IntraHouse has stopped.
13.04 00:35:57.683 INFO: ADDON Received 6 files.
13.04 00:35:57.843 WARN: IH System has started
13.04 00:35:57.872 WARN: IH Create devices start
13.04 00:35:57.894 WARN: IH Created devices:7
13.04 00:35:57.947 INFO: DBAdapter dbagent/var/intrahouse-c/backend/lib/dbadapter/mysqlagent.js has started
-
Запуск сервиса зависит от системы инициализации
Если вам помогло редактирование /etc/init/intrahouse-c.conf - значит у вас upstart
Большое спасибо за помощь!
Убрал /etc/init/intrahouse-c.conf - и все заработало (кроме рестарта из PM).
Буду разбираться с настройками ОС.
Спасибо!!
PS: В моем случае пришлось наоборот оставить /etc/init/intrahouse-c.conf и убрать /etc/rc*.d/intrahouse
Т.е. оставить только upstart. DbAgent и рестарт из PM после этого работают корректно.
Может, кому пригодится.
Возможно, есть смысл в инсталляторе предусмотреть, что на старой Ubuntu нужно прописывать только upstart без init.d?
Понимаю, что лучше обновить ОС.
-
Большое спасибо за помощь!
Убрал /etc/init/intrahouse-c.conf - и все заработало (кроме рестарта из PM).
Буду разбираться с настройками ОС.
Спасибо!!
PS: В моем случае пришлось наоборот оставить /etc/init/intrahouse-c.conf и убрать /etc/rc*.d/intrahouse
Т.е. оставить только upstart. DbAgent и рестарт из PM после этого работают корректно.
Может, кому пригодится.
Возможно, есть смысл в инсталляторе предусмотреть, что на старой Ubuntu нужно прописывать только upstart без init.d?
Понимаю, что лучше обновить ОС.
Добрый день!
Инсталлятор для Debian/Ubuntu прописывает файлы для стандартной системы инициализации исходя из версии ОС:
upstart для ubuntu 12, 14 - файл /etc/init/intrahouse-c.conf
systemd для ubuntu 16 и выше, debian 8 и выше - файл /etc/systemd/system/intrahouse-c.service
В /etc/rc*.d ничего не прописывается
Всегда прописывается /etc/init.d/intrahouse-c, имея в виду что стандартная система инициализации может быть отключена.
Обычно все нормально срабатывает и два раза сервис не запускается.
Какая у Вас ОС?
-
Обычно все нормально срабатывает и два раза сервис не запускается.
Какая у Вас ОС?
У меня CubieTruck 5 под управлением Linaro (диалект Ubuntu)/
При входе в ОС пишет
Welcome to Ubuntu 14.04.6 LTS (GNU/Linux 3.4.39 armv7l)
-
@denis 19:
Здравствуйте. Использую raspberry pi 3 b, microSD transcend 10 класса с высокой скоростью чтения/записи и возникла проблема. Установил rtc ds3231 согласно вашей инструкции, но иногда время сбивается на 1970 год при отключении от сети. Есть подозрения что либо чтение/запись не отрабатывает корректно из за того, что что-то грузится быстрее. Делал задержку, сначала включался модуль rtc, через 5 секунд уже сама raspberry, но проблема осталась. Подскажите пожалуйста, как победить эту проблему? а то и толку то от модуля rtc нет.
Не установлены i2c-tools и python-smbus
НУЖНО СДЕЛАТЬ ВОТ ЧТО
sudo su
raspi-config
ищем и включаем i2c
reboot
проверяем i2c
i2cdetect –y 1
если высвечивается «command not found» подключаем raspberry pi к интернету и устанавливаем apt-get install python-smbus
далее делаем apt-get install i2c-tools
далее редактируем nano /etc/modules и перед строкой i2c-dev добавляем i2c-bcm2708 сохраняемся ctrl+x yes
далее снова открываем nano /boot/config.txt и смотрим чтобы были прописаны такие строки:
Enable audio (loads snd _bcm2835)
dtparam=audio=on
dtparam=i2cl=on
dtparam=i2c_arm=on
сохраняемся ctrl+x yes
перезагружаемся
снова открываем терминал и проверяем i2c i2cdetect–y1 и если все сделали правильно, то при подключенном модуле ds3231 должна появится табличка, в которой будет видно что по i2c подключено устройство ( в табличке вас должны порадовать цифры 68 это адрес ds3231 ).
На этом еще не все
Открываем терминал
nano
В конце файла /boot/config.txt дописать строку: dtoverlay=i2c-rtc,ds3231
Удалить fake-hwclock: sudo apt-get purge fake-hwclock
( можете и отключить )
Отредактировать файл/etc/rc.local, вставив перед строкой“exit 0” строку: /sbin/hwclock -s
Отредактировать файл /etc/default/hwclock and set HWCLOCKACCESS to no: HWCLOCKACCESS=no
Устанавливаем время sudo su
Date MMDDhhmmYYYY и нажимаем enter
Записываем время в ds3231
sudo hwclock–w
гружаемся и смотрим sudo hwclock –r ( время с ds3231)
при необходимости устанавливаем свою time zone
sudo dpkg-reconfigure tzdata
-
Добрый день. Перенёс сервер на Cubietruck. Работает отлично, подключил внешний li-ion аккумулятор. Теперь сервер имеет и твердотельный накопитель (Sata) и бесперебойное питание и все это в электрощите на din рейке. А можно информацию о состоянии аккумулятора вывести на виджете?
-
Правильнее дать возможность выводить любые параметры операционной системы. Подумаем
-
Добрый день. Перенёс сервер на Cubietruck. Работает отлично, подключил внешний li-ion аккумулятор. Теперь сервер имеет и твердотельный накопитель (Sata) и бесперебойное питание и все это в электрощите на din рейке. А можно информацию о состоянии аккумулятора вывести на виджете?
А по SNMP это не доступно при обращении к операционной системе?
-
Добрый день. Перенёс сервер на Cubietruck. Работает отлично, подключил внешний li-ion аккумулятор. Теперь сервер имеет и твердотельный накопитель (Sata) и бесперебойное питание и все это в электрощите на din рейке. А можно информацию о состоянии аккумулятора вывести на виджете?
А по SNMP это не доступно при обращении к операционной системе?
Не пробовал, да и не знаю как. Считаю это «танцы с бубном», есть же информация о времени от последней перезагрузки, тип ОС, ip, температура процессора. Почему не вставить строку о состоянии батареи в %?
-
Добрый день. Перенёс сервер на Cubietruck. Работает отлично, подключил внешний li-ion аккумулятор. Теперь сервер имеет и твердотельный накопитель (Sata) и бесперебойное питание и все это в электрощите на din рейке. А можно информацию о состоянии аккумулятора вывести на виджете?
А по SNMP это не доступно при обращении к операционной системе?
Не пробовал, да и не знаю как. Считаю это «танцы с бубном», есть же информация о времени от последней перезагрузки, тип ОС, ip, температура процессора. Почему не вставить строку о состоянии батареи в %?
Да, Вы правы, в линуксе для этого нужно читать файлы в папке /sys/class/power_supply….
Проблема в том что дальше могут быть варианты в зависимости от платы компьютера и ОС
А на многих компьютерах эта папка пуста
Можно решить эту задачу добавлением плагина, который будет периодически считывать файлы, которые задаст пользователь
Вероятно, так и сделаем