31.1  Reindexace poštovních složek

Problém

Uživatel má problém se zobrazením poštovní složky nebo dokonce celého mailboxu. Poškozená složka se jeví jako prázdná nebo jsou v ní zobrazeny jen některé zprávy.

Velmi pravděpodobnou příčinou tohoto problému je nesouhlasící obsah speciálního souboru index.fld s adresářem #msgs v některé z poštovních složek Kerio MailServeru.

Pro lepší orientaci v celém problému si musíme nejprve vysvětlit, jak Kerio MailServer pracuje se zprávami. E-mailové zprávy, kontakty, události, úkoly a poznámky jsou fyzicky ukládány do úložiště ve formě stromové struktury složek. Tímto úložištěm je adresář \store, který se dále člení na domény, poštovní schránky uživatelů a složky v těchto schránkách. Každá poštovní složka obsahuje několik adresářů a souborů, kam jsou fyzicky ukládány e-mailové zprávy a také různé informace o nich.

Pro nás je důležitý adresář #msgs, kam jsou fyzicky ukládány zprávy ve formátu .eml souborů a speciální soubor index.fld, pomocí kterého se Kerio MailServer orientuje v adresáři #msgs při komunikaci s poštovními klienty. Tento soubor se vytváří pro každou poštovní složku hned při prvním spuštění Kerio MailServeru.

Soubor index.fld obsahuje seznam zpráv, které daná složka obsahuje, a specifické informace k nim. Každý řádek v souboru představuje záznam o jedné e-mailové zprávě, která je ve složce uložena.

Soubor index.fld a adresář #msgs jsou oba uloženy v každé složce, kterou má uživatel ve schránce vytvořenu. Jako příklad si můžeme uvést následující cestu:

\Kerio\MailServer\store\mail\firma.cz\jnovak\INBOX

Řešení

Následující řešení je velmi jednoduché:

  1. Zastavíme Kerio MailServer Engine.

  2. V úložišti Kerio MailServeru, v adresáři store najdeme doménu uživatele, který má problémy s některou ze svých složek. V této složce najdeme a otevřeme složku nazvanou jeho/jejím uživatelským jménem. Tato složka fyzicky obsahuje celou poštovní schránku. Podsložky, které si uživatelé sami vytvořili jsou vnořeny do hlavních složek — jsou uspořádány ve stejné hierarchii jako se zobrazují v rozhraní Kerio WebMail.

  3. Ze složek vybereme tu, se kterou měl uživatel problémy, otevřeme ji a přejmenujeme soubor index.fld na index.bad

  4. Spustíme Kerio MailServer Engine.

Při prvním následném přihlášení uživatele k jeho schránce se soubor automaticky znovu vytvoří — tentokráte podle aktuálního stavu složky a zároveň převezme flagy (příznaky zpráv, které zobrazují například zda zpráva nebyla označena jako smazaná, nebo zda byla přeposlána) z původního souboru přejmenovaného na index.bad.

Po spuštění Kerio MailServeru se v záznamu Error objeví záznam:

[23/Jun/2005 12:12:47] mail_folder.cpp: Folder~jnovak@firma.cz/Contacts has corrupted status and index files,going to restore them. Some flag information may be lost