Topic Last Modified: 2013-02-13

If the content of a public folder mailbox begins to exceed your mailbox quotas, you may need to move public folders to a different public folder mailbox. There are a couple ways to do this. To move one or more public folders that don’t contain subfolders, you can use the PublicFolderMoveRequest cmdlets. If you need to move an entire public folder branch (which includes the parent public folder and all subfolders), you can use the Move-PublicFolderBranch.ps1 script that’s available when you install Exchange 2013.

For additional management tasks related to public folders see Public Folder Procedures.

What do you need to know before you begin?

  • Estimated time to complete this task depends on the size of the public folder.

  • You need to be assigned permissions before you can perform this procedure or procedures. To see what permissions you need, see the"Public folders" entry in the Sharing and Collaboration Permissions topic.

  • You can’t use the EAC to perform these procedures. You must use the Shell.

  • If the folder you’re moving has subfolders, those subfolders won’t be moved by default. If you want to move a public folder and all its subfolders, use the Move-PublicFolderBranch.ps1 script.

  • Moving public folders only moves the physical contents of the public folder; it doesn't change the logical hierarchy.

  • Depending on the size of the public folder and the amount of content it contains, the move may take several hours to complete. During that time, users will be able to access the public folders. However, users won’t be able to access the public folders for a brief period while the folder is in the “Completion in Progress” state.

  • You can perform only one public folder move request at a time. You must use the Remove-PublicFolderMoveRequest cmdlet to remove the request after it’s complete.

  • To check the status of an ongoing public folder move request, run the Get-PublicFolderMoveRequest cmdlet.

  • For information about keyboard shortcuts that may apply to the procedures in this topic, see Keyboard Shortcuts in the Exchange Admin Center.

Having problems? Ask for help in the Exchange forums. Visit the forums at: Exchange Server, Exchange Online, or Exchange Online Protection

What do you want to do?

Move a single public folder

This example starts the move request for the public folder \CustomerEnagagements from the public folder mailbox DeveloperReports to DeveloperReports01

Copy Code
New-PublicFolderMoveRequest -Folders \DeveloperReports\CustomerEngagements -TargetMailbox DeveloperReports01

For detailed syntax and parameter information, see New-PublicFolderMoveRequest.

Move multiple public folders

This example begins the move request for public folders under the \Dev public folder branch to the target public folder mailbox DeveloperReports01. This example doesn’t move the public folder \Dev.

Copy Code
New-PublicFolderMoveRequest -Folders \Dev\CustomerEngagements,\Dev\RequestsforChange,\Dev\Usability -TargetMailbox DeveloperReports01

For detailed syntax and parameter information, see New-PublicFolderMoveRequest.

Move a branch of public folders

This example uses the Move-PublicFolderBranch.ps1 script to move a branch of public folders. This starts the move request for the public folder \Dev and all its subfolders to the public folder mailbox DeveloperReports01. The script is located in the scripts folder and must be run from that location.

Copy Code
CD $env:ExchangeInstallPath\scripts

.\Move-PublicFolderBranch.ps1 -FolderRoot \Dev -TargetPublicFolderMailbox DeveloperReports01

How do you know this worked?

To verify that the public folder move request was successful, run the following command:

Copy Code
Get-PublicFolderMoveRequest | Format-List Status

A status of Completed indicates that the move request was successful.

If the move request was unsuccessful, you may need to restore the public folder or its contents. For more information, see Restore Public Folders and Public Folder Mailboxes from Failed Moves.