Thunderbird — Восстановление пропавших сообщений

Все нижеописанное подробно описывает решение с Linux версией программы. Но принцип применим и к Windows версии, поскольку грабля скорее с программой нежели с ОС. Поэтому при достаточно осмысленном прочтении, пользователи win тоже могут сориентироваться что делать.
К сожелению программа Thunderbird (Icedove в Debian) имеет ограничение на размер директории 4GB (в интерфейсе самой программы «Входящие», «Отправленные» и тд. кажутся папками, на самом же деле это файлы). Раньше я частенько сталкивался с проблемой когда в данное ограничение упиралась директория «Входящие», но сегодня пришлось чинить директорию «Отправленные». Как оказалось пути решения для папок «Входящие» и «Отправленные» отличаются, об этом я и хотел поведать в данной статье. Итак, сначала про входящие, я чиню вот так:

  • Закрыть программу Thunderbird
  • прямо под пользователем у которого сломалось переходим в директорию с базой сообщений
user@ws:~$ cd .icedove/xxxxxxxx.default/Mail/mail.some.domain.ua/
  • Удаляем индекс сломанных Входящих
user@ws:~$ rm Inbox.msf
  • меняем все X-Mozilla-Status на 0011, результат перенаправляем в файл Inbox_good
user@ws:~$ sed -e 's/^X-Mozilla-Status: ....$/X-Mozilla-Status: 0011/' Inbox > Inbox_good
  • Переименовываем сломанную базу с входящими сообщениями во что нибудь (тут можно и удалить сразу, но я предпочитаю удалять в самом конце, когда буду уверен что все письма восстановлены)
user@ws:~$ mv Inbox Inbox_bad
  • Запускаем Thunderbird и индексируем директорию Inbox_good (правой кнопкой на ней и жмем кнопочку «Перестроить Индекс»)

После индексации переносим сообщения в Архив или еще куда, вобщем там уже на усмортрение пользователя. Когда все необходимое восстановлено, лишние директории можно поудалять.

Восстановление писем в папке «Отправленные» несколько отличается, итак делаю:

  • Закрыть программу Thunderbird
  • прямо под пользователем у которого сломалось переходим в директорию с базой сообщений
user@ws:~$ cd .icedove/xxxxxxxx.default/Mail/mail.some.domain.ua/
  • Удаляем индекс сломанных Отправленных
user@ws:~$ rm Sent.msf
  • Удалить из файла Sent строки содержащие «X-Mozilla-Status:»
user@ws:~$ grep -v "X-Mozilla-Status:" Sent > Sent_good
  • Переименовываю сломанный файл Sent во что-нибудь:
user@ws:~$ mv Sent Sent_bad
  • Дальше запускаем программу и индексируем директорию Sent_good. Все что нужно сохраняю, лишнее удаляю. Все!

При написании использовал идею из этого блога.

  1. Комментов пока нет

  1. Трэкбэков пока нет.

Why ask?