Installer Home Assistant Sur Proxmox

De Wiki de Mémoire Vive
Aller à la navigation Aller à la recherche

Mes notes pour installer Home Assistant

Une bonne piste, https://community.home-assistant.io/t/installing-home-assistant-os-using-proxmox-7/201835

C'est une bonne piste, j'ai installé Home Assistant en 5mn.

Se connecter sur la machine proxmox avec Putty ou autre et lancer ce script,

bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/misc/post-pve-install.sh)"

Et là c'est la fête,

    __  __                        ___              _      __              __     ____  _____
   / / / /___  ____ ___  ___     /   |  __________(_)____/ /_____ _____v5/ /_   / __ \/ ___/
  / /_/ / __ \/ __ `__ \/ _ \   / /| | / ___/ ___/ / ___/ __/ __ `/ __ \/ __/  / / / /\__ \
 / __  / /_/ / / / / / /  __/  / ___ |(__  |__  ) (__  ) /_/ /_/ / / / / /_   / /_/ /___/ /
/_/ /_/\____/_/ /_/ /_/\___/  /_/  |_/____/____/_/____/\__/\__,_/_/ /_/\__/   \____//____/
Using Default Settings
Using HAOS Version: 9.5
Using Virtual Machine ID: 106
Using Machine Type: i440fx
Using Hostname: haos9.5
Allocated Cores: 2
Allocated RAM: 4096
Using Bridge: vmbr0
Using MAC Address: 02:E6:BB:3D:52:33
Using VLAN: Default
Using Interface MTU Size: Default
Start VM when completed: yes
Creating a HAOS VM using the above default settings
✓ Using local-lvm for Storage Location.
✓ Virtual Machine ID is 106.
✓ https://github.com/home-assistant/operating-system/releases/download/9.5/haos_ova-9.5.qcow2.xz
✓ Downloaded haos_ova-9.5.qcow2.xz
✓ Extracted KVM Disk Image
✓ Created HAOS VM (haos9.5)
✓ Started Home Assistant OS VM
✓ Completed Successfully!

Ensuite, aller sur l'onglet Summary de la VM (qui sera apparue dans la liste) et relever l'adresse IP Puis se connecter avec cette adresse (exemple dans mon cas),

http://192.168.0.35:8123/

L'interface graphique de HA s'ouvre et c'est parti.



Home Assistant est un logiciel open-source de domotique qui permet de connecter différents dispositifs intelligents et services en ligne. Voici une liste non exhaustive des dispositifs et services que vous pouvez connecter à Home Assistant :

1) Dispositifs de domotique : Home Assistant prend en charge un grand nombre de dispositifs de domotique populaires, tels que les lumières, les interrupteurs, les prises, les thermostats, les caméras, les capteurs de mouvement, les serrures intelligentes, etc. Certains des dispositifs populaires qui sont pris en charge par Home Assistant incluent Philips Hue, LIFX, Ecobee, Nest, Sonos, Xiaomi Aqara, TP-Link, etc.

2) Services en ligne : Home Assistant permet également de connecter différents services en ligne, tels que les services météorologiques, les services de streaming de musique, les services de notifications, les services de calendrier, les services de géolocalisation, etc. Certains des services populaires pris en charge par Home Assistant incluent Google Assistant, Amazon Alexa, IFTTT, Spotify, Trello, Dark Sky, etc.

3) Protocoles de communication : Home Assistant prend en charge plusieurs protocoles de communication, tels que MQTT, Zigbee, Z-Wave, Bluetooth, Wi-Fi, etc. Cela permet de connecter des dispositifs qui utilisent différents protocoles de communication.

4) Intégration avec d'autres logiciels de domotique : Home Assistant peut être intégré avec d'autres logiciels de domotique pour étendre ses fonctionnalités. Par exemple, il peut être intégré avec Node-RED pour créer des automatisations plus complexes.


1ere étape, installer Debian (une VM sur Proxmox dans mon cas, avec SSH, serveur web, sans interface graphique)

Les étapes pour installer Home Assistant sur Debian sont similaires à celles pour Linux en général. Voici les étapes spécifiques à Debian :

Ouvrez un terminal sur Debian.

Installez les dépendances nécessaires :

sudo apt-get update
sudo apt-get install python3 python3-pip python3-dev libffi-dev libssl-dev libxml2-dev libxslt1-dev libjpeg-dev libpng-dev libavformat-dev libavcodec-dev libavdevice-dev libavutil-dev libswscale-dev libavresample-dev libtiff5-dev libopenjp2-7-dev libwebp-dev libopus-dev libvorbis-dev libtheora-dev libsqlite3-dev libmysqlclient-dev libpq-dev zlib1g-dev

Ceci renvoie plein d'erreur, on verra bien

Installez Home Assistant :

sudo pip3 install homeassistant
=> bash: pip3 : commande introuvable

Je bascule sur un autre tuto...

https://community.home-assistant.io/t/installing-home-assistant-supervised-on-debian-11/200253

Install OS Agent, Docker and Dependencies

apt update && sudo apt upgrade -y && sudo apt autoremove -y
apt --fix-broken install
apt-get install jq wget curl udisks2 libglib2.0-bin network-manager dbus systemd-journal-remote -y
curl -fsSL get.docker.com | sh

Visit the OS Agent page and then replace the version number with the latest available, into the commands below. (i.e. replace all references to 1.4.1 with the latest available)


wget https://github.com/home-assistant/os-agent/releases/download/1.4.1/os-agent_1.4.1_linux_x86_64.deb
dpkg -i os-agent_1.4.1_linux_x86_64.deb

Et là ça ne marche pas,

dpkg: avertissement: « ldconfig » introuvable dans la variable PATH ou non exécutable
dpkg: avertissement: « start-stop-daemon » introuvable dans la variable PATH ou non exécutable
dpkg: erreur: 2 programmes attendus non trouvés dans la variable PATH ou non exécutables
Note : la variable PATH du superutilisateur doit normalement contenir /usr/local/sbin, /usr/sbin et /sbin

Quand je regarde le Path,

echo $PATH

Il manque les bons PATH,

/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

Pourtant, avec un grep -r "PATH" /etc/ Je trouve,

/etc/profile:  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
/etc/profile:  PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"

Et dans le fichier,

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
if [ "$(id -u)" -eq 0 ]; then
 PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
 PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"

Et quand je tape id -u je trouve bien 0, donc mystère, je vais appeler un ami !

Voici le fichier complet

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
if [ "$(id -u)" -eq 0 ]; then
 PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
 PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
export PATH
if [ "${PS1-}" ]; then
 if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ]; then
   # The file bash.bashrc already sets the default PS1.
   # PS1='\h:\w\$ '
   if [ -f /etc/bash.bashrc ]; then
     . /etc/bash.bashrc
   fi
 else
   if [ "$(id -u)" -eq 0 ]; then
     PS1='# '
   else
     PS1='$ '
   fi
 fi
fi
if [ -d /etc/profile.d ]; then
 for i in /etc/profile.d/*.sh; do
   if [ -r $i ]; then
     . $i
   fi
 done
 unset i
fi




Procédure ChatGPT, pour mémoire

Configurez Home Assistant : Créez un utilisateur système dédié à Home Assistant avec la commande suivante :

sudo useradd -rm homeassistant -G dialout,gpio

Créez un répertoire pour stocker les fichiers de configuration :

sudo mkdir /home/homeassistant/.homeassistant
sudo chown homeassistant:homeassistant /home/homeassistant/.homeassistant

Démarrez Home Assistant :

sudo systemctl start home-assistant@homeassistant.service

Vérifiez le statut de Home Assistant :

sudo systemctl status home-assistant@homeassistant.service

Si tout fonctionne correctement, configurez Home Assistant pour qu'il démarre automatiquement au démarrage du système :

sudo systemctl enable home-assistant@homeassistant.service

Vous devriez maintenant être en mesure d'accéder à Home Assistant à partir de votre navigateur en accédant à l'adresse suivante : http://localhost:8123.