Förhindra dubbla foton genom att först importera en kanonisk export och sedan aktivera telefonbackup först när identiska kopior och redigerade varianter har klassificerats.
Molnbiblioteksmigreringar innehåller ofta original, redigerade kopior, storleksändrade nedladdningar, versioner från delade album, Live Photo-komponenter, metadatafiler och upprepade exportmappar. Ett egenhostat galleri kan avvisa dubbletter med identiska byte men ändå acceptera visuellt identiska filer vars komprimering, dimensioner, metadata eller filnamn skiljer sig åt. Den säkra processen mellanlagrar migreringen utanför det aktiva biblioteket, registrerar hashvärden och källmappar, importerar en kontrollerad batch och verifierar hur galleriet representerar varianter innan automatisk telefonbackup börjar.
Inventera alla källor som kan innehålla samma foto
Lista molnexportarkiven, telefonens kamerarulle, datorns fotobibliotek, delade album, nedladdningsmappar, partnerbibliotek, gamla NAS-mappar och alla externa bibliotek som är monterade i galleriet. Notera datumintervall och filantal för varje källa.
Dubbletter uppstår ofta när en molnkopierad fil importeras och telefonen sedan laddar upp sitt lokala original. En Immich-diskussion beskriver hur Google Foto och mobilbackup skapade uppenbara dubbletter eftersom molnversionen var komprimerad medan telefonen levererade en annan fil i full upplösning.
Välj vilken källa som är auktoritativ för originalen. Håll de andra källorna offline under den första importen, så att en tidslinje fylld med dubbletter inte blir miljön där du avgör vad som ska raderas.
Skilj exakta dubbletter från visuella varianter
Generera kryptografiska hashvärden för filerna före importen. Matchande hashvärden visar att bytena är identiska, medan olika hashvärden kan representera redigeringar, ny komprimering, ändrade metadata, storleksändrade exporter, komponenter från rörliga foton eller genuint olika bilder.
Immich-användare som migrerat bibliotek har skapat hashkontroller före import eftersom överföringar från externa bibliotek kanske inte utför samma dubblettkontroll som API-uppladdningar. Den rapporterade strategin var att jämföra hashvärden före kopiering.
Radera inte filer automatiskt enbart för att de ser lika ut i en miniatyr. Bevara originalet med högst upplösning, den avsedda redigeringen, rörliga komponenter och metadatafiler tills de har jämförts utanför galleriet.
Normalisera exportmappstrukturen utan att skriva om originalen
Packa upp alla molnarkiv i en mellanlagringsmapp och identifiera upprepade arkivdelar, suffix som ”original” och ”redigerad”, JSON-filer, albumdubbletter och filer som är uppdelade mellan exportpaket.
Behåll filnamn och tidsstämplar oförändrade under den första inventeringen. Om du byter namn, kodar om eller skriver om metadata före hashningen kan exakta dubbletter omvandlas till filer med olika byte, så att galleriet inte längre kan identifiera dem automatiskt.
Skapa ett manifest med källarkiv, ursprunglig relativ sökväg, filnamn, hashvärde, storlek, dimensioner, fotograferingstid och sökväg till metadatafilen. Då kan alla senare raderingar återställas och du kan förklara varför två liknande tillgångar hamnade i biblioteket.
Importera först en liten representativ batch
Välj en batch som innehåller ett vanligt JPEG-foto, ett HEIC-foto, en redigerad bild, ett Live Photo, en video, en bildserie, en kopia från ett delat album och två exakta dubbletter. Importera den med samma metod som du planerar att använda för hela biblioteket.
Moln- och lokala tillgångar kan visas två gånger i en mobil tidslinje även när den ena representerar serverkopian och den andra fortfarande bara finns på telefonen. En Immich-rapport dokumenterar foton som visades med både moln- och frånkopplade molntillstånd.
Verifiera om galleriet avvisar identiska hashvärden, grupperar rörliga komponenter, bevarar redigeringar, läser metadatafiler och skiljer mellan enbart lokala och uppladdade tillgångar. Justera importsökvägen innan du skalar upp till hela exporten.
Aktivera inte mobilbackup förrän den historiska importen är stabil
Pausa automatisk backup på alla telefoner som innehåller delar av det migrerade molnbiblioteket. Annars kan mobilklienten ladda upp tusentals tillgångar medan servern fortfarande importerar samma historik från exporterade filer.
Dubbletter mellan källor kan uppstå igen efter att en användare behåller en kopia i ett externt bibliotek men raderar uppladdningen, eftersom mobilklienten senare kan ladda upp samma tillgång igen. En Immich-diskussion beskriver en återkommande dubblettslinga mellan mobil och externt bibliotek.
När den historiska importen är klar jämför du telefonens antal väntande objekt med servermanifestet. Aktivera först backup för ett litet, nyligt album och kontrollera att kända historiska tillgångar hoppas över eller visas som redan säkerhetskopierade.
Hantera externa och uppladdade bibliotek medvetet
Bestäm om de migrerade filerna ska ligga som gallerihanterade uppladdningar eller som ett externt skrivskyddat bibliotek. Undvik att visa samma fysiska filer via båda vägarna.
Att flytta tillgångar från det hanterade biblioteket till ett externt bibliotek kan skapa dubbla poster i tidslinjen när den gamla databasposten finns kvar och den nya externa genomsökningen lägger till ytterligare en tillgång. Det rapporterade resultatet var en övergiven post plus en ny dubblett.
Använd en enda ägandemodell per filuppsättning. Om du byter modell ska du säkerhetskopiera databasen, slutföra den stödda borttagningen eller rensningen av den gamla sökvägen och kontrollera att inaktuella poster försvinner innan den nya platsen genomsöks.
Granska dubbletter med metadata och återställningssammanhang
När galleriet identifierar dubbletter jämför du upplösning, filstorlek, kodek, fotograferingstid, redigeringshistorik, Live Photo-koppling, albumtillhörighet, favoriter, ansiktstilldelningar och backupkälla innan du väljer vilken tillgång som ska behållas.
Identifiering av nära dubbletter kan hitta olika upplösningar eller kodningar av samma motiv, men den kan inte avgöra vilken version som bevarar användarens föredragna redigering eller originalet med högst kvalitet. Se den automatiska identifieringen som en granskningskö, inte som en uppmaning att radera.
ZimaSpaces guide för NAS-datamigrering beskriver den övergripande regeln: behåll molnexporten och originalbiblioteket tills filantal, metadata, album och representativa återställningar har verifierats.
Slutför migreringen med en reproducerbar granskning
Jämför källmanifest, antal importerade filer, avvisade exakta dubbletter, bevarade varianter, misslyckade filer och telefonens antal väntande objekt. Stickprovskontrollera flera år, album, redigeringar, videor och Live Photos.
Behåll den ursprungliga molnexporten oföränderlig och skapa en andra säkerhetskopia av det egenhostade biblioteket innan du avslutar en prenumeration eller tar bort molntillgångar. Dubblettrensning är inte en säkerhetskopia och bör aldrig vara den enda åtgärden som ändrar kopiorna.
Migreringen är klar när varje original har en avsiktlig kanonisk kopia, redigerade varianter fortfarande går att skilja åt, telefonerna bara laddar upp nya tillgångar, externa och hanterade bibliotek inte överlappar varandra och manifestet förklarar varje undantagen eller bevarad dubblett.
Support och tips
Mer att läsa

Varför återskapar en återställning av en Docker-volym filinnehållet men tar bort utökade attribut?
En felsökning av volymåterställning som omfattar inventering av xattr, alternativ för tar och Rsync, namnrymder, stöd för måldestinationen, behörigheter, etiketter, appmetadata och tester.

Varför behåller en körande container sin gamla minnesgräns efter att Compose-filen har ändrats?
En minnesgränsdiagnos som omfattar aktiva cgroups, omstart kontra återskapande, Compose-fält, hårda och mjuka gränser, överordnade scope, växlingsutrymme och körningsheapar.

Varför ogiltigförklarar en omstart av en omvänd proxy varje session för en självhostad app?
En sessionsförlustdiagnos som omfattar omstartens omfattning, cookie-ägarskap, rotation av hemligheter, cachebaserade sessioner, sticky routing, autentiseringsgatewayer och återställning.

