Для установки Home Assistant проделайте следующие шаги:
1. Обновите систему и зависимости:
sudo pacman -Syu
2. Установите зависимости и компоненты:
sudo pacman -S python python-pip python-virtualenv base-devel libffi openssl
3. Установите пакет FFmpeg:
sudo pacman -S ffmpeg
При установке будет выбор между двумя вариантами: "jack2" и "pipewire-jack", в большинстве случаев рекомендовано - "pipewire-jack". После установки проверьте версию коммандой "ffmpeg -version".
4. Создайте пользователя и каталоги:
sudo useradd -rm homeassistant -d /srv/homeassistant -s /bin/bash
sudo mkdir -p /srv/homeassistant
sudo chown -R homeassistant:homeassistant /srv/homeassistant
5. Настройте виртуальное окружение:
sudo su - homeassistant # Переключение на пользователя
cd /srv/homeassistant
python -m venv venv # Создание окружения
source venv/bin/activate # Активация окружения
6. Установите Home Assistant через pip:
pip install wheel zlib-ng isal
pip install homeassistant
7. Сконфигурируйте каталог:
mkdir -p /srv/homeassistant/.homeassistant
exit # Выход из пользователя homeassistant
sudo chown -R homeassistant:homeassistant /srv/homeassistant/.homeassistant
8. Создайте systemd-сервис:
sudo nano /etc/systemd/system/homeassistant.service
Добавьте в файл:
[Unit]
Description=Home Assistant
After=network-online.target
[Service]
Type=simple
User=homeassistant
WorkingDirectory=/srv/homeassistant/.homeassistant
ExecStart=/srv/homeassistant/venv/bin/hass -c "/srv/homeassistant/.homeassistant"
[Install]
WantedBy=multi-user.target
9. Запустите сервис:
sudo systemctl daemon-reload
sudo systemctl enable --now homeassistant
10. Проверка установки:
Откройте в браузере http://server_name_or_ip:8123. Если страница не загружается спустя несколько минут после старта сервиса - выясните, открыты ли порты, и проверьте логи:
sudo ss -tlnp | grep ':8123'
journalctl -u homeassistant -f
Процедура бэкапа:
1. Остановите Home Assistant:
sudo systemctl stop homeassistant
2. Зархивируйте конфигурацию:
sudo tar -czvf bkp_$(date +%Y-%m-%d).tar.gz -C /srv/homeassistant/.homeassistant .
3. Скопируйте архив в надежное хранилище (например, облако или внешний диск).
4. Запустите сервис:
sudo systemctl start homeassistant
5. Добавьте задание в cron (запуск раз в неделю):
0 3 * * 0 sudo systemctl stop homeassistant && tar -czvf /backup/ha_backup_$(date +\%Y-\%m-\%d).tar.gz -C /srv/homeassistant/.homeassistant . && sudo systemctl start homeassistant
Обновление версии Home Assistant:
1. Выполните бэкап (см. выше).
2. Остановите сервис:
sudo systemctl stop homeassistant
3. Активируйте виртуальное окружение:
sudo su - homeassistant
source /srv/homeassistant/venv/bin/activate
4. Обновите Home Assistant:
pip install --upgrade homeassistant
exit # Выход из пользователя homeassistant
5. Запустите сервис:
sudo systemctl start homeassistant
6. Проверьте логи на наличие ошибок:
journalctl -u homeassistant -f
Примечания:
Для отката версии используйте бэкап и команду "pip install homeassistant==x.x.x" (где "x.x.x" — нужная версия).
Если после обновления Arch Linux изменилась версия Python, пересоздайте виртуальное окружение следующим образом:
1. Остановите сервис Home Assistant:
sudo systemctl stop homeassistant
2. Убедитесь, что версия Python изменилась:
python --version
3. Создайте резервную копию конфигурации:
sudo tar -czvf bkp_$(date +%Y-%m-%d).tar.gz -C /srv/homeassistant/.homeassistant .
4. Удалите старое виртуальное окружение:
sudo su - homeassistant
cd /srv/homeassistant
rm -rf venv
5. Создайте новое виртуальное окружение:
python -m venv venv # Используется обновленная версия Python
source venv/bin/activate
6. Переустановите Home Assistant:
pip install wheel zlib-ng isal homeassistant
exit # Выход из пользователя homeassistant
7. Запустите сервис:
sudo systemctl start homeassistant
Комментариев нет:
Отправить комментарий