Rsync kan kopiera om filer vars synliga storlek och datum matchar när deras råa ändringstider, jämförelseregler eller överföringsalternativ fortfarande skiljer sig åt.
Filhanterare döljer ofta tidsstämplar under en sekund och visar bara ett avrundat lokalt datum, medan Rsync jämför metadata som exponeras av varje slutpunkt. Rsync kan också instrueras att ignorera matchande tider, jämföra kontrollsummor eller uppdatera metadata. Ett jobb kan därför rapportera samma läsbara storlek och datum men ändå välja filen eftersom nanosekunderna skiljer sig åt, ett filsystem avrundar tiden, en SMB-klient skriver om tidsstämpeln eller kommandot uttryckligen kringgår den normala snabbkontrollen.
Bekräfta att Rsync väljer filen för dataöverföring
Kör jobbet som en torrkörning med specificerade ändringar och spara det exakta kommandot, källsökvägen, målsökvägen, Rsync-versionerna och ett representativt filnamn.
Den officiella Rsync-handboken förklarar att den normala snabbkontrollen jämför filstorlek och ändringstid, medan specificerade ändringar visar vilka attribut som orsakade en uppdatering.
Om ändringskoden endast visar ändringar av behörigheter, ägare, grupp, ACL eller utökade attribut kan filen ha besökts igen utan att hela innehållet överfördes på nytt.
Jämför råa ändringstider i stället för det visade datumet
Läs källans och målets ändringstider med nanosekunders precision och jämför deras numeriska epokvärden från systemen som kör sändaren och mottagaren.
Linux-strukturen stat stöder tidsstämplar med nanosekunders upplösning, så två filer som visas med samma sekund kan fortfarande ha olika värden.
En filhanterare som endast visar minuter eller sekunder kan inte bevisa att de underliggande ändringstiderna matchar. Dokumentera råvärdena innan du ändrar filerna igen.
Kontrollera tidsstämpelns precision och ändringsfönstret
Identifiera alla filsystem i sökvägen, inklusive FAT, exFAT, NTFS, SMB, NFS, arkivextrahering och flyttbara mellanlagringsvolymer.
Debians Rsync-handbok dokumenterar beteendet hos modify-window, inklusive tolerans för filsystem som inte kan lagra identisk tidsstämpelprecision.
Använd ett värde som inte är noll för fönstret först efter att du har mätt skillnaden. Ett för brett fönster kan dölja en verkligt ändrad fil med samma storlek.
Granska flaggor som åsidosätter den normala snabbkontrollen
Granska hela det schemalagda kommandot och alla omslutande skript, NAS-gränssnitt, miljövariabler, inklusionsfiler eller förinställningar som lägger till alternativ.
Ubuntus Rsync-referens anger att ignore-times tvingar fram uppdateringar, att kontrollsummeläget ersätter tidstestet och att size-only ignorerar ändringstid.
Ta endast bort den flagga som du har bevisat orsakar problemet. Kontrollsummeläget kan medföra omfattande läsning även när endast lite data passerar över nätverket.
Kontrollera om SMB eller Windows skriver om målets tid
Beräkna kontrollsumma och tidsstämpla målet omedelbart efter överföringen, efter att SMB-sessionen har stängts och efter att den har öppnats igen från en annan klient.
Microsoft dokumenterar att program kan ställa in och hämta filtidsstämplar, medan filsystem och program kan uppdatera enskilda fält enligt olika tidsplaner.
Om målets tid endast ändras efter att en indexerare, medieapp, molnklient eller SMB-arbetsflöde har rört filen bör du korrigera den skrivande komponenten i stället för Rsync.
Skilj ändringstid från annan metadata
Jämför ändringstid, statusändringstid, behörigheter, ägarskap, ACL:er, utökade attribut, hårda länkar och symboliska länkar.
NetBSD:s stat-verktyg visar råa filstatusfält, vilket hjälper dig att skilja innehållets ändringstid från andra metadataändringar.
Alternativ för arkiv, ACL, xattr, ägare eller grupp kan utlösa metadataarbete. Läs ändringskoden i stället för att behandla varje listad sökväg som en fullständig innehållsöverföring.
Kör ett test med en fil och åtgärda den minsta bevisade skillnaden
Kopiera en stängd testfil, bevara den avsedda metadatan, kör samma kommando igen och jämför ändringsutdata, överförda byte och råa tidsstämplar.
ZimaSpace-artikeln om oväntat stora inkrementella säkerhetskopior tar upp bredare orsaker i säkerhetskopieringskedjan; den här artikeln isolerar Rsyncs filvalsregler.
Problemet är löst när en omkörning utan ändringar hoppar över testfilen eller endast utför den metadatauppdatering som du avsiktligt har konfigurerat.
Vanliga frågor
Varför ser datumen identiska ut i filhanteraren?
Filhanteraren kan avrunda till sekunder eller minuter och visa lokal tid, medan Rsync får en mer exakt ändringstidsstämpel.
Kommer kontrollsummeläget att stoppa onödiga kopieringar?
Det kan undvika överföring när innehållet matchar trots olika tider, men det måste läsa och beräkna kontrollsummor för filer med samma storlek på båda sidor.
Kan tidszoner orsaka upprepade Rsync-överföringar?
Enbart visning i olika tidszoner bör inte ändra numeriska tidsstämplar, men program eller filsystem som konverterar eller avrundar dem kan göra det.
Support och tips
Mer att läsa

Kan Plex dela ett GPU-kort med en annan Docker-container?
Plex och en annan container kan ofta använda samma GPU, men du måste testa drivrutinsstöd, enhetsmappning, belastningen på videoenheten, minne och återställningsbeteende.

Så avgör du om ett Plex-fel kommer från klienten eller servern
Återskapa samma objekt på en annan klient, jämför sessionsvägen och samla sedan in serverbevis först efter att scope har visat var felet faktiskt finns.

Så konfigurerar du Plex-cache och tillfällig lagring för omkodning
Skydda beständigt Plex-tillstånd genom att placera temporära transkodningsfiler på lämplig lokal lagring och verifiera rensning, ledigt utrymme samt omstartsfunktionssätt.

