# 9.3 - Transférer et préparer la destination

## Préparer TrueNAS

Exemple :

```text
/mnt/HDD_DATA_TRUENAS/IMMICH/data
/mnt/HDD_DATA_TRUENAS/IMMICH/pgData
```

Créer les datasets et permissions avant de copier. Ne pas démarrer Immich avec des montages incomplets.

## Copier vers le dataset

Depuis la source :

```bash
rsync -aHn --numeric-ids --info=progress2 \
  CHEMIN_MEDIA_SOURCE/ \
  truenas_admin@ADRESSE_TRUENAS:/mnt/HDD_DATA_TRUENAS/IMMICH/data/
```

Après vérification :

```bash
rsync -aH --numeric-ids --info=progress2 \
  CHEMIN_MEDIA_SOURCE/ \
  truenas_admin@ADRESSE_TRUENAS:/mnt/HDD_DATA_TRUENAS/IMMICH/data/
```

La connexion SSH peut ne pas autoriser l'écriture directe. Dans ce cas, copier vers un dossier de transit contrôlé puis déplacer depuis TrueNAS avec les droits appropriés.

## Placer le dump

```bash
sudo mkdir -p /mnt/HDD_DATA_TRUENAS/IMMICH/data/backups
sudo cp immich-final.sql.gz \
  /mnt/HDD_DATA_TRUENAS/IMMICH/data/backups/
```

Corriger les permissions via l'interface TrueNAS ou avec des commandes ciblées après identification des UID.

## Configurer les montages

- données internes vers `/data` ;
- chaque dataset séparé vers `/data/NOM` ;
- bibliothèque externe vers `/mnt/external-libraries/NOM` ;
- mêmes chemins internes que la source si possible.

## Version cible

Si l'application TrueNAS ne propose que la version majeure récente :

- utiliser la restauration onboarding avec le dump compatible ;
- ou valider d'abord le dump dans une instance Docker Compose temporaire à la version source ;
- conserver la source et les sauvegardes jusqu'à réussite.

## Avant démarrage

```bash
sudo find /mnt/HDD_DATA_TRUENAS/IMMICH/data -maxdepth 1 -mindepth 1 -printf '%f\n'
sudo du -sh /mnt/HDD_DATA_TRUENAS/IMMICH/data
sudo ls -lh /mnt/HDD_DATA_TRUENAS/IMMICH/data/backups
```

Attendre les dossiers :

```text
backups
encoded-video
library
profile
thumbs
upload
```

Selon la configuration source, `library` peut être vide ou non utilisé.

## Bascule DNS

Tester d'abord en local. Modifier ensuite Caddy vers `ADRESSE_TRUENAS:30041`, recharger et tester OAuth et mobile. Ne pas changer simultanément domaine, chemins internes et identité OIDC si cela peut être évité.