Migrating Public Folders in Office 365

The following processes do not apply to every Office 365 public folder migration, but are frequently useful. For specific migration steps, follow the migration guide. To navigate to a specific section, use the table of contents to the left. 

 

Create a Public Folder Mailbox

To create a public folder mailbox in Office 365, follow these steps. 

  1. Log in to the  Microsoft Office 365 portal as the user in the migration project. Make sure the user is an administrator. (You can easily tell, as there will be an Admin tab present in the upper right menu).
    • If the user is not an admin, then assign the user the global admin role.
  2. From the Admin tab, select Exchange. Click on the Public Folder option in the left panel. Click on the Public Folder Mailboxes topic in the top menu.
    • Create a Public Folder mailbox to hold the Public Folders being migrated.
  3. Click on the Public Folder topic in the top menu. Click on the ... (More) button from the set of actions, and then select Root Permissions. Make sure that the admin user is listed as an owner.
  4. If the admin user is not listed as an owner, then add them and apply the change to all subfolders.
  5. Make sure there is an Outlook tab.
    • If there is no Outlook tab for the admin user, then assign the user an Office 365 license.
  6. Verify the mailbox can be viewed by clicking on the Outlook tab.
  7. Go back to the Office 365 Admin Dashboard .
  8. Go to Active Users in the left panel then search for your administrator account email.
  9. Select the admin user and ensure the following:
    • The admin user is a valid active user.
    • The admin user has an Office 365 license assigned.
    • The admin user name is not misspelled.

 

Increasing the Send/Receive Size Limits

Here are the steps to follow in order to increase the send/receive size limit in Public Folders in Office 365, via the user interface: 

  1. Log into the Office 365 admin center.
  2. Click on the Exchange link at the bottom left.
  3. Click on Public Folders.
  4. Select the Public Folder in question, then click on Enable under Mail Settings.
  5. Click on the pencil above the Public Folder list.
  6. Next, click on the Mail Flow Settings.
  7. Click on the checkboxes, to enable Maximum Sending Message Size.
  8. Now set the maximum message send and receive size. 

 

Checking and Increasing Public Folder Quotas

Often Public Folder quotas have been set to a value that is too low or are still set to their defaults. To ensure a smooth migration of your Public Folders, it is necessary to set the quota size to be a higher value. This should be set on both the Source and Destination platforms. The migration will fail unless this is set prior to the actual migration.

These can be set via PowerShell scripts, or through the Exchange Management Console (or Office 365 Admin Portal).

Here is an example PowerShell script that was run against Office 365. The default Office 365 Public Folder quota setting is 2GB, with the issue warning set to 1.7GB. Therefore, this needs to be increased. In this example, we retrieved all the Public Folder settings by using the Get-OrganizationConfig command, and then set the new quota to be Unlimited, and set the issue warning to be set at Unlimited. These can be returned to the values of your choice post migration.

Note: After you apply these settings, wait at least 30 minutes before you start the migration. 

$UserCredential = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session
Get-OrganizationConfig | fl *DefaultPublicFolder*

Use the PowerShell script below to set the new quota to Unlimited:

Set-OrganizationConfig -DefaultPublicFolderProhibitPostQuota Unlimited

Use the PowerShell script below to set the issue warning to Unlimited:

Set-OrganizationConfig -DefaultPublicFolderIssueWarningQuota Unlimited

This PowerShell script will need to be run against Office 365, if migrating your Public Folders to Office 365.

Also run a similar PowerShell script against your Source environment in order to set higher quota levels at the Source, prior to the Public Folder migration, or set these via the Exchange Management console.

Follow these instructions to set these via the Exchange Management console:

Use the Limits tab to view or configure storage quotas, deleted item retention, and age limits for the Public Folder.

Storage quotas

  • Use database quota defaults. Select this checkbox to use the Public Folder database quota limits on which the Public Folder resides. If you clear this checkbox, the Issue warning at (KB), Prohibit post at (KB), and Maximum item size (KB) checkboxes are made available.
  • Issue warning at (KB). Select this checkbox to automatically warn Public Folder owners that the Public Folder is approaching its storage limit. To specify this limit, select the checkbox, and then specify the size of the Public Folder in kilobytes (KB) at which you want to prohibit posting.  Set the limit to your desired storage maximum, which must be greater than the amount of data to be migrated.
  • Prohibit post at (KB). Select this checkbox to prevent posting to the Public Folder after the size of the folder reaches the specified limit. To specify this limit, select the checkbox, and then specify the size of the Public Folder in KB at which you want to prohibit posting.  Set the limit to your desired storage maximum, which must be greater than the amount of data to be migrated.
  • Maximum item size (KB). Select this checkbox to limit the maximum size of items that users can post to the Public Folder. To specify the size, select the checkbox, and then specify the maximum size of items in KB that users can post to the Public Folders. Enter a value between 0 and 2,097,151KB.

Notes:

  • If there are Public Folders that are larger than 10GB, set the number of licenses to be consumed to a higher value, under Advanced Options. Refer to KB004890 for more information. For example, if the largest Public Folder is 33GB in size, then set this parameter to 4. This will allow up to 40GB of data to be migrated per Public Folder, since each Public Folder license allows up to 10GB of data to be migrated.
  • When setting the Advanced Option to a higher value, it will not mean that smaller Public Folder will consume any more licenses when they migrate. For example, a Public Folder that is 7GB in size will only consume one license.
  • It is highly recommended that any single public folders at the source be broken down into folders less then 20 GB in size before migrating. Folders larger then that can poorly impact migration speeds and bottleneck a migration from finishing.

 

Grant Root Level Permissions to Public Folders

In order to migrate public folders to or from Office 365, it is necessary to grant administrator account root-level permissions to public folders. To do this, perform the steps below: 

1. Log into the Office 365 admin account.

2. In the top-left corner, click on the grid icon.

3. Click on the gray Admin button to go to the admin center.

4. On the side bar, on the left-hand side, near the bottom, is the ADMIN button. Click on the arrow next to this button to expand the options.

5. Select the Exchange option.

6. Click on the Public Folders link in the lower-center of the resulting page.

7. Now there is a list of your public folders. Above the list, there is a row of icons. One of these icons consists of three dots. Click on the three dots, then select Root permissions from the resulting drop-down menu.

8. In the resulting window, click on the plus sign (+), click Browse, and then select the admin user that will be granted root-level permissions.

9. Select Owner from the drop-down.

10. Make sure all the boxes are checked.

11. Click Save to confirm the changes.

 

Configuring Office 365 Users to Allow Access to Public Folders

Once you have migrated both your Public Folders and mailboxes to Office 365, you need to complete this step, to ensure that your Office 365 users can access the migrated Public Folders.

Enable the Exchange online organization to access the Office 365 Public Folders. The following PowerShell script needs to be run against your Office 365 environment:

Set-OrganizationConfig -PublicFoldersEnabled Local -RemotePublicFolderMailboxes $null

Note: Read the How do I enable Office 365 users to access legacy on-premises Public Folders? article if you want to enable Office 365 users to access legacy On-Premises Public Folders.

 

Intra-organization Public Folder Migrations

There can only be one instance of a Public Folder in the same environment. Therefore, to migrate a public folder from one location to another within the same environment, the migration must take two steps, as outlined below.

  1. Set up the staging environment. This requires creating a new forest. 
    Note: Since this is only a temporary staging environment, only one server is required, which can hold the Global Catalog, act as the domain controller, and also have Exchange installed.
  2. Create the same users in the staging environment as in the production environment. ADMT is the recommended tool for this: https://connect.microsoft.com/site1164/program8540.
  3. Migrate Public Folders to the staging environment, by following the Public Folder Migration Guide (kb004927).
  4. Configure Outlook to show Public Folders from more than one Exchange account: https://technet.microsoft.com/en-us/library/ee815819.aspx
  5. Decommission the original Source Exchange Public Folders.
  6. Migrate from the staging environment to the new Exchange server, by following the instructions in the Public Folder Migration Guide (kb004927).
  7. Reconfigure Outlook so that it no longer shows Public Folders from the staging environment.
  8. Decommission the staging environment.

Notes:

  • Mapping permissions properly would require creating the same user accounts in the staging environment as in the production environment.
  • You should contact your Sales Account Executive when performing this migration. Since this is a double-hop migration, it will require twice the number of Public Folder migration licenses. Your Sales Account Executive will transfer the 'second' licenses into your MigrationWiz account to ensure that you are not charged twice for your migration. You only need to purchase licenses to cover the first hop.

 

Creating Hybrid Public Folders on Office 365

Note: This is not related to the Hybrid Exchange migration type. This deals specifically with a hybrid public folder migration, which is entirely different.

If you try to create any Public Folder mailboxes on Office 365 when hybrid mode has been set up, you will receive a 'HoldforMigration' error similar to the one pictured below. This is because the Office 365 Organization has the Public Folders configured as "Remote" so that users can access the On-Premises Public Folders. The error occurs because hybrid mode is expecting Microsoft tools to complete the migration.

hybrid PF.PNG

In order to proceed, follow the steps below. Once these steps have been completed, hybrid mode can be re-enabled. The steps to do this are also included below.

First, take a quick look at the root Public Folder mailbox, by running from the Exchange Online PowerShell: (Get-OrganizationConfig).rootpublicfoldermailbox |fl

You will see results similar to these:

RootPublicFolderMailbox.png

This picture shows that the root Public Folder mailbox is locked for migration. All other Public Folder mailboxes will also be unavailable.

Now look at the Organization Configuration, by running the following command from the same PowerShell: Get-OrganizationConfig |fl *public*

You will see results similar to these:

OrganizationConfig.png

The PublicFoldersEnabled attribute set to remote confirms that the Office 365 users are set to use the On-Premises Public Folders.

Note: Make a note of the RemotePublicFolderMailboxes value. You will need this later to allow access to the On-Premise Public Folders.

To resolve this issue, and to be able to create the Public Folders on Office 365:

  • Remove all the existing Public Folder mailboxes on Office 365, by running on the Exchange Online PowerShell: Get-Mailbox -PublicFolder |Remove-Mailbox -PublicFolder

    Note: It may be necessary to run the cmdlet twice because when there is more than one Public Folder mailbox, it is not possible to delete the primary mailbox before deleting the others.

    Warning: In a Hybrid scenario, where Public Folders are being used On-Premises, the Public Folder mailboxes on Office 365 should be empty and not have any relevant data. If unsure if the Public Folder mailboxes are empty, verify that they are empty before deleting them.
  • Once all the Public Folder Mailboxes are deleted from Office 365, change the Organization Configuration to use Public Folders on Office 365, by running on the Exchange Online PowerShell: Set-OrganizationConfig -PublicFoldersEnabled Local -RemotePublicFolderMailboxes $null

    Warning: This will break the connectivity to the On-Premises Public Folders for all users with a mailbox on Office 365. Plan a maintenance window.

Note: Do not create any public folders in O365 manually unless migrating more then 20 GB of data. Most will then be created via mapping scripts supplied by BitTitan Support. This is covered in your migration guide.

  • Now revert the Organization Configuration, and restore the access to the On-Premises Public Folders, by running: Set-OrganizationConfig -PublicFoldersEnabled Remote -RemotePublicFolderMailboxes <YourOnPremisesPFMailbox> 

This last change can take a while to apply. To make sure that the change applied, run the following cmdlet: Get-Mailbox <username> |fl *public*

defaultPFMBX.png

Once you are certain that the default Public Folder mailbox is the remote On-Premises one, inform the users that the access to the Public Folders has been restored. Again, this might take up to one hour, so plan carefully for the Public Folders downtime.

Finally, since the Organization Configuration on Office 365 has been changed, revisit the How do I enable Office 365 users to access legacy on-premises Public Folders? and run the script at the bottom to change the default public folder mailbox parameter to make sure that the MigrationWiz administrator on Office 365 has an Office 365 Public Folder mailbox as default.

 

Changing Primary Domain Type

Here are the steps to change the primary domain type in Office 365 from Authoritative to Internal Relay. These steps are important to follow when migrating Public Folders in hybrid mode.

  • Log in to the Office 365 admin portal as a Global Admin.
  • Launch Exchange Admin Center.
  • Under Mail Flow, select Accepted Domains.
  • Use the radio buttons to change the domain type. Choose Internal Relay: Email is delivered to recipients in this Exchange organization or relayed to an email server at another physical or logical location.

Here is a screenshot from the admin portal:

 Office 365

Note: There will be a warning about connectors. It is safe to dismiss this if you're only making this change to mail-enable your Public Folders.

Mail will now be successfully delivered.

 

Configuring Mail-Enabled Office 365 Public Folders

 The following remote PowerShell commands can be run to configure some or all mail-enabled Office 365 Public Folders to accept mail from external domains. This step is important during a Public Folder migration when running in hybrid mode after public folders have been mail enabled in the destination.

Get-PublicFolder -Identity "\PFAlias" | Add-PublicFolderClientPermission -User Anonymous -AccessRights CreateItems

or

Get-PublicFolder -Recurse -ResultSize Unlimited | ? {$_.MailEnabled -eq $True} | Add-PublicFolderClientPermission -User Anonymous -AccessRights CreateItems

Was this article helpful?
0 out of 0 found this helpful