Хочу в целях эксперимента разобрать, как на Raspberry Pi 3 Model B+ оси Raspbian Stretch поставить систему умного дома Domoticz от и до. Хочется протестировать небольшой функционал: как использовать Zigbee шлюз и подключать к нему датчики и т.д.

Порядок установки Domoticz на Raspbian Stretch

Шаг №1: У меня есть образ системы выполненный после моей настройки описанной в заметке Чистим систему Raspbian Stretch на свое усмотрение

Шаг №2: Узнаю на каком IP сидит мой миникомпьютер Raspberry Pi 3 Model B+

ekzorchik@srv-lubuntu:~$ sudo nmap 172.33.33.0/24 -p 22 | grep srv-rasp

Nmap scan report for srv-rasp.polygon.lan (172.33.33.118)

ekzorchik@srv-lubuntu:~$

Шаг №3: Подключаюсь к своему миникомпьютеру:

ekzorchik@srv-lubuntu:~$ ssh -l pi srv-rasp.polygon.lan

The authenticity of host 'srv-rasp.polygon.lan (172.33.33.118)' can't be established.

ECDSA key fingerprint is SHA256:ErSWUCg0gBzaD/C2w7nyj9Zr9jJTUbYZOxfQqWgviCc.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added 'srv-rasp.polygon.lan,172.33.33.118' (ECDSA) to the list of known hosts.

pi@srv-rasp.polygon.lan's password: raspberry

Linux raspberrypi 4.9.45-v7+ #1031 SMP Fri Aug 25 19:02:16 BST 2017 armv7l

The programs included with the Debian GNU/Linux system are free software;

the exact distribution terms for each program are described in the

individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent

permitted by applicable law.

Last login: Sat Aug 26 21:17:09 2017

pi@raspberrypi:~ $

pi@raspberrypi:~ $ uname -a

Linux raspberrypi 4.19.105-v7+ #1296 SMP Thu Feb 20 16:13:01 GMT 2020 armv7l GNU/Linux

pi@raspberrypi:~ $ lsb_release -a

No LSB modules are available.

Distributor ID: Raspbian

Description: Raspbian GNU/Linux 9.4 (stretch)

Release: 9.4

Codename: stretch

pi@raspberrypi:~ $

Шаг №4: Обновляю систему до самого последнего состояния на момент написания данной заметки для себя:

pi@raspberrypi:~ $ sudo rm -Rf /var/lib/apt/lists

pi@raspberrypi:~ $ sudo apt-get update && sudo apt-get upgrade -y && sudo rpi-update

Would you like to proceed? (y/N) y

pi@raspberrypi:~ $ sudo reboot

ekzorchik@srv-lubuntu:~$ ssh -l pi srv-rasp.polygon.lan

password: raspbian

pi@raspberrypi:~ $ uname -a && lsb_release -a

Linux raspberrypi 5.10.63-v7+ #1456 SMP Thu Sep 23 15:31:20 BST 2021 armv7l GNU/Linux

No LSB modules are available.

Distributor ID: Raspbian

Description: Raspbian GNU/Linux 9.13 (stretch)

Release: 9.13

Codename: stretch

pi@raspberrypi:~ $

Шаг №5: Устанавливаю Domoticz через инсталлятор который рекомендуется в документации к ПО на сайте:

pi@raspberrypi:~ $ sudo curl -L https://install.domoticz.com | sudo bash

This installer will transform your device into a Home Automation

System!

Domoticz is free, but powered by your donations at:

http://www.domoticz.com

Domoticz is a SERVER so it needs a STATIC IP ADDRESS to function

properly.

Нажимаю OK

Select Services (press space to select)

[*] HTTP Enables HTTP access

[*] HTTPS Enabled HTTPS access

Нажимаю OK

HTTP Port number: 8080

Нажимаю OK

HTTPS Port number: 443

Нажимаю OK

Installation Folder:/home/pi/domoticz

Нажимаю OK

Installation Complete!

Point your browser to either:

HTTP: 172.33.33.118:8080

HTTPS: 172.33.33.118:443

Wiki: https://www.domoticz.com/wiki

Forum: https://www.domoticz.com/forum

The install log is in /etc/domoticz.

Нажимаю OK

::: Restarting services...

:::

::: Enabling domoticz.sh service to start on reboot... done.

:::

::: Starting domoticz.sh service... done.

::: done.

:::

::: Installation Complete! Configure your browser to use the Domoticz using:

::: 172.33.33.118:8080

::: 172.33.33.118:443

pi@raspberrypi:~ $

pi@raspberrypi:~ $ sudo netstat -tulpn | grep :8080

pi@raspberrypi:~ $

Шаг №6: Что-то Domoticz не поднялся, порт 8080 не прослушивается, смотрю логи:

pi@raspberrypi:~ $ sudo tail -f /var/log/syslog | head -n3

Sep 25 21:25:27 raspberrypi systemd[1]: Starting LSB: Home Automation System...

Sep 25 21:25:27 raspberrypi domoticz.sh[847]: /home/pi/domoticz/domoticz: /lib/arm-linux-gnueabihf/libm.so.6: version `GLIBC_2.27' not found (required by /home/pi/domoticz/domoticz)

Sep 25 21:25:27 raspberrypi domoticz.sh[847]: /home/pi/domoticz/domoticz: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.28' not found (required by /home/pi/domoticz/domoticz)

^C

pi@raspberrypi:~ $

Шаг №7: Проверяю, а какая версия libc содержится в репозитариях Raspbian Stretch:

pi@raspberrypi:~ $ apt show libc6 | grep Version

Version: 2.24-11+deb9u4

pi@raspberrypi:~ $

Плохо, версия 2.24-11 а нужна 2.27, как быть?

Шаг №8: Выход!, это произвести обновление Raspbian Stretch до Raspbian Buster. Проверю установленные пакет на предмет ошибок или неучтенных зависимостей:

pi@raspberrypi:~ $ dpkg -C

pi@raspberrypi:~ $

pi@raspberrypi:~ $ apt-mark showhold

pi@raspberrypi:~ $

ошибок нет, двигаюсь дальше

Шаг №9: Заменяю в файле репозитария sources.list слово stretch на buster:

pi@raspberrypi:~ $ sudo sed -i 's/stretch/buster/g' /etc/apt/sources.list

pi@raspberrypi:~ $ sudo sed -i 's/stretch/buster/g' /etc/apt/sources.list.d/raspi.list

pi@raspberrypi:~ $

Шаг №10: Удаляю пакет списка изменений:

pi@raspberrypi:~ $ sudo apt-get remove -y apt-listchanges

Шаг №11: Чтобы обновить существующие пакеты без обновления модулей ядра или удаления пакетов, выполните следующее:

pi@raspberrypi:~ $ sudo apt-get update && sudo apt-get -y upgrade

Modify smb.conf to use WINS settings from DHCP? No

Restart services during package upgrades without asking? No

Services to restart for PAM library upgrade: cron - и нажимаю OK

pi@raspberrypi:~ $

pi@raspberrypi:~ $ uname -a && lsb_release -a

Linux raspberrypi 5.10.63-v7+ #1456 SMP Thu Sep 23 15:31:20 BST 2021 armv7l GNU/Linux

No LSB modules are available.

Distributor ID: Raspbian

Description: Raspbian GNU/Linux 10 (buster)

Release: 10

Codename: buster

pi@raspberrypi:~ $

Шаг №12: Смотрю теперь какая версия пакета libc6 присутствует в репозитариях и устанавливаю ее:

pi@raspberrypi:~ $ apt show libc6 | grep Version

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

Version: 2.28-10+rpt2+rpi1

pi@raspberrypi:~ $

pi@raspberrypi:~ $ sudo apt-get install -y libc6

Services to restart for GNU libc library upgrade: ssh cron и нажимаю OK

The default action is to keep your current version.

*** locale.alias (Y/I/N/O/D/Z) [default=N] ? N или Enter

Шаг №13: Перезапускаю Domoticz сервис:

pi@raspberrypi:~ $ sudo systemctl restart domoticz.service

pi@raspberrypi:~ $ sudo netstat -tulpn | grep :8080

tcp6 0 0 :::8080 :::* LISTEN 17955/domoticz

pi@raspberrypi:~ $

Шаг №14: Открываю в браузере URL:http://172.33.33.118:8080

Domoticz успешно установлен на Raspbian Buster

Итого: дистрибутив Stretch уже не может использовать в качестве операционной системы для системы умного дома Domoticz, только Buster на Raspberr Pi 3 Model B+

А так я успешно установил и написал для себя пошаговую заметку.

На этом я прощаюсь, с уважением автор блога Олло Александр aka ekzorchik.