Preco je imapsync popularny (a preco sa datumy aj tak pokazia)
imapsync je referencny migracny nastroj pre emailovych systemovych administratorov na Linuxe, hostingovych poskytovatelov a vsetkych, ktori preferuju open-source riesenia. Vytvoreny Gillesom Lamiralom, imapsync je aktivne udrzovany od roku 2001 a bol pouzity pre miliony migracii postovych schranok na celom svete. Podporuje prakticky kazdy IMAP server: Dovecot, Courier, Cyrus, Zimbra, Exchange, Gmail a desiatky dalsich.
imapsync ma reputaciu komplexneho a konfigurovatelneho nastroja. Administratori oceňuju jeho granularnu kontrolu nad migrovanymi priecinkami, spracovaním duplicit a mapovanim nazvov priecinkov medzi roznymi IMAP servermi. Ale napriek vsetkej tej kontrole jeden problem pretrváva: datumy emailov su po migracii imapsync casto nezachovane. Pouzivatelia otvoria postovu schranku po migracii a zistia, ze kazdy email zobrazuje datum migracie. Je to frustrujuce, najma preto, ze imapsync by mal datumy spracovat spravne.
Ako imapsync spracovava INTERNALDATE
Pokus o zachovanie INTERNALDATE
imapsync sa skutocne pokusa zachovat INTERNALDATE kazdeho emailu pocas migracie. INTERNALDATE je casova peciatka, ktoru IMAP server uchovava ako metaudaje pre kazdu spravu, oddelena od hlaviciek emailu. Ked imapsync kopiruje spravu zo zdroja do cielového umiestnenia, precita INTERNALDATE zo zdrojoveho servera a odovzda ju cielovemu serveru v prikaze IMAP APPEND.
V teorii by toto malo zachovat povodny datum. V praxi vysledok zavisi od spravania cieloveho servera a od toho, ako emailoví klienti interpretuju rozne datumove polia v sprave.
Problem s hlavickou "Received"
Aj ked imapsync uspesne zachova INTERNALDATE, cielovy postovy server prida ku kazdej sprave novu hlavicku "Received" pocas operacie APPEND. Tato hlavicka "Received" obsahuje aktualnu casovu peciatku, datum migracie. Emailoví klienti ako Outlook, Apple Mail a Thunderbird urcuju zobrazeny datum "prijatia" citanim najvyssej hlavicky "Received", nie INTERNALDATE. Takze napriek snahe imapsync zachovat INTERNALDATE je viditelny datum vo vacsine klientov aj tak nespravny.
Tato zasadna nesúlad je to, co sposobuje zmatok. imapsync zachovava jednu hodnotu datumu (INTERNALDATE), ale emailoví klienti zobrazuju inu (casovu peciatku hlavicky "Received"). Pre technicke vysvetlenie tohto mechanizmu pozrite preco emaily zobrazuju nespravny datum po IMAP migracii.
Mylna predstava z FAQ imapsync
Dokumentacia a FAQ imapsync adresuju problem s datumom, ale prezentuju ho ako inherentne obmedzenie. FAQ naznacuje, ze "datumy nemusia byt zachovane" pocas IMAP migracie a implikuje, ze takto jednoducho protokol IMAP funguje. Hoci je pravda, ze protokol IMAP vyzaduje od serverov pridavanie hlaviciek "Received" pri vlozeni sprav, FAQ vytvara dojem, ze problem je trvalý a neopravitelny.
To nie je presne. Hlavicky "Received" pridane pocas migracie sa daju identifikovat a odstranit spatne, co obnovi zobrazenie povodneho datumu v emailovych klientoch. Povodna hlavicka "Date" (ktora zaznamenava, kedy bol email povodne odoslany) je vzdy zachovana imapsync a sluzi ako referencia pre spravny datum.
Identifikacia migracnej hlavicky imapsync
Ako hlavicka vyzera
imapsync sam nepridava hlavicku "Received", robi to cielovy IMAP server. Hlavicka pridana pocas migracie imapsync zvycajne vyzera ako standardna IMAP insercna hlavicka cieloveho servera. Napriklad pri migracii na Dovecot server moze hlavicka vyzeratt takto:
Received: from localhost by mail.example.com;
Wed, 15 Jan 2025 09:14:22 +0100
Klucovym identifikatorom je, ze tato hlavicka "Received" je najvyssia v retazci, jej casova peciatka zodpoveda datumu spustenia migracie imapsync a zvycajne referencuje "localhost" alebo nazov hosta cieloveho servera namiesto externeho postoveho servera.
Porovnanie datumov
Na potvrdenie problemu porovnajte casovu peciatku najvyssej hlavicky "Received" s hlavickou "Date" emailu. Ak hlavicka "Received" ukazuje januar 2025, ale hlavicka "Date" ukazuje marec 2020, migracna hlavicka "Received" je pricinov nespravneho zobrazenia datumu. Toto porovnanie sa da vykonat zobrazením suroveho zdroja spravy v akomkolvek emailovom klientovi.
Preco bezne moznosti imapsync problem neriesia
Priznak --syncinternaldates
imapsync ponuka priznak --syncinternaldates, ktory nastavi INTERNALDATE na cielovom serveri tak, aby zodpovedala hlavicke "Date" emailu. To je uzitocne, ked je INTERNALDATE zdrojoveho servera uz nespravna, ale nezabrani cielovemu serveru pridat hlavicku "Received". Viditelny datum v Outlooku a inych klientoch zostáva datumom migracie bez ohladu na hodnotu INTERNALDATE.
Moznost --addheader
imapsync moze pridavat vlastne hlavicky k spravam pocas migracie, ale nemoze zabranit cielovemu serveru pridat vlastnu hlavicku "Received". Protokol IMAP vyzaduje od serverov zaznamenavanie casovej peciatky vlozenia a ziadna moznost imapsync nemoze toto spravanie na urovni servera obist.
Skripty po migracii
Niektori administratori pisu vlastne post-migracne skripty na odstranenie neziaducich hlaviciek "Received". Znie to rozumne, obzvlast pre typ cloveka, ktory si vybral imapsync (niekto pohodlny s prikazovym riadkom). Ale realita je ovela zlozitejsia nez hladanie a nahradenie textu hlavicky. Co sa stane, ked skript narazi na email podpisany S/MIME? Alebo multipart spravu s vnoreným MIME hranicami a priloham kodovanymi v base64? Alebo hlavicku s non-ASCII znakmi kodovanymi RFC 2047? Jediny nespravne umiestneny bajt v hranici MIME moze ticho poskodit celu spravu, znicit prilohy alebo ucinit email necitatelnym. A ako potvrdite, ze 10 000 opravenych emailov je vsetkych neporusenych? Pre tisice emailov napriec viacerymi schrankami DIY skriptovanie predstavuje podstatne riziko.
Oprava datumov imapsync s Redate.io
Ako Redate.io spracovava migracie imapsync
Proprietarny korekcny motor Redate.io je navrhnuty specificky pre tuto kategoriu problemov. Po pripojeni k postovej schranke Redate.io analyzuje kazdy email a spracuje kazdu spravu cez viacstupnovy analyticky pipeline. Pre migracie imapsync Redate.io detekuje hlavicku "Received" vlozenu serverom aplikovanim porovnavania podpisov na stovkach znamych migracnych profilov, analyzovanim kompletneho retazca hlaviciek a krizovym porovnavaním casovych peciaíok s povodnou hlavickou "Date".
Nejde o jednoduchu upravu hlaviciek. Korekcny motor riesi validaciu suladnosti s RFC, zachovanie struktury spravy (vratane multipart/alternative struktur, inline priloh a variacii Content-Transfer-Encoding) a detekciu digitalnych podpisov. Emaily s podpismi S/MIME alebo PGP su automaticky identifikovane a spracovane primerane na zachovanie integrity podpisov.
Co ziskate po oprave
Kazdy opraveny email zobrazuje svoj povodny datum prijatia vo vsetkych emailovych klientoch. Chronologicke poradie je obnovene. Kazda korekcia prechadza kontrolou integrity pred finalizaciou. Povodna sprava sa presunie do priecinka "Redate.io - Originals" a uchovava sa 30 dni ako bezpecnostna siet.
Kompatibilita so vsetkymi cielovymi servermi
Kedze imapsync sa pouziva na migraciu prakticky na akykolvek IMAP server, Redate.io podporuje rovnaky rozsah cielovych platforiem. Ci migracia imapsync cielila na Dovecot, Courier, Cyrus, Zimbra, Google Workspace, Microsoft 365 alebo akykolvek iny IMAP server, Redate.io sa pripoji a opravi datumy.
Ako opravit datumy po migracii imapsync
Pripojte postovu schranku
Prihlaste sa do Redate.io a pridajte postovu schranku. Pre Google Workspace alebo Microsoft 365 pouzite moznost administratorskej delegacie. Pre ine IMAP servery (bezne v scenaroch imapsync) zadajte adresu servera, pouzivatelske meno a heslo. Redate.io sa pripoji cez standardny IMAP.
Bezplatna analyza
Spustite bezplatnu analyzu na identifikaciu postihnutych emailov. Report analyzy ukazuje celkovy pocet emailov, kolko ma nespravny datum a aky datum migracie bol detekovany. Tato analyza nic nestoji a dava jasny obraz pred akymkolvek záväzkom.
Opravit a overit
Vyberte plan podla poctu postihnutych emailov a spustite opravu. Priebeh je viditelny v realnom case. Po dokonceni overte vysledky kontrolou datumov emailov vo vasom klientovi. Datumy by sa mali vratit na svoje miesto.
Navody na opravu imapsync podla platformy
Casto kladene otazky
Mam pouzit --syncinternaldates imapsync pred pouzitim Redate.io?
Nie je to nutne. Redate.io nastavuje spravnu INTERNALDATE pocas procesu korekcie, bez ohladu na aktualnu hodnotu. Ci imapsync zachoval povodnu INTERNALDATE alebo nie, Redate.io odvodí spravnu hodnotu z povodnej hlavicky "Date".
Mozu sa datumy opravit na zdrojovom serveri pred migraciou imapsync?
Ak ma zdrojovy server uz nespravne datumy (v dosledku predchadzajucej migracie), Redate.io ich moze opravit pred alebo po migracii imapsync. Ale oprava datumov na cielovom serveri po migracii je najcastejsi a najpraktickejsi pristup.
Kolko emailov dokaze Redate.io spracovat?
Redate.io zvlada postove schranky akejkolvek velkosti. Plany su dostupne az do 100 000 emailov na schranku. Pre organizacie s mnohymi schrankami Redate.io ponuka objemove zlavy.
Migracia imapsync pokazila datumy? Spustite bezplatnu analyzu a zistite, kolko emailov je postihnutych, a opravte ich s Redate.io.