MozillaZine

Moving your profile folder - Thunderbird

From MozillaZine Knowledge Base

Thunderbird doesn't store your data in the program directory. It stores it in a "profile" directory in order to make it easier to upgrade or re-install without worrying about losing your data. Your profile has all of your mail, address books, settings, saved passwords, add-ons, etc. Help -> Troubleshooting Information -> Show Folder opens your profile directory using Windows Explorer (or its equivalent if you are not using Windows). This is the easiest way to find where your profile is stored.

Thunderbird doesn't discover profiles by looking in the default location where profiles are stored; instead it uses the profiles.ini file to find what profiles exist and where they are stored. While it's possible to copy your profile somewhere and then edit that file to point to the profile, it's easy to make a mistake doing that. It's recommended that you instead use a little known feature of the profile manager to move the profile.

Normally you move a profile to store it in a more convenient location or to restore a backed up profile. You can move it anywhere you want except the program directory, or a directory where Thunderbird thinks an application or the operating system might accidentally delete it. For example, in C:\Windows or C:\Program Files. This can cause a "The Local Directory path is not suitable for message storage" error message. See Dangerous Directories if that happens.

If you want to move a profile to a different PC, see Move to a new PC instead if you're using Windows.

Contents

Use the Profile Manager to move your profile

These instructions will seem strange since there is no "move profile" or "register profile" button in the profile manager, but this isn't a mistake. When you press the "Create Profile" button and then browse to your profile's location, this does not do anything to your profile; it merely updates profiles.ini to point to that profile so that Thunderbird can find and use that profile. You could do the same thing by editing profiles.ini yourself, but it is very easy to make a mistake doing that.

Image:Profilemanager1.png
  1. Close Thunderbird.
  2. Copy the profile folder to where you want to store it. (You can copy it anywhere, except the program directory.)
  3. Start the Profile Manager. One way to do that is to type Thunderbird -profilemanager from the run line in Windows Start menu. A window similar to the one shown will open. Usually Thunderbird isn't on the path, so you will probably need to specify the program location when you do that. One way to do that is to copy the contents of the Target: edit field in the shortcut used to run Thunderbird and then add -profilemanager to it.
  4. Click on the "Create Profile..." button.
  5. In the dialog that opens, enter a descriptive name for the profile.
  6. Click on the "Choose Folder..." button. A "Browse for Folder" dialog will open.
  7. Select the profile folder you copied and click OK.
  8. Check that the path shown in the "Completing the Create Profile Wizard" dialog is correct, and then click "Finish".
  9. Select the new profile and press the Start button to have Thunderbird use the moved profile.
  10. If most of the folders for an account aren't visible and your inbox looks empty find the local directory setting at the bottom of the Tools -> Account Settings -> Server Settings page, and use the "Browse" button to update its location. Normally it points to a directory named after the mail server used by that account, unless you using a global inbox. In that case it points to the Local Folders directory in the profile.

Other ways

Create a new profile and copy the old one over it

  1. Close Thunderbird.
  2. Create a new profile in the desired location using the Profile Manager.
  3. Exit the profile manager.
  4. Delete the contents of the new profile folder that you just created.
  5. Copy the contents of the old profile folder (its files and subfolders) into the new, empty profile folder.
  6. Start Thunderbird. If most of the folders for an account aren't visible and your inbox looks empty find the local directory setting at the bottom of the Account Settings -> Server Settings page, and use the "Browse" button to update its location. Normally it points to a directory named after the mail server used by that account, unless you using a global inbox. In that case it points to the Local Folders directory in the profile.

You could also copy the profile over an existing profile instead. If you do that delete its contents first.

Modify profiles.ini to point to the new location

  1. Copy the old profile folder to wherever you want to store it. If you copy the old profile from a CD, make certain you remove the write-protection from the copied files. Only the directories should be read-only.
  2. Find the profiles.ini file and open it with a text editor (not a word processor).
  3. Change "IsRelative=1" to "IsRelative=0" (non-relative/full path)
  4. Change the "Path=" line to the actual location of the new profile folder, e.g., Path=C:\Profiles\newprofile. If you're using Windows non-relative paths use back slashes while relative paths use forward slashes so you may need to change the direction of the slashes too.
  5. If you are moving a profile from its default location, the original profile folder can now be deleted.
  6. Start Thunderbird.
  7. If most of the folders for an account aren't visible and your inbox looks empty find the local directory setting at the bottom of the Account Settings -> Server Settings page, and use the "Browse" button to update its location. Normally it points to a directory named after the mail server used by that account, unless you using a global inbox. In that case it points to the Local Folders directory in the profile.

Incorrect editing of the "profiles.ini" file can cause a "already running but is not responding" error if the profile cannot be found (bug 278860).

Nothing you do works

These instructions are for the worst case scenario, where nothing you do seems to work and you have no idea why.

  1. Find your profiles.ini file and delete it. If you enter %APPDATA%\Thunderbird at start->run it should open window explorer/file explorer at the directory with that file. See Show hidden files and folders if you can't see it (because its hidden). See profiles.ini if you still can't see it. If you have Firefox installed it has its own copy of profiles.ini, stored at a different location.
  2. Install whatever version of Thunderbird you want to use, if its not already installed.
  3. Start Thunderbird. It should run the new account wizard (which wants you to add a account since it can't find any). Cancel/abort the wizard. Select Help -> Troubleshooting Information -> Show Folder. That will run window explorer/file explorer with it listing the contents of the current profile. Write down that location.

    When you started Thunderbird it created a profile, created a profiles.ini file, and updated the profiles.ini file to point to that profile. The profile doesn't have any account information so its not very useful yet, but its a valid profile, which is all that you care about. The reason you aborted the new account wizard is that we're going to replace the contents of that profile, so there is no sense adding accounts using the new account wizard.

  4. Exit Thunderbird.
  5. If your old profile is on a CD/DVD, copy them to a temporary location on the hard disk and remove the write-protection from the copied files. Only the directories should be read-only. If they're on a hard disk, a file share or a USB drive you don't need to do anything.
  6. Copy the contents of your old profile over the contents of the new profile (whose location you just wrote down). i.e. the prefs.js file is going to be overwritten by your old prefs.js file, the contents of the Mail subdirectory are going to be overwritten with the contents of your old Mail directory etc. If your old profile was at ...\xyz and you created a xyz subdirectory in the new profile when you copied it you did it wrong. Delete the contents of the new profile and try again.
  7. Thunderbird creates a temporary file called "parent.lock" under Windows, "lock" or ".parentlock" under Linux and ".parentlock" under OS X in the top directory of the profile when it starts, and is supposed to delete it when it exits. Its possible that file was not deleted. Thunderbird checks for the existence of that file when starting up, and if it already exists, exits, complaining that another copy of the application is already running. If that file exists, delete it. It doesn't have any data in it.
  8. Start Thunderbird. It should use the copy of your old profile, that is now stored in the new profile location, which is pointed to by profiles.ini. profiles.ini doesn't know or care that you replaced the contents of the profile, all it cares about is that there is a profile there. Hopefully things should work now.

Sharing a profile with another user

If you want to share a profile with another user on the same PC (who has their own account) the easiest solution is to copy the profile to a location that doesn't depend upon a user name such as c:\profiles, and then have each user "move it" using the profile manager. That will update each users profiles.ini.

Common problems

1. Can't launch the profile manager

Thunderbird isn't added to the path, so you need to specify the path when typing Thunderbird -profilemanager at Start -> Run. For example, "C:\Program Files\Mozilla Thunderbird\Thunderbird" if you're using XP. The double quotes are necessary due to the embedded space in Program Files. If you omit it Windows will think you want to run C:\programs. The exact path depends upon what operating system you are using and whether you customized the location the program was installed.

One of the easiest ways to get the right command line if you're using Windows is to copy the contents of the Target: edit field in the shortcut used to run Thunderbird, and then append -P to it. Windows supports both -P and -profilemanager command line arguments, Linux and OS X only support -profilemanager.

If you're running XP you'd typically want:

"C:\Program Files\Mozilla Thunderbird\Thunderbird" -P

If you're running Windows 7 you'd typically want:

"C:\Program Files (x86)\Mozilla Thunderbird\Thunderbird" -P

If you have problems with the double quotes another solution would be to open a console window in the Thunderbird program directory from Windows Explorer and then type Thunderbird -P

You can do that under Vista and Windows 7 by navigating to the Thunderbird program directory in Windows Explorer, holding down the Shift key while right clicking, and selecting Open Command Prompt Here from the context menu. If you're running an older version of Windows and don't want to find something like XP's "Open Command Window Here" Power Toy to add that feature run Windows Explorer, navigate to the Thunderbird program directory, press ALT+D to go to the location bar (which shows the current directory) at the top of the window and then type cmd in the location bar. That will create a console window whose default directory is the Thunderbird program directory. [1]

2. Thunderbird can't find the profile

Thunderbird is extremely finicky about the contents of profiles.ini. If things go wrong and you didn't use the recommended solution sometimes the best solution is to exit Thunderbird and delete the profiles.ini file. Then run Thunderbird and immediately exit (don't fill out anything in the account wizard). That will create a new good profiles.ini file that points to a profile that is just a stub. Then find the location of the stub profile in the profiles.ini file and copy the contents of the profile you want to move to that directory. Don't copy the profile directory, just copy its contents.

3. Copied the profile directory

Another common mistake when copying the profile over an existing profile is to copy the entire profile directory, not just the contents. Thunderbird doesn't discover a profile by looking in the Profiles directory. It looks in profiles.ini to find where they are. When it looks at the location it found in profiles.ini it expects to find prefs.js and several others files there. If you copied the profile directory there it won't find those files (because they are in a child directory), so it will assume the profile doesn't exist.

See also

External Links