Transférer vos photos : d'Apple Photos et Google Photos vers Immich ou Nextcloud
Les 50 premiers Go de photos pèsent le moins lourd. Ensuite, le compteur s’enclenche : chaque année que votre iPhone ou téléphone Android tient le coup, s’ajoutent quelques centaines de Go de prises de vue, de vidéos et de Live Photos. Tant que celles-ci se trouvent dans Apple Photos ou Google Photos, vous payez un abonnement mensuel pour l’espace et la plateforme décide de ce qui arrive à vos fichiers. L’auto-hébergement semble magnifique, jusqu’à ce que quelque chose tombe en panne un dimanche soir à vingt-trois heures trente. Là, vous n’êtes plus un client qui attend le service d’assistance. Vous êtes le service d’assistance.
Cet article explique comment transférer votre bibliothèque vers Immich ou Nextcloud Photos, en conservant les métadonnées, les albums et la structure. Pas d’histoires sur les raisons pour lesquelles vous devriez le faire — vous les connaissez déjà. Seulement le chemin pour y arriver.
Prérequis
Vous avez besoin d’un serveur Immich fonctionnel (version 1.106 ou plus récente) ou d’une installation Nextcloud (version 28 ou plus récente) avec l’application Photos. Pour la migration, vous utilisez une machine avec suffisamment d’espace disque — comptez sur la taille totale de votre bibliothèque plus un tiers en plus pour l’export décompressé. Et vous avez besoin d’accéder à votre compte Apple ou Google pour demander l’export.
Pour l’import dans Immich, vous utilisez immich-go, un outil communautaire spécialement conçu pour les migrations en masse. Vous l’installez comme binaire autonome :
curl -sSL https://github.com/simulot/immich-go/releases/latest/download/immich-go_Linux_x86_64.tar.gz | tar xz
La documentation d’Immich version 1.106 (27 juillet 2026) renvoie explicitement à cet outil comme voie recommandée pour les migrations depuis Google Photos et iCloud.
Depuis Apple Photos : exporter via iCloud ou osxphotos
Apple ne propose pas d’API directe pour télécharger toute votre bibliothèque. La voie officielle passe par iCloud, où vous pouvez demander un export de toutes vos données. Cet export arrive sous forme de fichier zip ou d’une série de dossiers, selon la taille. Il contient les photos, les vidéos, les structures de dossiers et les métadonnées.
Une alternative est osxphotos (version 0.64.0 ou plus récente), un outil communautaire qui lit directement dans votre bibliothèque Apple Photos locale. Il ne prend pas seulement les fichiers, mais aussi les données de localisation, les albums et la reconnaissance faciale. Vous l’exécutez sur un Mac :
osxphotos export /chemin/vers/export --export-as-hardlink --albums --metadata
Le drapeau --export-as-hardlink évite que l’outil copie les fichiers ; ils renvoient aux originaux. Cela économise de l’espace disque, mais signifie aussi que vous ne pouvez pas supprimer la bibliothèque d’origine tant que l’export existe.
Depuis Google Photos : Takeout est la clé
Chez Google, la fonction d’export s’appelle Takeout. Vous demandez un export via [takeout.google.com](https://takeout.google.com), sélectionnez Google Photos et choisissez le format. Google traite la demande et envoie un e-mail dès que l’export est prêt. Cela peut prendre quelques jours — pour les grandes bibliothèques, une semaine n’est pas une exception.
L’export arrive sous forme de fichiers zip de maximum 50 Go chacun. Cette limite n’est pas un hasard : des fichiers plus gros deviennent difficiles à télécharger et à traiter, mais des blocs plus petits signifient plus de téléchargements. Choisissez 50 Go si vous avez une connexion rapide, 10 Go si vous voulez pouvoir reprendre après une interruption.
Le nom de fichier de chaque export suit le modèle takeout-YYYYMMDDTHHmmssZ*.zip. Cet horodatage est important : il vous indique précisément quand l’export a été créé. Si vous reconnaissez ce modèle, vous pouvez automatiser le processus de décompression avec une simple boucle :
for f in takeout-*.zip; do unzip -o "$f" -d takeout; done
Importer dans Immich : immich-go fait le travail lourd
Immich lui-même dispose d’une CLI officielle (immich-cli) qui téléverse des dossiers vers votre serveur. Elle est parfaite pour de petites quantités ou une synchronisation régulière, mais pas adaptée à une migration unique de dizaines de milliers de fichiers. La CLI téléverse les fichiers, mais n’interprète pas la structure Takeout et ne crée pas d’albums.
C’est pour cela que immich-go a été créé. Cet outil connaît la structure des exports Google Takeout et iCloud et la convertit en entités compatibles Immich. Les albums qui n’existaient que dans le cloud sont créés comme de véritables albums Immich. Les métadonnées EXIF restent intactes, tant qu’elles ont été conservées lors de l’export.
D’abord, s’authentifier auprès de votre serveur :
./immich-go -server http://localhost:2283 -api-key votre-clé-api
Ensuite, l’import. Pour un export Google Takeout — l’outil peut gérer à la fois les fichiers zip et le dossier décompressé :
./immich-go -server http://localhost:2283 -api-key votre-clé-api from-google-photos takeout-20260727T120000Z-001.zip
Pour un export iCloud réalisé avec osxphotos :
./immich-go -server http://localhost:2283 -api-key votre-clé-api from-icloud /chemin/vers/export
L’outil traite l’export et signale pour chaque album ou fichier ce qui s’est passé. Pour une bibliothèque de quelques centaines de Go, cela prend du temps. Laissez-le tourner dans une session screen ou via nohup ; vous ne voulez pas qu’une connexion SSH perdue interrompe la migration à mi-chemin.
Ce que ce choix coûte
La combinaison Google Takeout → immich-go est décrite dans la communauté Immich (10 août 2024) comme la meilleure façon de migrer de Google Photos vers Immich. Cette opinion est justifiée : l’outil traite les albums, les métadonnées et la structure en une seule fois. Mais il y a un prix à payer. immich-go est un outil communautaire, pas un produit officiel Immich. La documentation est bonne, mais pas complète, et en cas d’erreur inattendue, vous êtes seul.
L’alternative consiste à téléverser manuellement via l’interface web d’Immich. Cela fonctionne, mais vous perdez les albums, la reconnaissance faciale et éventuellement la date de prise de vue d’origine. Pour une bibliothèque de cent photos, ce n’est pas un problème. Pour des dizaines de milliers de fichiers, c’est une semaine de travail.
Nextcloud Photos : l’alternative plus simple
Nextcloud Photos est moins avancé qu’Immich. La reconnaissance faciale manque, les albums n’existent pas comme entité de première classe, et il n’y a pas d’outil de migration comme immich-go. Ce qu’il a : une galerie photo solide et bien intégrée qui utilise l’infrastructure Nextcloud existante. Et vous n’avez pas besoin de faire tourner un deuxième système.
La migration est dès lors bien plus simple — et bien moins automatisée. Vous copiez l’exportation décompressée vers un dossier dans votre Nextcloud et laissez le serveur synchroniser :
rsync -av --progress /pad/naar/export/ /pad/naar/nextcloud/data/gebruiker/files/Fotos/
Nextcloud scanne le dossier et affiche les photos dans l’application Photos. Les métadonnées sont conservées, mais les albums de Google Photos ou d’Apple Photos doivent être reconstruits manuellement avec des dossiers. Ce n’est pas dramatique, mais c’est du travail. Ceux qui ont des centaines d’albums y passeront une soirée.
Vérification
Après l’importation, vérifiez que la bibliothèque est complète. Dans Immich, vous pouvez comparer le nombre de photos et de vidéos avec l’exportation ; l’interface web affiche les deux. Pour un contrôle plus précis, utilisez l’API :
curl -s http://localhost:2283/api/server/statistics -H "x-api-key: je-api-key"
La réponse contient totalPhotos et totalVideos. Comparez-les avec le nombre de fichiers dans votre exportation. Avec Nextcloud, vérifiez que le nombre de fichiers dans le dossier correspond à ce que l’application Photos affiche.
Problèmes fréquents
L’importation s’arrête à mi-chemin avec une erreur réseau. immich-go n’est pas reprisable dans le sens où il ne se souvient pas où il en était. Vous pouvez relancer l’importation ; l’outil reconnaît les fichiers déjà téléversés et les ignore. Cela prend du temps, mais pas de doublons.
Google Takeout contient des fichiers JSON à côté des photos. Ils font partie de l’exportation et contiennent des métadonnées comme les descriptions et la reconnaissance faciale. immich-go les lit puis les supprime. Ne les retirez pas à l’avance ; vous perdriez les métadonnées.
L’exportation d’iCloud est trop volumineuse pour un seul zip. Apple divise les grosses exportations en plusieurs parties. immich-go attend un seul dossier avec tous les fichiers. Décompressez toutes les parties dans le même dossier et pointez l’outil vers ce dossier. L’outil trie les fichiers en fonction de la structure interne, pas du nom du zip.
La migration n’est pas une tâche triviale. Une bibliothèque de 300 GB signifie un téléchargement de 300 GB, une décompression qui dure une heure, et une importation qui, selon votre serveur, tourne toute une nuit. Mais une fois terminé, vos photos se trouvent à un endroit que vous gérez. Si vous voulez un jour les renvoyer vers Google ou Apple ? C’est une question que vous pourrez vous poser dans un an.