搜尋 Mozilla 技術支援網站

防止技術支援詐騙。我們絕對不會要求您撥打電話或發送簡訊,或是提供個人資訊。請用「回報濫用」功能回報可疑的行為。

Learn More

After running new filter, messages gone. Message file there, but repairing does not rebuild MSF. How to recover

  • 2 回覆
  • 1 有這個問題
  • 19 次檢視
  • 最近回覆由 Matt

more options

Created a new filter, ran it on an existing local folder. Thunderbird crashed. When I restarted thunderbird, it picked then to automatically install updates. When I was done, the folder I ran the filter on was empty.

I went to the the folder ddirectory, and there is the msssage file itself, about 153MB worth (which is about right), and the msf file for it is only 3 kB (comparable size local folders are 100 times beigger, at least).

Tried all known methods to repair this, including going to the properties for the folder and clicking repair, or stopping thunderbird, manually deleting the msf file and restarting thunderbird. In all cases, I end up with an empty folder, and an msf file being either 0 kb or 3 kb.

How do I recover this folder?

Created a new filter, ran it on an existing local folder. Thunderbird crashed. When I restarted thunderbird, it picked then to automatically install updates. When I was done, the folder I ran the filter on was empty. I went to the the folder ddirectory, and there is the msssage file itself, about 153MB worth (which is about right), and the msf file for it is only 3 kB (comparable size local folders are 100 times beigger, at least). Tried all known methods to repair this, including going to the properties for the folder and clicking repair, or stopping thunderbird, manually deleting the msf file and restarting thunderbird. In all cases, I end up with an empty folder, and an msf file being either 0 kb or 3 kb. How do I recover this folder?

所有回覆 (2)

more options

cartchunk said

Created a new filter, ran it on an existing local folder. Thunderbird crashed. When I restarted thunderbird, it picked then to automatically install updates. When I was done, the folder I ran the filter on was empty. I went to the the folder ddirectory, and there is the msssage file itself, about 153MB worth (which is about right), and the msf file for it is only 3 kB (comparable size local folders are 100 times beigger, at least). Tried all known methods to repair this, including going to the properties for the folder and clicking repair, or stopping thunderbird, manually deleting the msf file and restarting thunderbird. In all cases, I end up with an empty folder, and an msf file being either 0 kb or 3 kb. How do I recover this folder?

Well, being a little adventurous AND having a lot of experience with awk, I first was able to determine that bit 3 of the X-Mozilla-Status was asserted, signalling that all these messages were marked for delete. Once I knew that, and also knew that all 1357 messages were in the mailbox, I wrote a simple awk script that went through, read each line, and on the ones holding the value of X-Mozilla-Status, I read the value in, converted it to an int, cleared bit 3, and wrote the line back out. All other lines were written exactly as found.

Took me an hour to design, write and debug the script. Ran it a few times to work out the final kinks, then ran it for real, with Thunderbird not running. It took maybe 10 seconds to go through the entire mailbox (about 2 million lines).

I then restarted Thunderbird, right-clicked on the busted mailbox and selected Properties, clicked the Repair button, and about 3 seconds later, the number of messages went from 0 to 1370, and it seems nothing was lost.

more options

perhaps next time you will just use the undelete add-on. https://freeshell.de//~kaosmos/index-en.html#recDelMsg