Written by Rhoderick Milne, Microsoft Premier Field Engineer.
The venerable Personal Storage Table (PST) file has been present in Microsoft Exchange environments for many years. In some ways its success has lead to its downfall. With the proliferation of PST files on a network, multiple issues are introduced which include:
Unauthorised data removal – users may export data to PST and remove the data from the workplace
Data loss – since data is no longer on the Exchange server, if the only copy of a PST is corrupted then the contents can be lost. There are PST repair tools but they are no substitute for a central backup. Should the only copy be on a laptop that is lost, hopefully there was nothing important in the PST file…..
Accessing over network – It is not supported to access PST files over the network.
Email discovery – it becomes very hard if not impossible to search for all messages in an organisation if a portion are stored in offline PST files.
In response to customer feedback, Microsoft has made an investment in this space by acquiring Red Gate’s PST import tool. Initially discussed here, the Exchange team recently announced the release of the tool on their blog. Documentation for the PST Capture tool can be located on TechNet, along with the actual download. The tool can import PST content into on-premise Exchange 2010 servers and also to Exchange Online.
Let’s take it for a quick spin!
To use the PST Capture tool, you need to install the PST Capture Tool Central Service and Console on a host computer which will perform the PST import operations. You also need to install the PST Capture Agents on the computers which you will search for PST files, or manually select PSTs by browsing to these. It is recommended that the PST Capture tool is installed onto a dedicated server with sufficient disk space.
You must install and configure the PST Capture Console and Central Service before you deploy the PST Capture agents in your organization. The agents poll the Central service through a configurable interval to receive new actions, and to send updates for previous actions to the Central Service. Examples of such actions will be running a PST search from the PST Capture Console, where the search action is queued for the chosen agents. The agent will then poll the Central Service to download the action. Once complete, the search results are uploaded. When chosen, the import command will queue the import action for the relevant agent, which will then poll and download the action. The agent will then transmit the PST file(s) to the central Service, which will then logon on to the destination mailbox(es) and import the data.
- Microsoft Exchange 2010 deployed in your organization (if you intend to import the captured PSTs to an on-premises Exchange server)
- Microsoft Office 365 organization (if you intend to import the captured PSTs to Office 365)
- Microsoft .NET Framework 3.5 or 3.5 SP1.
- Microsoft Outlook 2010 64-bit (only required on the host computer where you install the Central Service and Console)
A Central Service account that has the correct permissions depending on the import scenario. For an on premise organisation this would require the service account which:
- is mailbox-enabled
- has been granted Full Access permission to the user mailboxes in your organization
- is assigned the Organization Management role group in your Exchange organization
- is part of the Local Administrators group on the computer where you will install the Central Service and Console
Note: While the tool may import to an Exchange 2007 server, it is tested only with Exchange 2010.
Please also note that Outlook must be the x64 build, and the tool will fail if x86 Outlook is used instead.
Installing the PST Central Service
The user account you use needs to be part of the local Administrators group on the computer you want to install the PST Capture Console.
In the folder where you downloaded the PST Capture tool, double click PSTCapture.MSI. This will start the PST Capture setup wizard.
Read and accept the EULA.
Chose the installation path. The staging directory will be C:\PSTStaging by default. This can be changed later.
Enter the credentials for the service account.
Review the options and install the Central Service.
By default the tool will install to C:\Program Files\Microsoft\Exchange\PSTCapture
And the following service, Microsoft Exchange PST Capture Service, is installed:
Installing the PST Capture Agent
To install the PST Agent onto the target machine local Administrator permissions are required.
Note: You must use the correct architecture for the machine in question, i.e. x86 or x64. The agents files are located alongside the Central Service download. Select the correct one, either PSTCaptureAgent.msi or PSTCaptureAgent_x86.msi.
Double click the correct MSI for the agent that is being installed:
Review the EULA:
Select the Agent’s installation path:
Enter the details of the Central Service:
An example of the details filled in:
Confirm the selection:
Note the port in use. We will come back to that later. The installation will then proceed:
And then finish.
The default installation path is: C:\Program Files\Microsoft\Exchange\PSTCaptureAgent
And the PST Capture Agent Service is installed:
Search And Destroy
Now that the Capture Tool’s Central Service and Capture Agent(s) are deployed we can think about migrating data stored in PST files into the user mailboxes.
Migrating the data stored in PST files to the user mailboxes using the PST Capture Tool is a two-step process. Firstly, you create a PST search which locates the PST files on the computers you specify on your network. Then, you can import these PST files to specific mailboxes in your organization. All the relevant agents must be installed at this point on the computers you wish to search.
Launch the PST Capture Tool, then click New PST Search.
The New PST Search Wizard appears and guides you through the 4 steps.
Select the relevant machines. Click next:
Select the locations to search, and also the locations to ignore.
For the permanent hard drives on the target computers, select one of the following:
- All -- PST Capture agent searches all hard drives on the target computer. This does not include mapped network drives.
- These locations -- PST Capture agent only searches the specified locations. You can specify multiple locations by separating them with semi colons.
- None -- PST Capture agent won’t search any hard drives.
Click All removable drives to allow the PST Capture agents to search removable drives on target computers such as USB flash drives or external hard drives.
In the Locations to ignore section specify any locations to exclude from the PST search:
- System folders -- PST Capture agent will skip all system folders such as Windows.
- Program files folder -- PST Capture agent will skip the Program Files folder which is the default installation path for programs.
- These locations -- PST Capture agent will skip all folders specified in the text box. You can specify multiple locations by separating these with semi colons.
Select when to execute the search. For this example I will chose the manual option, and started the search myself.
Assign the search a meaningful name
Upon returning to the Search tab, the new search should be visible, which can then be started.
Note the search has now completed, with the results shown.
Note: As an alternative to installing agents onto the machines to search, it is possible to manually add PST files to an existing import list. This could be an option if you do not want to install the agent onto multiple machines or the PST files could be stored on a NAS unit on which the agent cannot be installed.
We can now import the files by creating a new import list on the Home tab or directly from the Search tab. Note that this is located along the bottom of the search results window.
The next task is to assign the destination for the import operation. Choose to manually specify a mailbox, or set the destination to the file owner. The latter option will select the destination based of the advanced security setting’s current owner field.
Then click Import all now. The PST is then processed and the status is displayed in the bottom pane. Once the agent polls the Central Service, it will process the assigned action and then copy the PST file over the network to the Central Service’s staging area.
The status is updated as the import progresses
The details of the import can be reviewed by right clicking the import entry.
When the user then checks their mailbox we can see the imported content:
Note that the PST was called User-1-Archive, and the default setting is to import it to a folder in the mailbox with the same name. This can be modified in the options for the tool. Note the bottom option for appending a suffix should the folder name exist.
So far so good. However that are some additional items that need to be considered and addressed.
- Impact to network traffic. Copying large amounts of data over slower links to the Central Service needs to be managed.
- Impact to Exchange – ingesting data needs to be done in a controlled manner to ensure that DAG replication is kept within the environment’s tolerances and copy queues and indexes are not inundated.
- Import To Archive – In the options for the tool the PST content can be imported directly into a user’s archive (if present, else it goes to their regular mailbox). This is shown below.
- All Content Is Imported - When importing a PST all the content is imported, there is not an option to select a date range. In options there are options to control whether calendar, contacts, tasks etc. are imported.
- Central Service Stage Size – The default disk cache on the Central Service machine is 20GB. Ensure that this is sufficient.
- Bad Items – In a production environment it will be almost inevitable that some items in old PST files will be corrupt. Choose how may items may be skipped before failing an import.
- Heartbeat and Connection Port – the defaults can be changed, though if the the port is modified ensure that traffic is allowed through the Windows firewall. See the troubleshooting section for details.
- Automating agent install – the agent installation can be scripted. Ankur shared this on the Exchange team blog:
msiexec /i \\<sharename>\PSTCaptureAgent.msi /q CENTRALSERVICEHOST=<server> SERVICEPORT=<port>
- Removing PST Once Imported– The tool will not delete the PST from the file system once the import has completed, nor will it un-map the PST from the user’s Outlook profile. Though:
- You now know where the PSTs are so these can be deleted using a script
- GPO settings can be set to control what Outlook is allowed to do with PST files. Outlook 2010 has the DisableCrossAccountCopy setting for example.
- PST files that are currently open in Outlook cannot be imported, and the tool will report a message stating this.
- Mobile users that are not frequently in the office will prove a challenge as it will be difficult to search their laptops.
- PST files on DVD, CD, removable HDD or UFB will also prove a challenge to discover. To effectively discover such files the Exchange administrator will have to make sure their is sufficient promotion/education of all staff so users can see the value in having PST files ingested back into Exchange. This may prove to be the hardest aspect of such a project!
- Quotas and disk space- sufficient capacity must exist on Exchange to permit the ingestion. In the past email would be exported to Exchange to work around low quotas and the last thing you want to see happening are complaints about quotas once the old mail is ingested. This is where the personal archive can come in very handy!
- The compliance Exchange server forum on TechNet can be used to gain insight and troubleshooting information.
- If the default port is changed (TCP 6674) then ensure that a firewall exception is created. This may also be an issue if the rule which is created by default is removed. Below is an example of the Windows firewall logging dropped connections
- The tool writes diagnostic logging information to a log which can be found at:
C:\ProgramData\Microsoft\Exchange\PST Capture\Logs\PST Capture Service
- Content does not appear at the expected location in the destination mailbox. Check the Import Location specified in the tool’s options. Also Check the mailbox to see that the content was imported to the correct location, the folder may have a numeral appended to it. This may happen if a user has lots of PST files with the same name, they could be stored in different folders on the file server.
Would love to hear your feedback about the tool!