Come connettersi in SSH senza password

Sul vostro client eseguite:

ssh-keygen

E poi premete invio 3 volte per generare una public-private key pair.

Ora eseguite (con l’indirizzo IP modificato e l’utente) per copiare ~/.ssh/authorized_keys sull’host:

ssh-copy-id -i ~/.ssh/id_rsa.pub pi@192.168.1.6

Voilà, ora potrete connettervi direttamente senza dover reinserire ogni volta la password!

Provate voi stessi con uno script bash:

#!/bin/bash

ssh pi@192.168.1.6 "./prova.py"

Se invece usate Docker (ad esempio Home Assistant, qui la guida su come installarlo con Docker) la procedura è un po’ diversa. Vediamo come:

mkdir ~/hass/ssh
ssh-keygen -t rsa -f ~/hass/ssh/id_rsa
ssh-copy-id -i ~/hass/ssh/id_rsa pi@192.168.1.6
E poi create uno script all'interno di ~/hass/script/ specificando un po' più di parametri (considerate anche che il /config/ssh è un percorso relativo all'immagine Docker):
#!/bin/bash

ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i /config/ssh/id_rsa kvm-pi@192.168.1.6 -tt 'bash -l -c "./prova.py"

Come aggiornare Home Assistant con Docker

Come al solito, aggiornare può essere a little bit tricky se non avete fatto un backup come si deve, perché potreste incorrere in bug o incompatibilità che non avete previsto.

Sul sito di Home Assistant consigliano di controllare bene le release e assicurarvi di non “rompere tutto” durante la fase di aggiornamento.

Quindi il mio solito consiglio è fare un bel:

sudo cp -avr hass hassBackup

Per assicurarvi d’aver salvato tutto il database (può arrivare anche a diversi GB) e le impostazioni.
Detto questo, procediamo con l’aggiornamento!

Prima di tutto stoppate il container e rimuovetelo:

sudo docker stop home-assistant
sudo docker rm home-assistant

Scaricate l’aggiornamento:

sudo docker pull homeassistant/home-assistant:latest

E in caso di successo, create un nuovo container nello stesso percorso che avete utilizzato durante l’installazione:

sudo docker run -d --name="home-assistant" -v /home/pi/hass:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/home-assistant

Come installare Home Assistant con Docker

Presuponendo che vogliate installarlo su una distribuzione Linux e che abbiate già installato Docker, vi basterà eseguire:

sudo docker run -d --name="home-assistant" -v /home/pi/hass:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/home-assistant

Aspettate che scarichi tutti i file necessari e voilà, vi basterà eseguire:

sudo docker start home-assistant

Nel caso invece vogliate poi rimuoverlo, seguite questa guida.