Sharing a profile between Windows and Linux
- This article was written for Thunderbird but also applies to Mozilla Suite / SeaMonkey (though some menu sequences may differ).
Any shared files need to be stored on a volume (drive) that both operating systems can read/write. At one time that meant you had to create a FAT32 volume but most Linux distributions now support read/writing NTFS volumes. The two main approaches to sharing a profile between Windows and Linux seem to be:
- Literally share the profile between the two operating systems. Settings specify file locations using both a absolute and a relative pathname. Thunderbird always tries the relative pathname first. It specifies the file location relative to the profile directories location, rather than using a full pathname. This means you don't have to worry about the syntax (drive letters etc.) used in the absolute pathname. One potential problem is that some extensions (such as Lightning) have separate downloads for Linux and Windows.
See Moving_your_profile_folder_-_Thunderbird for how to tell the second installation of Thunderbird to use the existing profile (by modifying the contents of profiles.ini to point to it). Another way to use the same profile would be to specify the profiles location using command line arguments, per Running_from_a_USB_drive_-_Thunderbird (Ignore the title, that method doesn't require a USB drive).
- Share everything except for the settings, themes, and extensions. Separate profiles are created for each operating system to avoid problems in prefs.js due to Windows naming conventions. Each profile is configured to store the mail directories and the local folder directory outside of the profile in common directories and a symlink is used in the Linux profile to access the address books stored in the Windows profile. If you use Lightning create another symlink to local.sqlite and storage.sdb (old storage location kept for backwards compatibility). Each profile uses its own extensions directory for extensions and themes, so it doesn't matter if the extensions are operating system specific or not.
See this KB article for more information about the profiles contents and this KB article for how to change where each account stores its mail.
The most well known article is called "How To Share Mail Between Windows and Linux" and used to be at http://texturizer.net/thunderbird/share_mail.html . Its still available on the wayback machine at this web page.
Some other articles to read are:
- Email:Sharing your Thunderbird profile It also discusses how to configure GnuPG and the Enigmail extension for both operating systems.
Most articles talk about using FAT32 volumes for shared files because there were poor choices for writing to NTFS partitions at the time. However, most Linux distributions now include a NTFS-3g driver to provide full read/write access to NTFS. Another possibility is to use the Ext2 Installable File System for Windows to access ext3 partitions from Windows. The web page says it supports XP, Windows 7 and 8.1 but doesn't mention Windows 10. However, this thread claims it works fine under Windows 10 if you run it as Admin.
If you are dual booting Windows 8 and Linux it is recommended that you disable the optional Windows 8 Fast Start feature as this can cause data corruption due to Windows 8 using cached data from when it went into hibernation, rather than reading the actual file contents when it is restored. 
IMAP specific Alternative
IMAP accounts are designed to share folders with multiple installations of a email client. They store your mail in remote folders on the mail server, fetching the contents as needed (rather than downloading new mail to the hard disk and reading the local copy afterwards, like POP accounts do).
If you only have IMAP accounts you could use an add-on such as CardBook or gContactSync to automatically sync remote copies of your address books with your local address books. You'd have to create the second profile normally, add your accounts, modify settings and install whatever add-ons you want, but your mail and address books would stay in sync automatically.
This is more work than the first solution (literally share profiles between the two operating system) but will work if you have operating system specific versions of add-ons, and doesn't require you to trust that Thunderbird will use the relative version of a path in the settings.
- A SeaMonkey General forum thread about problems sharing profiles between Windows and Linux.
- A Thunderbird forum thread about sharing the address book and calendar when dual booting.
- A Thunderbird forum thread about dual booting FreeBSD and Windows, where FreeBSD didn't see the saved passwords due to a problem with the ntfs-3g driver on FreeBSD.
- A thread in a Libranet forum on how to get Firefox and Thunderbird to work on both Windows and Linux.
- Linux-NTFS project
- Bug report about "All profile contents should use cross-platform formats". It states compreg.dat (list of registered XPCOM components) , xpti.dat (list of registered XPCOM interfaces) and the fastload file (xul.mfl) are platform-dependent.
- HowTo repackage Lightning for Linux and Windows
- Three ways to access your Linux partition from Windows
Information on symlinks: