Files and folders in the profile - Thunderbird: Difference between revisions

From MozillaZine Knowledge Base
Jump to navigationJump to search
m (Files without specific names - increased maximum wdseml file size)
(28 intermediate revisions by 2 users not shown)
Line 1: Line 1:
''This article is a supplement to [[Profile folder - Thunderbird]] and provides more detail about files in the Thunderbird profile folder.
''This article is a supplement to [[Profile folder - Thunderbird]] and provides more detail about files in the Thunderbird profile folder.
The profile folder contains many files and folders.  Most are described below, but you may see a few strange files which are probably either due to an add-on or this article not being updated yet.  However, if you see a directory name of places.sqlite-wal or places.sqlite-shm then you have [https://bugzilla.mozilla.org/show_bug.cgi?id=750781 a bug which causes severe performance problems].


==Files==
==Files==
None of these files should be read-only. If they are that might be a side effect of dragging and dropping or backing up files to removable media, and then using them to restore your profile.
'''None of these files should be read-only.''' If any are read-only it might be a side effect of having put files on removable media, and then copying them or restoring them back to your profile.  


{| border="2" cellpadding="4" cellspacing="0" style="margin: 1em 1em 0; background: #fcfcfc; border: 1px #aaa solid; border-collapse: collapse;"
{| border="2" cellpadding="4" cellspacing="0" style="margin: 1em 1em 0; background: #fcfcfc; border: 1px #aaa solid; border-collapse: collapse;"
Line 17: Line 19:
| Personal Address Book
| Personal Address Book
|-
|-
| addons.json
| Used by add-ons manager.
|-
| addons.sqlite
| addons.sqlite
| Used by add-ons manager.
| Obsolete. Used by add-ons manager.
|-
| blist.sqlite
| Suspect it is used with the blocking list
|-  
|-  
| [[blocklist.xml]]
| [[blocklist.xml]]
| Added list of dangerous extensions.
| Added list of dangerous extensions.
|-
| cache.sqlite
| Used by the Lightning add-on if the "Cache" option is enabled in the calendar properties, to provide offline support. [http://www.mozilla.org/projects/calendar/releases/lightning1.0.html]
|-
|-
| cert8.db
| cert8.db
| Security certificates
| Security certificates. Works together with key3.db, and should be copied together.
|-
|-
| cert_override.txt
| cert_override.txt
Line 36: Line 47:
|-
|-
| components.ini
| components.ini
| Lists extension folders with XPCOM components. Replaced with extensions.ini in Thunderbird 1.5 and above.
| Obsolete. Lists extension folders with XPCOM components. Replaced with extensions.ini in Thunderbird 1.5 and above.
|-
|-
| compreg.dat
| compreg.dat
| Lists registered XPCOM components. Automatically regenerated whenever XPCOM registration process is triggered.
| Lists registered XPCOM components. Automatically regenerated whenever XPCOM registration process is triggered.
|-
| content-prefs.sqlite
| The permissions.sqlite and content-prefs.sqlite files store the permissions for what what remote content can be displayed. This used to be stored in the address book.
|-
| custom-strings.txt in chrome<br>(does not exist by default)
| It can be used to replace text in the user interface. [https://bugzilla.mozilla.org/show_bug.cgi?id=172004]
|-
|-
| [[cookies.txt]]
| [[cookies.txt]]
| [[Cookies]]  [[RSS cookies - Thunderbird]]
| Obsolete. [[Cookies]]  [[RSS cookies - Thunderbird]]
|-
|-
| [[cookies.sqlite]]
| [[Cookies | cookies.sqlite]]
| Cookies used by Lightning extension
| Stores all cookies.
|-
|-
| cookies.sqlite-journal
| cookies.sqlite-journal
Line 58: Line 75:
| [[downloads.rdf]]
| [[downloads.rdf]]
| Download history.  Can be deleted to resolve slow downloads or program hangs ([https://bugzilla.mozilla.org/show_bug.cgi?id=159107 Bug 159107])
| Download history.  Can be deleted to resolve slow downloads or program hangs ([https://bugzilla.mozilla.org/show_bug.cgi?id=159107 Bug 159107])
| -
|-
| downloads.sqlite
| downloads.sqlite
|
|
|-
|-
| extensions.cache
| extensions.cache
| Lists installed extensions, their IDs, and the folders they are installed to, along with their last-modify time. It is used, for example, to register extensions installed by dropping a folder into one of known install locations. This file is automatically regenerated and can be deleted to resolve various issues.
| Obsolete. Lists installed extensions, their IDs, and the folders they are installed to, along with their last-modify time. It is used, for example, to register extensions installed by dropping a folder into one of known install locations. This file is automatically regenerated and can be deleted to resolve various issues.
|-
|-
| extensions.ini
| extensions.ini
Line 72: Line 89:
|-
|-
| extensions.rdf
| extensions.rdf
| Installed extension information.  It can be deleted to remove "ghost" entries from the extension list [https://bugzilla.mozilla.org/show_bug.cgi?id=319022] and to resolve various other issues.
| Obsolete. Installed extension information.  It can be deleted to remove "ghost" entries from the extension list [https://bugzilla.mozilla.org/show_bug.cgi?id=319022] and to resolve various other issues.
|-
|-
| extensions.sqlite
| extensions.sqlite
| Stores data about installed extensions, not clear yet if it replaces or supplements the extensions.rdf file.
| Obsolete. Stores data about installed extensions, not clear yet if it replaces or supplements the extensions.rdf file.
|-
|-
| feeds.rdf
| feeds.rdf
Line 91: Line 108:
| formhistory.sqlite
| formhistory.sqlite
|  
|  
|-
| global-messages-db.journal
| rollback transaction journal for global-messages-db.sqlite (temporary file)
|-
|-
| global-messages-db.sqlite
| global-messages-db.sqlite
| An index of all of your messages created by the global search engine (gloda).
| An index of all of your messages created by the global search engine (gloda). Can be deleted if db is corrupt or search isn't working correctly - it will be rebuilt.
|-
|-
| history.mab
| history.mab
Line 105: Line 125:
|-
|-
| [[key3.db]]
| [[key3.db]]
| Key database
| Key database. Works together with cert8.db, and should be copied together.
|-
| lightweighttheme-footer, lightweighttheme-header
| Optional. Created if you install a persona (light weight themes).
|-
|-
| [[localstore.rdf]]
| [[localstore.rdf]]
| Toolbar and [[Window_layout_-_Thunderbird|window layout]] and size/position settings.  It can be safely deleted to resolve various issues.
| Obsolete. Replaced by xulstore.json in one of the updates to version 38. It stores the toolbar, [[Window_layout_-_Thunderbird|window layout]] and size/position settings.  It can be safely deleted to resolve various issues.  
|-
|-
| localstore-safe.rdf
| localstore-safe.rdf
| Special version of localstore.rdf used in [[Safe Mode]] to set toolbars and window customizations to defaults. [https://bugzilla.mozilla.org/show_bug.cgi?id=303279]
| Special version of localstore.rdf used in [[Safe Mode]] to set toolbars and window customizations to defaults. [https://bugzilla.mozilla.org/show_bug.cgi?id=303279]
|-
| local.sqlite
| Internal calendar data (in SQLite format) if you use the Lightning extension.
|-
|-
| lock (Linux)
| lock (Linux)
| See parent.lock
| See parent.lock
|-
| logins.json
| Stores encrypted passwords, and requires key3.db and cert8.db to work. Replaces signons.sqlite, which had replaced signons.txt.
|-
|-
| mailviews.dat
| mailviews.dat
Line 127: Line 156:
| msgFilterRules.dat in ImapMail, Mail, News
| msgFilterRules.dat in ImapMail, Mail, News
| [[Filters (Thunderbird)|Message filters]]
| [[Filters (Thunderbird)|Message filters]]
|-
| nsmail.eml, nsmail.tmp, nsmail.html
| Temporary files created when sending a message.
|-
|-
| nstmp
| nstmp
Line 142: Line 168:
| [[persdict.dat]]
| [[persdict.dat]]
| Personal spelling [[Dictionaries | dictionary]]
| Personal spelling [[Dictionaries | dictionary]]
|-
| people.sqlite
|
|-
|-
| permissions.sqlite
| permissions.sqlite
| Used by Lightning extension
| The permissions.sqlite and content-prefs.sqlite files store the permissions for what remote content can be displayed. Lightning also uses that file.
|-
|-
| places.sqlite
| places.sqlite
Line 153: Line 176:
|-
|-
| places.sqlite-shm, places.sqlite.wal
| places.sqlite-shm, places.sqlite.wal
| write-ahead log files for places.sqlite
| Write-ahead log files for places.sqlite. You should not have a places.sqlite-shm and a places.sqlite.wal directory (instead of files with that name). If you do that causes Thunderbird to be extremely slow. Its not clear what creates them, but the workaround is to delete those two directories. [https://bugzilla.mozilla.org/show_bug.cgi?id=750781]
|-
|-
| [[popstate.dat]] in Mail
| [[popstate.dat]] in Mail
Line 163: Line 186:
| pubring.gpg
| pubring.gpg
| Public keys (yours and any you collected) for the Enigmail (OpenPGP) extension.
| Public keys (yours and any you collected) for the Enigmail (OpenPGP) extension.
|-
| revocations.txt
|
|-
|-
| rulesbackup.dat
| rulesbackup.dat
Line 177: Line 203:
|-
|-
| session.json
| session.json
| Default windows layout. Thunderbird 3.x deletes this file after reading the settings. Its re-created and the layout saved when Thunderbird 3.x terminates normally.
| Default windows layout. This includes data on what tabs are open. Thunderbird (3.0 and later) deletes this file after reading the settings. Its re-created and the layout saved when Thunderbird terminates normally.
|-
| sessionCheckpoints.json
|
|-
|-
| Signons.sqlite
| Signons.sqlite
| Encrypted saved passwords, requires key3.db to work. It used to use [[signons.txt]] or signons3.txt.
| Obsolete. Replaced by logins.json. It stores encrypted saved passwords, and requires key3.db and cert8.db to work. If you delete it, also delete key3.db and cert8.db. Thunderbird used to use [[signons.txt]] or signons3.txt.  
|-
| SiteSecurityServiceState.txt
|
|-
|-
| storage.sdb
| storage.sdb
| Internal calendar data (in SQLite format) if you use the Lightning extension
| Internal calendar data (in SQLite format) if you use the Lightning extension. Its been replaced by local.sqlite but is still maintained for compatibility in case you switch between different Thunderbird+Lightning versions.
|-
| times.json
|
|-
|-
| training.dat
| training.dat
Line 193: Line 228:
| tmprules.dat
| tmprules.dat
| Temporary file used when modifying message filters.
| Temporary file used when modifying message filters.
|-
| Unsent Messages.
| The "Unsent Messages." mbox file in ..\Mail\Local Folders is displayed as the Outbox folder by recent versions of Thunderbird. That folder is used to queue unsent messages if you use "Send Later". 
|-
|-
| [[Urlclassifier2.sqlite | urlclassifier2.sqlite]]
| [[Urlclassifier2.sqlite | urlclassifier2.sqlite]]
| Contains information on known phishing sites. Obsolete.
| Obsolete. Contains information on known phishing sites.  
|-
|-
| urlclassifier3.sqlite
| urlclassifier3.sqlite
Line 215: Line 253:
| [[Saved Search]] folder settings
| [[Saved Search]] folder settings
|-
|-
| [[Webappsstore.sqlite | webappsstore.sqlite]]
| [[Webappsstore.sqlite | webappsstore.sqlite, webappsstore.sqlite-shm, webappsstore.sqlite-wal]]
|  
| Contains DOM storage data. Its used similar to cookies by web sites.
|-
|-
| xpti.dat
| xpti.dat
| Lists registered XPCOM interfaces. Automatically regenerated whenever XPCOM registration process is triggered.
| Obsolete. Lists registered XPCOM interfaces. Automatically regenerated whenever XPCOM registration process is triggered.
|-
|-
| XPC.mfl
| XPC.mfl
| A cache file for components (XPC)
| Obsolete. A cache file for components (XPC)
|-
|-
| xul.mfasl (Linux)
| xul.mfasl (Linux)
| See XUL.mfl file
| Obsolete. See XUL.mfl file
|-
|-
| XUL.mfl (Windows)
| XUL.mfl (Windows)
| Cached user interface data.  Can be deleted to resolve various issues. <br> File location changed in Thunderbird 1.5.  [https://bugzilla.mozilla.org/show_bug.cgi?id=291033]  
| Obsolete. Cached user interface data.  Can be deleted to resolve various issues. <br> File location changed in Thunderbird 1.5.  [https://bugzilla.mozilla.org/show_bug.cgi?id=291033]  
|-
|-
| XUL FastLoad File (Mac OS X)
| XUL FastLoad File (Mac OS X)
| See XUL.mfl
| Obsolete. See XUL.mfl
|-
| [[localstore.rdf | xulstore.json]]
| Toolbar, [[Window_layout_-_Thunderbird|window layout]] and size/position settings.  It can be safely deleted to resolve various issues.
|-
|}
|}


Line 252: Line 294:
|-
|-
| *.mozeml
| *.mozeml
| Each file is a partial copy (up to 20kb) of a message in the mail folder, stored in a .mozmsgs subdirectory. Used by the optional Spotlight Integration component under OSX. It's deleted when the message in the mbox is deleted. [http://forums.mozillazine.org/viewtopic.php?p=3304847#3304847]
| Each file is a partial copy (up to 20kb) of a message in the mail folder, stored in a .mozmsgs subdirectory. It is used by the optional Spotlight Integration component under OSX. It's deleted when the message in the mbox is deleted. [http://forums.mozillazine.org/viewtopic.php?p=3304847#3304847]
|-
| *.rc in News
| Subscribed groups.
|-
|-
| *.tha
| *.tha
Line 261: Line 306:
|-
|-
| *.wdseml
| *.wdseml
Copies of messages (its actually a .eml file) created by Windows Search Integration (requires Vista or Windows 7). They're stored in .mozmsg directories.
Each file is a partial copy (up to 49KB) of a message in the mail folder, stored in a .mozmsgs subdirectory. It is used by Windows Search Integration (requires Vista or a later version of Windows). They're actually renamed .eml files. You can disable this feature by unchecking Tools -> Options -> Advanced -> General -> System Integration -> "Allow Windows Search to search messages". [https://bugzilla.mozilla.org/show_bug.cgi?id=433697][http://forums.mozillazine.org/viewtopic.php?p=14433371#p14433371]
|-
|-
| *.rc in News
| *.xpi in Extensions
| Subscribed groups.  
| .xpi files are renamed .zip files used by add-ons. Usually they're unzipped and the files stored in a child directory (its name is the GUID that uniquely identifies that add-on) when the add-on is installed but some (such as IgnoreAero and Add-on Compatibility Reporter) aren't.  
|}
|}


Line 279: Line 324:
|-
|-
| MozillaMailnews
| MozillaMailnews
| Directory in temporary files directory.  
| Directory in the systems temporary files directory.
|-
| nsmail.eml, nsmail.tmp, nsmail.html
| Temporary files created in MozillaMailnews when sending a message. If you get an error message about being unable to open the temp file nsmail.tmp when sending a message try re-configuring your anti-virus program not to scan email messages.  
|-
|-
| Updates
| Updates
| ..\Local Settings\Application Data\Thunderbird\Mozilla Thunderbird is the directory used to store updates when upgrading, under Windows. This is not the same directory tree as %APPDATA%. Its underneath C:\Documents and Settings\user_name on XP, and user_name\Appdata on Vista. Similar directories are created for other operating systems.
| ..\Local Settings\Application Data\Thunderbird\Mozilla Thunderbird or ..\Local\Thunderbird\Mozilla Thunderbird is the directory used to store updates when upgrading, under Windows. This is not the same directory tree as %APPDATA%. Its underneath C:\Documents and Settings\user_name on XP, and user_name\Appdata on Vista\Windows 7. Similar directories are created for other operating systems.


It has a "active-update.xml" file plus a updates subdirectory with numbered sub-directories (usually "0"). If an update gets caught in a loop you can break the cycle by deleting "active-update.xml" plus the numbered subdirectory with the updates. Thunderbird (so far) re-creates that Mozilla Thunderbird directory tree as needed if it doesn't exist.   
It has a "active-update.xml" file plus a updates subdirectory with numbered sub-directories (usually "0"). If an update gets caught in a loop you can break the cycle by deleting "active-update.xml" plus the numbered subdirectory with the updates. Thunderbird (so far) re-creates that Mozilla Thunderbird directory tree as needed if it doesn't exist.   
|-
|-
| omni.jar
| omni.ja
| It contains most of the default preference files that used to be stored in in the defaults\pref subdirectory in the Thunderbird program directory such as mailnews.js all-thunderbird.js. Its in the root of the program directory. Its contents can be viewed using any program that knows how to open a .zip archive file.
| It contains most of the default preference files that used to be stored in in the defaults\pref subdirectory in the Thunderbird program directory such as mailnews.js and all-thunderbird.js. Its in the root of the program directory. Its contents can be viewed using any program that knows how to open a .zip archive file. It used to be called omni.jar but was renamed because Window’s System Restore does not backup .jar files. [https://bugzilla.mozilla.org/show_bug.cgi?id=701875]
|-
|-
| pluginreg.dat
| pluginreg.dat
Line 299: Line 347:
|}
|}


You can [[Moving_your_mail_storage_location_-_Thunderbird | store messages outside of the profile]] by configuring Thunderbird to store an accounts directory outside of the profile. If you do that you need to move the directories yourself, modifying the preferences in prefs.js just tells Thunderbird where to look for the files.
You can [[Moving_your_mail_storage_location_-_Thunderbird | store messages outside of the profile]] by changing "Local directory" in Account Settings, Server Settings to be a a directory outside of the profile. If you do that, and then you must move existing files in the current directories yourself - because modifying settings only tells Thunderbird where to look for the files.  '''Be careful''' about changing this location:
# Some locations can be bad, including those which [[Dangerous_directories_-_Thunderbird| are dangerous that Thunderbird will automatically prevent]].
# Make sure you backup the directory, because programs designed to back up Thunderbird or mozilla profiles will '''not''' backup folders that are outside the profile structure.
# Make sure you set a folder exclusion for the new location in your antivirus and malware programs.  These programs (should) automatically exclude your Thunderbird profile from scanning. If you have set mail to be outside the profile, and excluded the new location, then you risk losing mail folders.
 
==Other==
 
The layout engine (Gecko) has a Javascript cache, which is not automatically cleared when Thunderbird is restarted.  This can prevent a script change from taking effect when you restart Thunderbird. To clear the cache when restarting, add a ''-purgecaches'' command line argument.  


[[Category:Profiles]]
[[Category:Profiles]]

Revision as of 01:44, 28 January 2016

This article is a supplement to Profile folder - Thunderbird and provides more detail about files in the Thunderbird profile folder.

The profile folder contains many files and folders. Most are described below, but you may see a few strange files which are probably either due to an add-on or this article not being updated yet. However, if you see a directory name of places.sqlite-wal or places.sqlite-shm then you have a bug which causes severe performance problems.

Files

None of these files should be read-only. If any are read-only it might be a side effect of having put files on removable media, and then copying them or restoring them back to your profile.

Name Description
.autoreg Temporary empty file that signals a change in the installed extensions.
.parentlock (Mac OS X) See parent.lock
abook.mab Personal Address Book
addons.json Used by add-ons manager.
addons.sqlite Obsolete. Used by add-ons manager.
blist.sqlite Suspect it is used with the blocking list
blocklist.xml Added list of dangerous extensions.
cache.sqlite Used by the Lightning add-on if the "Cache" option is enabled in the calendar properties, to provide offline support. [1]
cert8.db Security certificates. Works together with key3.db, and should be copied together.
cert_override.txt This is an optional file used to store a security exception. It appears to store the host name , thus preventing you from creating a security exception for a rotating SMTP server.
chromeappsstore.sqlite Unknown. There is a similar file in Firefox profiles used by localstorage/DOMStorage to store about: pages. [2]
compatibility.ini Stores the version and path of the application this profile was last used with. When the profile is loaded with an application with a different version/path, the XPCOM components registration process is triggered. Thunderbird 3.x appears to use the version information to decide whether to display additional tabs such as the migration assistant and whats new. This file is automatically generated and can safely be deleted.
components.ini Obsolete. Lists extension folders with XPCOM components. Replaced with extensions.ini in Thunderbird 1.5 and above.
compreg.dat Lists registered XPCOM components. Automatically regenerated whenever XPCOM registration process is triggered.
content-prefs.sqlite The permissions.sqlite and content-prefs.sqlite files store the permissions for what what remote content can be displayed. This used to be stored in the address book.
custom-strings.txt in chrome
(does not exist by default)
It can be used to replace text in the user interface. [3]
cookies.txt Obsolete. Cookies RSS cookies - Thunderbird
cookies.sqlite Stores all cookies.
cookies.sqlite-journal Journal file for cookies.sqlite
cookies.sqlite-shm , cookies.sqlite-wal write-ahead log files for cookies.sqlite
directoryTree.json
downloads.rdf Download history. Can be deleted to resolve slow downloads or program hangs (Bug 159107)
downloads.sqlite
extensions.cache Obsolete. Lists installed extensions, their IDs, and the folders they are installed to, along with their last-modify time. It is used, for example, to register extensions installed by dropping a folder into one of known install locations. This file is automatically regenerated and can be deleted to resolve various issues.
extensions.ini Lists folders of installed extensions and themes. The file is automatically generated by nsExtensionManager and is used by low-level code to detect chrome packages and XPCOM components provided by installed addons. It can be safely deleted to resolve various issues.
extensions.log Records some errors reported by the Extension Manager.
extensions.rdf Obsolete. Installed extension information. It can be deleted to remove "ghost" entries from the extension list [4] and to resolve various other issues.
extensions.sqlite Obsolete. Stores data about installed extensions, not clear yet if it replaces or supplements the extensions.rdf file.
feeds.rdf Stores your RSS subscriptions. Its in in the Mail\feeds directory
feeditems.rdf Records RSS feeds. Its in in the Mail\feeds directory
filterlog.html Message filter log. If filter logging is enabled its stored in the accounts directory.
foldertree.json Used by the folder pane.
formhistory.sqlite
global-messages-db.journal rollback transaction journal for global-messages-db.sqlite (temporary file)
global-messages-db.sqlite An index of all of your messages created by the global search engine (gloda). Can be deleted if db is corrupt or search isn't working correctly - it will be rebuilt.
history.mab Collected addresses address book
hostinfo.dat in News Contains all the newsgroups available for the current server
junklog.html Junk mail log for that account
key3.db Key database. Works together with cert8.db, and should be copied together.
lightweighttheme-footer, lightweighttheme-header Optional. Created if you install a persona (light weight themes).
localstore.rdf Obsolete. Replaced by xulstore.json in one of the updates to version 38. It stores the toolbar, window layout and size/position settings. It can be safely deleted to resolve various issues.
localstore-safe.rdf Special version of localstore.rdf used in Safe Mode to set toolbars and window customizations to defaults. [5]
local.sqlite Internal calendar data (in SQLite format) if you use the Lightning extension.
lock (Linux) See parent.lock
logins.json Stores encrypted passwords, and requires key3.db and cert8.db to work. Replaces signons.sqlite, which had replaced signons.txt.
mailviews.dat Defines your current message view (you can customize it)
menuedit.rdf Used by Menu Editor extension
mimeTypes.rdf Action to perform when downloading certain types of files. Can be deleted to reset download actions.
msgFilterRules.dat in ImapMail, Mail, News Message filters
nstmp Thunderbird creates a nstmp temporary file when compacting a folder. You should not see it (or nstmp-1, nstmp-2 etc.) unless Thunderbird was interrupted while compacting.
panacea.dat Mail folder cache. It can be safely deleted to resolve various issues.
parent.lock (Windows) Marker showing that the current profile is in use. Can be deleted to unlock the profile.
persdict.dat Personal spelling dictionary
permissions.sqlite The permissions.sqlite and content-prefs.sqlite files store the permissions for what remote content can be displayed. Lightning also uses that file.
places.sqlite
places.sqlite-shm, places.sqlite.wal Write-ahead log files for places.sqlite. You should not have a places.sqlite-shm and a places.sqlite.wal directory (instead of files with that name). If you do that causes Thunderbird to be extremely slow. Its not clear what creates them, but the workaround is to delete those two directories. [6]
popstate.dat in Mail Keeps track of which messages have been left on the POP3 server
prefs.js All preferences, including account settings and mail folder locations. See: Modify Thunderbird settings
pubring.gpg Public keys (yours and any you collected) for the Enigmail (OpenPGP) extension.
revocations.txt
rulesbackup.dat If msgFilterRules.dat can't be read it backs it up in that file and creates a new msgFilterRules.dat.
search.json Not clear what it is since there is no search.sqlite to cache. [7]
secmod.db Security module database
secring.gpg Private keys for the Enigmail (OpenPGP) extension.
session.json Default windows layout. This includes data on what tabs are open. Thunderbird (3.0 and later) deletes this file after reading the settings. Its re-created and the layout saved when Thunderbird terminates normally.
sessionCheckpoints.json
Signons.sqlite Obsolete. Replaced by logins.json. It stores encrypted saved passwords, and requires key3.db and cert8.db to work. If you delete it, also delete key3.db and cert8.db. Thunderbird used to use signons.txt or signons3.txt.
SiteSecurityServiceState.txt
storage.sdb Internal calendar data (in SQLite format) if you use the Lightning extension. Its been replaced by local.sqlite but is still maintained for compatibility in case you switch between different Thunderbird+Lightning versions.
times.json
training.dat Custom training for Junk Mail Controls
traits.dat Bayes traits training data used by the TaQuilla add-on
tmprules.dat Temporary file used when modifying message filters.
Unsent Messages. The "Unsent Messages." mbox file in ..\Mail\Local Folders is displayed as the Outbox folder by recent versions of Thunderbird. That folder is used to queue unsent messages if you use "Send Later".
urlclassifier2.sqlite Obsolete. Contains information on known phishing sites.
urlclassifier3.sqlite Contains information on known phishing sites. Seems to be a replacement for urlclassifier2.sqlite, which replaced urlclassifier.sqlite.
user.js
(does not exist by default)
User-set, overrides the preferences in prefs.js
userChrome.css in chrome
(does not exist by default)
User-set CSS to change the way the application looks
userContent.css in chrome
(does not exist by default)
User-set CSS to change the way webpages look
userChrome.js in chrome
(does not exist by default)
User-set JavaScript to change the way the application works
virtualfolders.dat Saved Search folder settings
webappsstore.sqlite, webappsstore.sqlite-shm, webappsstore.sqlite-wal Contains DOM storage data. Its used similar to cookies by web sites.
xpti.dat Obsolete. Lists registered XPCOM interfaces. Automatically regenerated whenever XPCOM registration process is triggered.
XPC.mfl Obsolete. A cache file for components (XPC)
xul.mfasl (Linux) Obsolete. See XUL.mfl file
XUL.mfl (Windows) Obsolete. Cached user interface data. Can be deleted to resolve various issues.
File location changed in Thunderbird 1.5. [8]
XUL FastLoad File (Mac OS X) Obsolete. See XUL.mfl
xulstore.json Toolbar, window layout and size/position settings. It can be safely deleted to resolve various issues.

Files without specific names

Name Description
(number).s Obsolete. It used to be used for saving passwords. The "(number).s" value was specified by the signon.SignonFileName preference.
* in ImapMail, Mail, and News (no file extension) Mbox files. They are text files that contain all of the messages for that folder.
*.mab other than abook.mab and history.mab User-created or imported address books.
*.msf in ImapMail, Mail, and News Index files for mail messages.
*.mozeml Each file is a partial copy (up to 20kb) of a message in the mail folder, stored in a .mozmsgs subdirectory. It is used by the optional Spotlight Integration component under OSX. It's deleted when the message in the mbox is deleted. [9]
*.rc in News Subscribed groups.
*.tha The MoreFunctionsForAddressBook add-on uses this file extension for contacts.
*.thm The MoreFunctionsForAddressBook add-on uses this file extension for mailing lists.
*.wdseml Each file is a partial copy (up to 49KB) of a message in the mail folder, stored in a .mozmsgs subdirectory. It is used by Windows Search Integration (requires Vista or a later version of Windows). They're actually renamed .eml files. You can disable this feature by unchecking Tools -> Options -> Advanced -> General -> System Integration -> "Allow Windows Search to search messages". [10][11]
*.xpi in Extensions .xpi files are renamed .zip files used by add-ons. Usually they're unzipped and the files stored in a child directory (its name is the GUID that uniquely identifies that add-on) when the add-on is installed but some (such as IgnoreAero and Add-on Compatibility Reporter) aren't.

Files outside the profile folder

Name Description
application.ini The installation directory has an application.ini file with general information about what build you are using and additional entries that control whether the profile manager and extension manager are enabled.
custom-strings.txt File in the chrome subdirectory in the programs installations directory used to replace strings. [12] [13]
MozillaMailnews Directory in the systems temporary files directory.
nsmail.eml, nsmail.tmp, nsmail.html Temporary files created in MozillaMailnews when sending a message. If you get an error message about being unable to open the temp file nsmail.tmp when sending a message try re-configuring your anti-virus program not to scan email messages.
Updates ..\Local Settings\Application Data\Thunderbird\Mozilla Thunderbird or ..\Local\Thunderbird\Mozilla Thunderbird is the directory used to store updates when upgrading, under Windows. This is not the same directory tree as %APPDATA%. Its underneath C:\Documents and Settings\user_name on XP, and user_name\Appdata on Vista\Windows 7. Similar directories are created for other operating systems.

It has a "active-update.xml" file plus a updates subdirectory with numbered sub-directories (usually "0"). If an update gets caught in a loop you can break the cycle by deleting "active-update.xml" plus the numbered subdirectory with the updates. Thunderbird (so far) re-creates that Mozilla Thunderbird directory tree as needed if it doesn't exist.

omni.ja It contains most of the default preference files that used to be stored in in the defaults\pref subdirectory in the Thunderbird program directory such as mailnews.js and all-thunderbird.js. Its in the root of the program directory. Its contents can be viewed using any program that knows how to open a .zip archive file. It used to be called omni.jar but was renamed because Window’s System Restore does not backup .jar files. [14]
pluginreg.dat Registration of plugin MIME types. It's located in the "Thunderbird" directory containing the profiles.
profiles.ini Keeps track of the profile folder location. It's located in the "Thunderbird" directory containing the profiles. It can be edited to point to a moved profile folder. If deleted, profiles.ini will be regenerated along with a new default profile folder upon program restart.
registry.dat Obsolete. Keeps track of profile folder location in previous Thunderbird versions. It's located in the "Thunderbird" directory containing the profiles.

You can store messages outside of the profile by changing "Local directory" in Account Settings, Server Settings to be a a directory outside of the profile. If you do that, and then you must move existing files in the current directories yourself - because modifying settings only tells Thunderbird where to look for the files. Be careful about changing this location:

  1. Some locations can be bad, including those which are dangerous that Thunderbird will automatically prevent.
  2. Make sure you backup the directory, because programs designed to back up Thunderbird or mozilla profiles will not backup folders that are outside the profile structure.
  3. Make sure you set a folder exclusion for the new location in your antivirus and malware programs. These programs (should) automatically exclude your Thunderbird profile from scanning. If you have set mail to be outside the profile, and excluded the new location, then you risk losing mail folders.

Other

The layout engine (Gecko) has a Javascript cache, which is not automatically cleared when Thunderbird is restarted. This can prevent a script change from taking effect when you restart Thunderbird. To clear the cache when restarting, add a -purgecaches command line argument.