TB kommt mit kopierter mbox nicht zurecht (nach früherem Absturz und "leerer" Inbox)

  • Hallo zusammen,


    nach längerem Herumprobieren auf eigene Faust habe ich aufgegeben und versuche nun das erste mal mein Glück in diesem Forum.


    Mein Problem:
    Wenn ich eine TB-mbox-Datei per Windows Explorer in die Lokalen Ordner kopiere, so kommt TB damit nicht zurecht (Fehler s. u.); wenn ich die Datei in ein anderes Mail-Konto des gleichen Profils kopiere, funktioniert es. Die Kopie ist nötig, um nach einem TB-Absturz an die Mails in der alten Inbox wieder heranzukommen.
    Wie schaffe ich es, dass hineinkopierte mbox-Dateien unter Lokale Ordner wieder funktionieren?


    Weil die Hintergründe etwas umfangreicher sind, beschreibe ich im folgenden Abschnitt zunächst, was passiert ist, und danach in einen eigenen Abschnitt die Details (inkl. Programmversion etc.).



    Was alles passiert ist


    Im Mai letzten Jahres stürzte TB ab, und danach wurde der Posteingang des Haupt-Kontos als leer angezeigt. Die Datei Inbox war noch da und recht groß (ca. 330 MB), aber das Löschen von Inbox.msf und dessen Neugenerierung brachte genausowenig Hilfe wie der Reparieren-Knopf in den Eigenschaften. Interessanterweise wurden neu heruntergeladene Mails angezeigt - aber nur bis zum nächsten TB-Neustart, dann waren auch die wieder unsichtbar. Andere Mail-Ordner (Trash, Sent, Junk, ...) waren nicht betroffen.


    Nachdem ich die Datei Inbox verschoben hatte, hat TB beim nächsten Start eine neue erzeugt und funktioniert seitdem für die danach aufgelaufenden Mails wie es soll. Ich habe aber trotz mehrerer Versuche im Laufe des letzten Jahres nicht geschafft, die alten Inbox-Mails wieder in TB zu bekommen:


    Ich habe den Inhalt der Datei Inbox untersucht, ohne dass mir etwas Merkwürdiges aufgefallen wäre (siehe Details). Ich habe von Inbox die hinteren (eventuell durch den Absturz defekten) Mails herausgeschnitten, und die ganze Inbox oder die Teile davon auf verschiedene Weise (siehe Details) unter neuem Namen in den Dateisystemverzeichnis mit den Mailbox-Dateien kopiert, das Ergebnis ist immer das gleiche:

    • Der neu vergebene Name erscheint in TB in der Mail-Ordner-Liste, aber wenn ich daraufklicke, dann wird am Cursor ein sich drehender Kreis (die Win7-"Sanduhr") angezeigt, ansonsten ändert sich nichts. Häufig dauert dieser Zustand sehr lang, manchmal hört er aber auch auf und es werden 0 Nachrichten angezeigt (Fußzeile: "Ungelesen: 0 Gesamt: 0").
    • Wenn ich, statt draufzuklicken, mir per Rechtsklick die Eigenschaften des Mail-Ordners ansehe, dann wird meist ein leeres Adressfeld angezeigt, die Anzahl der Nachrichten und Größe auf dem Datenträger wird mit "unbekannt" angegeben.
      Manchmal wird aber auch die Adresse und Größe auf dem Datenträger korrekt angezeigt, aber Anzahl der Nachrichten ist 0.
    • Der "Reparieren"-Knopf hilft nicht.
    • Was von den beiden passiert (leeres Adressfeld oder nur leere Datei), scheint zufallsbestimmt zu sein, ich habe keine Systematik entdecken können.


    Ich habe im Forum herumgesucht, die Treffer mit ähnlichem Fehlerbild haben dann aber doch nicht gepasst.


    Nachdem ich nicht weiterkam, habe ich zwei Grundsatzversuche durchgeführt mit unerwarteten Ergebnissen:

    • Die aktuelle, funktionierende Inbox unter neuem Namen an gleicher Stelle kopiert.
      Ergebnis: Kopie zeigt gleiches verhalten wie die "defekte" alte Inbox!
    • Die alte, defekte und die neue, funktionierende Inbox jeweils unter neuem Namen in ein anderes Mail-Konto (des gleichen TB-Profils) kopiert.
      Ergebnis: Beide werden korrekt angezeigt! (Anzeige in der Fußzeile zur alten Inbox: "Ungelesen: 442 Gesamt: 1561")


    Also: Es sieht so aus, als ob nicht die alte Inbox einen Knacks weg hat, sondern mein Haupt-Mail-Konto und/oder die lokalen Ordner in TB.


    Vielleicht ist das eine Folge des Absturzes, vielleicht liegt der Fehler schon länger zurück: Ich habe seit dem letzten Rechner-Umzug 2012 nicht mehr versucht, TB eine mbox unterzuschieben ...
    Ich habe dann noch ein bisschen herumgeschaut, ob mir zu den Lokalen Ordnern oder dem Profil allgemein etwas auffällt. Ein paar Dinge kamen mir merkwürdig vor, ich weiß aber nicht, ob sie relevant sind (was ich gesehen habe, steht im Abschnitt Details).


    Mein eigentliches Anliegen ist:
    Was kann ich gegen das oben beschriebene Fehlverhalten tun? Muss ich eine Einstellung ändern? Oder eine Datei löschen und neu erzeugen lassen? Oder gibt es vielleicht einen "Reparieren"-Knopf dafür? Jegliche Hinweise sind willkommen.



    Details


    Umgebung

    • Programm + Version: Aktuelle Version von Thunderbird, zur Zeit 38.0.1, zum Zeitpunkt des Crashes 24.5.0 (lt. Crash Report)
    • Betriebssystem + Version: Windows 7 Home Premium 64 bit
    • Kontenart (POP / IMAP): POP3
    • Postfachanbieter (z.B. GMX): T-online
    • Eingesetzte Antivirensoftware: keine
    • Firewall (Betriebssystem-intern/Externe Software): Windows Bordmittel


    Besonderheiten

    • In den Dateisystemverzeichnissen mit den Mailboxen gibt es für jede Mailbox neben den Dateien Mailbox und Mailbox.msf auch noch einen Ordner Mailbox.mozmsgs.
    • Die Mailbox-Dateien der Lokalen Ordner liegen nicht am üblichen Ort, sondern sind per Konten-Einstellungen / Lokale Ordner / Lokale Ordner: umgestellt auf ein Unterverzeichnis von C:\#Data (hat mit meinem Backup-Schema zu tun).


    Geschichte des TB-Profils:
    Es gibt auf dem Rechner nur ein TB-Profil, ursprünglich angelegt im Frühjahr 2006. Das Profil wurde seitdem zweimal umgezogen (neuer Rechner, neues Betriebssystem). Ursprünglich enthielt es nur ein Mail-Konto, das auf die Lokalen Ordner verweist. Einige Monate vor dem Absturz kam ein zweites Mail-Konto hinzu.



    Untersuchungen der alten Inbox


    Betrachten im Text-Editor zeigt keine Auffälligkeiten, auch nicht im Bereich der letzten Nachrichten um den Absturz herum.


    grep "^From " Inbox > Inbox.from und Inbox.from betrachten: Alle Zeilen sind gleich formatiert, Datumsangaben sehen auch plausibel aus. (Es gibt übrigens 2001 solcher Zeilen.)


    Statistik über die Zeichen in der Inbox: Neben vielen CR/LF und einigen TABs gibt es keine Steuerzeichen (wie z.B. Nullbytes) in der Datei.


    grep -A 4 "^From " Inbox > Inbox.stat und Ergebnis in Excel auswerten: Stati sehen plausibel aus (auf Basis http://www.eyrich-net.org/mozilla/X-Mozilla-Status.html):

    • 442 Mails haben X-Mozilla-Status 0, sind also ungelesen
    • 440 Mails haben einen X-Mozilla-Status mit Bit 0x0008 gesetzt, sind also gelöscht
    • 1119 Mails haben einen X-Mozilla-Status ohne Bit 0x0008, aber mit Bit 0x0001, sind also gelesen, aber nicht gelöscht



    Versuche mit der alten Inbox


    Per Hex-Editor in Teile zerlegt, um keine Nebenwirkungen zu erzeugen (geänderte Zeilenenden, entfernte Leerzeichen o.ä.).
    Abgeschnitten habe ich die Mails, die ab kurz vor dem Absturz heruntergeladen wurden, und diese in einzelne Dateien abgelegt.


    Zwei Methoden zum Unterschieben der kopierten mbox-Dateien:

    • TB beenden, mbox in Dateisystemordner kopieren, TB neu starten
    • In TB neue Mailbox anlegen, TB beenden, mit mbox die gerade neu angelegte Mailbox überschreiben und .msf löschen


    Beides führt zum gleichen Ergebnis.



    (Hier stand ursprünglich, was mir zu lokalen Ordnern und Profil aufgefallen war - leider war der Text dann länger als 10000 Zeichen und wurde deshalb abgelehnt. Ich werde versuchen, den Teil irgendwie nachzureichen.)

  • (Hier als Fortsetzung der Teil, der in den Originalartikel nicht mehr hineingepasst hat. Er enthält nur weitere Details, keine grundsätzlich neuen Fragen o. ä.)




    Lokale Ordner


    Im Dateisystemverzeichnis für die Lokalen Ordner gibt es zu jeder Mailbox, die in der TB-Mail-Ordner-Liste angezeigt wird, die Dateien Mailbox und
    Mailbox.msf sowie das Verzeichnis Mailbox.mozmsgs.


    Zusätzlich gibt es noch die vier Dateien

    • Templates.msf 2kB, April 2014, Überrest einer früheren Mailbox?
    • msgFilterRules.dat 1kB, Juni 2012, Textdatei mit den beiden Zeilen version="9" und logging="no" - braucht TB vielleicht für
      irgendwas
    • junklog.html 550kB, August 2007, viele Zeilen "Detected junk message from ..." von April 2006 bis August 2007, wahrscheinlich ein Report, den
      ich damals erzeugt habe und dann nicht gelöscht habe.
    • Junk1.msf 0kB, April 2012, wahrscheinlich händisch kopiert von junk.msf und zu löschen vergessen


    und vier Ordner mit dem Namensschema Mailbox.sbd. Dies scheint Mailboxen zu betreffen, die Unterordner haben oder einmal hatten: Die Struktur in
    den .sbd-Verzeichnissen, die nicht leer sind, entspricht dem im übergeordneten Verzeichnis.
    Zu meiner Verwunderung gibt es auch Inbox.sbd, aber das Verzeichnis ist immerhin leer.


    Insgesamt nichts, was mir verdächtig vorkommt, auch im Vergleich zum Verzeichnis für das zweite Mail-Konto (siehe unten). Aber vielleicht erkennen die
    Experten im Forum ja etwas.



    AppData\Roaming\Thunderbird


    enthält eine Datei und zwei Verzeichnisse.


    Die Datei heißt profiles.ini und enthält

    Code
    1. [General]
    2. StartWithLastProfile=1
    3. [Profile0]
    4. Name=default
    5. IsRelative=1
    6. Path=Profiles/xxxxxxxx.default

    (wobei xxxxxxxx für eine Buchstaben-Ziffern-Kombi steht)


    Die beiden Verzeichnisse sind

    • Profiles (dass genau das in der ini angegebene Profile enthält)
    • Crash Reports



    Das Verzeichnis Crash Reports enthält u.a. eine Datei LastCrash vom Mai 2014 und eine ca. 30 Minuten jüngere Datei submit.log
    mit einer datierten Zeile, die behauptet: Crash report submission failed: Der Vorgang wurde erfolgreich beendet.


    Der Crash Report-Unterordner events ist leer, im Unterordner pending gibt es zwei Dateien mit den Endungen .dmp
    (Speicherabbild nach crash?) und .extra. Letztere enthält 22 Zeilen Text, u.a.:
    ProductName=Thunderbird
    Theme=classic/1.0
    Version=24.5.0



    Profil


    Das Profil enthält viele Dateien und ein paar Verzeichnisse. Die meisten Dateien haben ein sehr aktuelles Änderungsdatum (aktuell, letzter TB-Start,
    letztes Beenden von TB), keine Datei hat das Datum des Crashes letzten Mai.


    Von den Dateien habe ich mir nur vier näher angeschaut, die vom Namen oder her interessant erschienen:

    • folderTree.json -> Infos zu den angelegten Mailboxen? (Datei ist wenige Tage alt - wird beim Beenden von TB aktualisiert)
      Enthält ein Objekt, dass unter dem Schlüssel all eine Liste mit Mailboxen enthält, aber:

      • Von den real in TB angezeigten Mail-Ordnern unter Lokale Ordern ist nur knapp die Hälfte in folderTree.json gelistet
      • In der Datei ist genau eine Mailbox aufgeführt, die ich früher für Versuche verwendet habe, der aber inzwischen längst nicht mehr existiert!
      • Neben den Einträgen der Art
        mailbox://nobody@Local%20Folders/Trashgibt es auch welche der Formmailbox://Erster_NutzerName%40t-online.de@securepop.t-online.demailbox://Zweiter_NutzerName%40t-online.de@securepop.t-online.demailbox://Zweiter_NutzerName%40t-online.de@securepop.t-online.de/InboxWas
        mich dabei irritiert, ist das securepop.t-online.de:Falls das der Pfad für den Serverzugriff ist, wäre das ok.Falls das aber der Name des
        Dateisystemordners unterhalb <Profil>\Mail sein soll, passt das nicht, da für die beiden Konten diese Pfade unterschiedlich sind; der Pfad für
        Erster_Nutzername (der die Probleme bereitet) wäre dann falsch angegeben.


      Wenn die Datei alle Pfade enthielte, könnte ich mir vorstellen, den überschüssigen Eintrag zu löschen und/oder den falschen Dateisystemordnernamen zu
      korrigieren (falls es überhaupt ein Dateisystemordnername ist), aber wenn ohnehin die Hälfte fehlt ... obwohl die Datei nur wenige Tage alt ist ...Die
      Datei wird beim Beenden von TB geschrieben (laut Datei-Änderungsdatum), enthält aber trotzdem falsche Angaben ...

    • virtualFolders.dat -> Infos zu Folders?
      Textdatei mit Unix-Zeilenenden, enthält Definition der Suchordner
    • directoryTree.json -> Klingt ähnlich wie folderTree ...
      Enthält nur die einelementige Liste ["moz-abdirectory://?"]
    • global-messages-db.sqlite -> mit 110 MB recht groß, wird regelmäßig aktualisiert, auch laufend im Betrieb
      Enthält 22 Tabellen und 18 Indizes.Die erste Tabelle heißt folderLocations und enthält in einer Spalte Angaben wie in folderTree.json,
      allerdings sind in der Tabelle alle Mailboxen aufgeführt, die es jemals gegeben hat, auch alle Namen von früheren Versuche mit der alten Inbox! Und in der
      Tabelle gibt es keine Spalte, an der ich erkenne, welche Zeile gültig ist und welche nicht.In den anderen Tabellen in der Datei sind u.a. Metadaten,
      Subjects, Textanfänge etc. zu allen Mails, zu "Conversations" etc. enthalten.



    Dateien des zweiten Mail-Kontos


    Im Dateisystemverzeichnis für das zweite E-Mail-Konto (Unterverzeichnis von Mail im Profil) gibt es zu jeder Mailbox, die in der TB-Ordnerliste
    angezeigt wird, die Dateien Mailbox und Mailbox.msf sowie das Verzeichnis Mailbox.mozmsgs.


    Zusätzlich gibt es noch die zwei Dateien

    • msgFilterRules.dat 1kB, März 2014, Textdatei mit exakt gleichem Inhalt wie bei den lokalen Ordnern
    • popstate.dat 1kB, aktuell (die entsprechende Datei für das Haupt-E-Mail-Konto findet sich anderweitig im Profil)


    und ein Verzeichnis Trash.sbd.


    Zum Vergleich mit den lokalen Ordnern s.o.

  • Hallo Emil,


    ich bin beeindruckt, wie viel Zeit und Aufwand Du in die Analysen investiert hast. Hier und da würde das heutzutage schon fast als Bachelor-Arbeit durchgehen. ;-)


    Die einfachste Möglichkeit hast Du aber scheinbar nicht bedacht, sofern ich das jetzt nicht in der Fülle der Informationen übersehen habe. Mein Rat wäre, ein neues Profil anzulegen und dann die Daten des alten Profils mit Hilfe der Erweiterung ImportExportTools in ganz frische Mailboxen zu importieren.


    Du solltest testweise mit der defekten inbox beginnen, um zu sehen, ob die IOT die Daten sauber importieren können. Das könntest Du natürlich auch direkt mit dem bestehenden Profil versuchen, davon würde ich aber abraten. Denn so wie es aussieht, hat dieses Profil einen unbekannte Defekt. Ich würde es daher in jedem Fall erneuern.
    Die genaue Ursache wirst Du so zwar nicht herausfinden, dafür bekommst Du aber in relativ kurzer Zeit wieder eine verlässliche Basis.


    Noch zwei Anmerkungen:


    Die Auslagerung der lokalen Ordner aus dem Profil heraus ist zwar erlaubt, birgt aber Risiken. Wir raten daher meist davon ab, außer jemand weiß genau, was er tut. Besser wäre, das gesamte Profil an die gewünschte Stelle zu verschieben. Übrigens gerade auch wegen der Datensicherung. Jetzt wäre eine gute Gelegenheit, das zu korrigieren.


    Du benutzt Windows aber keinen Virenschutz. Ich kenne die Schlangenöl-Argumente mancher "Experten", aber keine einzige seriöse Quelle, die nicht den Einsatz eines Virenschutzes empfehlen würde. Das solltest Du überdenken. Wenn nicht Dir selbst, dann vielleicht Deinen Mitbürgern wie uns zuliebe.


    Gruß


    Susanne

  • Hallo und willkommen im Forum!


    Bitte habe Verständnis, dass ich nicht alles auf einmal durchlese sondern mir nur ein paar Punkte herausfische.


    Zitat

    Im Mai letzten Jahres stürzte TB ab, und danach wurde der Posteingang des Haupt-Kontos als leer angezeigt.

    .
    Ein Absturz von Thunderbird oder der von Windows kann eine Beschädigung der Datenbank m mit sich führen.
    Das ist schon ein worse case. Trotzdem kann man mit etwas Glück und Geduld die Datenbank in mehrere Stücke zerteilen und dann sein Glück versuchen.
    Was ich an deiner Stelle machen würde: nur eine einzige Mail herausschneiden und als Mboxdatei einfügen.
    Und das ganz in einem neuen Profil testen - falls das alte noch andere Beschädigungen aufweist.
    Thunderbird muss natürlich bei jeglichen Aktionen dieser Art geschlossen sein.
    Übrigens erkennt man korrupte Mboxdateien oft an merkwürdigen gleichen Zeichen hinterinander etwa runden Nullen oder Quadrate und andere. Ich meine nicht den kodierten Text von Anhängen im Anschluss des Nachrichtentextes, die manchmal tausende von Zeichen enthalten können.


    grep "^From " Inbox > Inbox.from und Inbox.from

    Das macht mir Sorgen, diese Wörter habe ich so noch nie in einem Quelltext einer Mboxdatei gesehen. "grep" deutet eher auf Linux hin, es könnte sich auch um eine andere Datei in Thunderbird handeln.
    Genaueres könnte ich aber nur durch eine Analyse eines größerer Teils der Mbox am Besten der ganzen Mbox herausbekommen. Ich könnte dir anbieten, diese zu untersuchen, wenn deine Privatsphäre dadurch nicht gestört wird und du über eine Möglichkeit verfügst, eine so große Datei in die Cloud upzuloaden und mir einen Link zum Download (über Konversationen) zukommen lässt.


    Über die Identifizierung der verschiedenen Profildateien lies hier:
    Dateien im Profil kurz erklärt.
    ch würde mich an deiner Stelle aber nicht damit aufhalten, denn die meisten der Dateien sind in diesem Fall unwichtig. Z.B. virtualfolders.dat (virtueller Order), msgfilterrules.dat (Filter) u.a.
    Gruß

    Konversationen ohne vorherige Anforderung werden ignoriert..
    Windows 10, 64-bit, immer die aktuelle Thunderbird-Version und ältere Testversionen. Testprofile vorhanden.
    Testkonten bei den meisten größeren Mailanbietern wie GMX, Web.de usw