Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Raspberry Pi: backup di foto e video con Immich

Raspberry Pi: come eseguire il backup automatico e continuo di foto e video con l'applicazione open source Immich
Raspberry Pi: come eseguire il backup automatico e continuo di foto e video con l'applicazione open source Immich
Link copiato negli appunti

Nelle nostre guide abbiamo spesso parlato dell'importanza del backup dei dati. Impostare un backup automatizzato di video e foto, magari su un disco remoto, permette all'utente di tutelarsi non solo da possibili malfunzionamenti ma anche da attacchi informatici basati, ad esempio, sui ransomware. Quella tipologia di malware che si infiltra in un sistema, ne cripta i dati e comunica alla vittima che per riavere indietro i file è necessario pagare un riscatto, spesso in criptovalute.

È quindi essenziale per chiunque eseguire un backup continuativo dei dati presenti nei propri dispositivi. Nel tutorial di oggi andremo dunque ad illustrare la realizzazione di un sistema di backup di foto e video sfruttando Immich e Raspberry Pi.

Cosa è Immich

Immich è una soluzione self-hosted ed open source che consente di eseguire il backup automatizzato e continuativo dei propri album fotografici. Tale programma dà la possibilità agli utenti di svincolarsi dai servizi Cloud presenti in rete. Permette infatti di eseguire il salvataggio dei file su di un disco presente nella rete locale e ospitato su di un server Linux. Una configurazione possibile anche con Raspberry Pi.

Con Immich è possibile anche risparmiare abbattendo il costo di un abbonamento ai servizi Cloud, rimanendo indipendenti dalle piattaforme online. La guida di oggi è adatta chiunque, anche a coloro che hanno pochissima dimestichezza con il mondo delle distribuzioni Linux e sono da poco venuti in possesso della nota board ARM low cost Raspberry Pi.

Ovviamente noi consigliamo sempre di non utilizzare un singolo metodo di backup per i propri dati. Idealmente l'utente dovrebbe avere più di un backup dei propri dati, magari su supporti dislocati in posizioni geografiche differenti.

In passato abbiamo affrontato più volte questo argomento, quindi vi rimandiamo alle nostre guide per eventuali approfondimenti.

Requisiti hardware

Come accennato prima per realizzare il server Linux su cui eseguire un'istanza di Immich sfrutteremo Raspberry Pi. Quindi è necessario procurarsi tale board. Per questo progetto basta anche un Raspberry Pi 4 anche se vi consigliamo, se dovete partire da zero, di reperire direttamente un modello più recente cosi da ottenere le massime prestazioni possibili da Immich.

Per la prima configurazione, nel caso in cui non si avesse dimestichezza con SSH, avremo anche bisogno di una microSD/SSD dove allocare sistema operativo e dati, mouse, tastiera, monitor, cavi HDMI, USB-C ed ethernet cat6.

Installazione e configurazione di Raspberry Pi OS

In questa guida abbiamo scelto di affidarci a Raspberry Pi OS, ovvero la distribuzione Linux di riferimento per questa board. Potenzialmente è però possibile utilizzare il sistema Linux che preferiamo, visto che andremo ad installare Immich tramite un container Docker.

Quindi avviamo questa guida eseguendo il download dell'imaging tool Raspberry Pi Imager, il programma che ci consente di installare la distribuzione sulla nostra microSD.

raspberry pi imager

Avviamo questa utility e clicchiamo su "Choose Device" per selezionare il modello di Raspberry Pi che stiamo usando. Clicchiamo poi su "Choose OS" per scegliere il sistema operativo da utilizzare, noi vi consigliamo Raspberry Pi OS a 64bit, successivamente con "Choose Storage" indichiamo al tool la microSD da utilizzare.

raspberry pi imager raspberry pi imager

Proseguiamo tramite il tasto "Next" ed a questo punto Raspberry Pi Imager ci proporrà due opzioni: applicare delle impostazioni personalizzate sin dal primo boot o sfruttare dei setting standard.

raspberry pi imager

Cliccando sul tasto "EDIT SETTING" si può inserire la nostra password Wi-Fi per poi abilitare l'accesso tramite SSH sin dal primo boot, cosi da evitare di connettere il device ad un monitor ed altre periferiche di input. Dobbiamo poi inserire un hostname personalizzato oltre alla timezone ed al keyboard layout.

raspberry pi imager raspberry pi imager

Se invece scegliamo la seconda opzione, ovvero il tasto "NO, CLEAR SETTING", otterremo un sistema operativo pulito che dovremo personalizzare manualmente. In base alle vostre preferenze, o alla disponibilità di un secondo monitor per la configurazione iniziale del Raspberry Pi, potete optare per una o per l'altra opzione.

Infine clicchiamo su "YES" per avviare il flash di Raspberry Pi OS.

raspberry pi imager

L'operazione dovrebbe durare qualche minuto. Al suo termine basta inserire la microSD e connettere il tutto all'alimentazione elettrica.

Installazione di Docker su Raspberry Pi OS

raspberry pi OS

Dopo il primo boot potremo accedere al Desktop di Raspberry Pi OS ed installare Docker. Apriamo quindi il terminale e digitiamo:

curl -sSL https://get.docker.com | sh

sudo sh get-docker.sh

Con il secondo comando abbiamo indicato al sistema di eseguire l'installer di Docker. Procediamo quindi aggiungendo il nostro utente al gruppo dedicato:

sudo usermod -aG docker nomedelvostroutente

Inoltre, per comodità vi consigliamo di aggiungere Docker alla lista dei programmi da avviare in automatico al boot tramite il gestore dei demoni systemd:

sudo systemctl enable docker.service && sudo systemctl enable containerd.service

Installazione e configurazione di Immich su Raspberry Pi OS

Passiamo alla configurazione di Immich. Prima di tutto installiamo il download manager wiget sempre da bash:

sudo apt install wget

e generiamo il Docker compose file in un'apposita directory:

mkdir ~/immich

cd ~/immich

wget https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml

Ora eseguiamo il download dell'environment file:

wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env

Tramite l'opzione -O l'ultimo file scaricato viene salvato come .env invece che come example.env. Quindi procediamo alla modifica di tale file di setting tramite l'editor nano:

nano .env

Il primo parametro da modificare si chiama UPLOAD_LOCATION che serve per indicare al container dove salvare tutti i dati della nostra librerie di foto e video. Quindi inseriamo la directory che desideriamo:

UPLOAD_LOCATION=/home/nomeutente/latuadirectory

Successivamente modifichiamo la voce DB_PASSWORD per impostare una password personalizzata al database PostgreSQL usato da Immich per catalogare i file:

DB_PASSWORD=lavostrapasswordpersonalizzata

Salviamo dunque le modifiche al file con CTRL+O e chiudiamo l'editor nano con CTRL+X. Avviamo poi il Docker container di Immich:

docker compose up -d

Accesso alla web interface di Immich

A questo punto siamo pronti per connetterci all'istanza di Immich tramite la sua comoda interfaccia web. Avviamo quindi il nostro browser di fiducia e digitiamo:

http://192.168.1.12:2283

192.168.1.12 è l'IP locale di Raspberry Pi, tale dato cambia in base alla vostra LAN. Potete trovarlo tra i setting del router o digitando in bash:

hostname -I

Come output otteniamo quindi il nostro IP locale, ecco un esempio:

192.168.1.12

2283 è invece il numero della porta su cui è in ascolto il Web server di Immich. Questo dato è reperibile all'interno del Docker compose file scaricato in precedenza.

immich

Una volta digitato l'URL nel browser si avvierà il primo wizard di configurazione di Immich e potremo creare un account ed iniziare a configurare il backup di foto e video.

Ti consigliamo anche