バッチ移行を使用して、Exchange server のパブリック フォルダーを Exchange Online に移行する
適用先: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019
注:
ネイティブ移行方法では、Exchange Onlineで最大 100 個のターゲット パブリック フォルダー メールボックスをサポートします (ただし、移行後に最大 1000 個を作成できます)。各パブリック フォルダー メールボックスの最大容量は最大 100 GB です。 5 TB は、各ターゲット パブリック フォルダー メールボックスを最大 50% の容量で埋めるベスト プラクティスに従って、Exchange Onlineに移行できる最大推奨サイズです。
注:
この記事では、オンプレミスからExchange Onlineにパブリック フォルダーを移行する手順を示します。 パブリック フォルダーを Exchange Online から Exchange オンプレミスに移行または移動するためのネイティブ ツールがないことに注意してください。
Exchange Server のパブリック フォルダーを Exchange Online に移行するには、オンプレミスの環境で Exchange Server 2013 CU15 以降または Exchange Server 2016 CU4 以降を実行している必要があります。 パブリック フォルダーのバッチ移行は、Exchange Server 2019 のすべてのバージョンがサポートされています。
組織内に Exchange 2013 と Exchange 2016/2019 の両方のパブリック フォルダーが混在する環境で、それらのパブリック フォルダーをすべて Exchange Online に移動する場合は、この記事での手順を行うためには、Exchange 2013 サーバーには CU15 以降がインストールされている必要があります。
Exchange Server 2010 のパブリック フォルダーを Exchange Online に移行する手順の詳細については、「従来のパブリック フォルダーを Exchange Online に移行する」を参照してください。
始める前に把握しておくべき情報
移行する前にパブリック フォルダーに関するよくある質問を確認することを強くお勧めします。
Exchange Server 2013 CU15 以降または Exchange Server 2016 CU4 以降にアップグレードする場合は、Active Directory を準備する必要もあります。準備しないと、パブリック フォルダーの移行が失敗します。 この Active Directory を準備すると、関連するすべての PowerShell コマンドレットとパラメーターを使って移行を準備して実行できるようになります。 詳細については、「Active Directory とドメインを準備する」を参照してください。
Exchange Online で組織の管理役割グループのメンバーになっている必要があります。 この役割グループは、Microsoft 365、Office 365、または Exchange Online にサブスクライブした場合に割り当てられるアクセス許可とは異なるものです。 組織の管理役割グループを有効にする方法の詳細については、「役割グループの管理」を参照してください。
Exchange Server では、組織の管理役割グループまたはサーバーの管理 RBAC 役割グループのメンバーになっている必要があります。 詳細については、「役割グループにメンバーを追加する」をご覧ください。
組織に 25 GB よりも大きい単一のパブリック フォルダーがある場合は、パブリック フォルダ-の移行を始める前に、そのフォルダーからコンテンツを削除して小さくするか、そのパブリック フォルダーのコンテンツを分割して複数の小さなパブリック フォルダーにすることをお勧めします。 ここで引用されている 25 GB の制限はパブリック フォルダーにのみ適用され、問題のフォルダーに含まれる可能性のある子フォルダーまたはサブフォルダーには適用されません。 これらのオプションがいずれも実行できない場合、パブリック フォルダーを Exchange Online に移動しないことをお勧めします。 詳細については、「Exchange Online の制限」をご覧ください。
注:
Exchange Online の現在のパブリック フォルダーのクォータが 25 GB 未満の場合は、Set-OrganizationConfig コマンドレットを使用し、DefaultPublicFolderIssueWarningQuota パラメーターと DefaultPublicFolderProhibitPostQuota パラメーターを指定してクォータを大きくすることができます。
Microsoft 365、Office 365、および Exchange Online では、最大 1000 個のパブリック フォルダー メールボックスを作成できます。 ただし、Exchange Server からの移行では、パブリック フォルダーの最大 100 個のメールボックスがサポートされています。
ユーザーを Microsoft 365 または Office 365 に移行しようとしている場合は、パブリック フォルダーを移行する前にユーザーの移行を完了している必要があります。 詳細については、「複数のメール アカウントを Microsoft 365 または Office 365 に移行する方法」を参照してください。
1 つ以上の Exchange サーバー (パブリック フォルダー メールボックスのホストもしているサーバー) で MR プロキシを有効にする必要があります。 詳細については、「MRS プロキシ エンドポイントのリモート移動を有効にする」をご覧ください。
Exchange 管理センター (EAC) を使用して、この記事の移行手順を実行することはできません。 代わりに、Exchange サーバーで Exchange 管理シェルを使用する必要があります。 Exchange Online では、Exchange Online PowerShell を使用する必要があります。 詳細については、「Exchange Online PowerShell への接続」を参照してください。
この記事の内容にある移行スクリプトを実行するには、基本認証が有効になっているアカウントを使用する必要があります。 多要素認証 (MFA) を使用するアカウントは、現在サポートされていません。
削除済みのアイテムや削除済みのフォルダーの Exchange 2013 から Exchange Online への移行のスキップがサポートされています。 詳細については、Exchange チームのブログ記事「削除済みアイテム収集機能データなしでの最新のパブリック フォルダーの移行」をご覧ください。
すべてのパブリック フォルダーのデータを移行するには、単一の移行バッチを使用する必要があります。 Exchange では、パブリック フォルダーの移行には 1 つの移行バッチしか作成できません。 複数のパブリック フォルダーの移行バッチを同時に作成しようとした場合は、結果としてエラーが発生します。 また、移行バッチの状態が "完了" になると、ソース環境からのデータのコピーはできなくなることに注意してください。
パブリック フォルダーを Microsoft 365、Office 365、または Exchange Online に移行する場合、Outlook の PST エクスポート機能を使用しないことをお勧めします。 Exchange Online 内のパブリック フォルダー メールボックスの容量は、自動分割機能により管理されており、パブリック フォルダー メールボックスがサイズ クォータを超えると、この機能によって分割されます。 PST エクスポートを使ってパブリック フォルダーを移行すると、自動分割機能はパブリック フォルダー メールボックスの急激な容量増加に対処できなくなり、自動分割機能によってプライマリ メールボックスからデータが移動されるまで、最大で 2 週間待たなければならない場合があります。 パブリック フォルダーを移行するには、この記事に記載されたコマンドレット ベースの手順を代わりに使用することをお勧めします。 PST エクスポートを使用してパブリック フォルダーを移行する場合は、この記事の後半の「Outlook PST エクスポートを使用してパブリック フォルダーをOffice 365に移行する」を参照してください。
DefaultPublicFolderAgeLimit がorganization レベル (
Get-OrganizationConfig | Format-List DefaultPublicFolderAgeLimit
) で構成されているか、個々のパブリック フォルダーに対して AgeLimit (Get-PublicFolder <FolderPath> | Format-List AgeLimit
) が構成されているかどうかを確認して、コンテンツの自動削除を防止します。開始する前に、この記事全体を読んでください。 ダウンタイムが必要になる手順があります。 このダウンタイム中、パブリック フォルダーには誰もアクセスできません。 既知の問題の一覧も確認してください。 また、移行の計画を立てるには、パブリック フォルダーの移行に関するベスト プラクティスをお読みください。
ヒント
問題がある場合は、 Exchange のフォーラムで質問してください。 Exchange ServerまたはExchange Onlineのフォーラムにアクセスします。
手順 1: 移行スクリプトをダウンロードする
Exchange 2013/2016/2019 パブリック フォルダーの移行スクリプトおよび Microsoft 365 または Office 365 事前移行スプリクトへの Exchange 2010/2013/2016/EXO パブリック フォルダーですべてのスクリプトとサポートするファイルをダウンロードできます。
PowerShell を実行するローカル コンピューターにスクリプトを保存します。 たとえば C:\PFScripts などです。 すべてのスクリプトは同じ場所に保存する必要があります。
ダウンロードするスクリプトとファイルは次のとおりです。
SourceSideValidations.ps1
: ソース側検証スクリプトは、ソースにあるパブリック フォルダーをスキャンし、検出された問題と、問題を解決するために必要なアクションを報告します。 このスクリプトは、オンプレミスの Exchange サーバーで実行します。Sync-ModernMailPublicFolders.ps1
このスクリプトは、Exchange オンプレミス環境と Microsoft 365 または Office 365 との間で、メールが有効なパブリック フォルダー オブジェクトを同期します。 このスクリプトは、オンプレミスの Exchange サーバーで実行します。SyncModernMailPublicFolders.strings.psd1
このサポート ファイルは Sync-ModernMailPublicFolders.ps1 スクリプトが使用します。同じ場所にダウンロードする必要があります。Export-ModernPublicFolderStatistics.ps1
このスクリプトは、フォルダー名からフォルダー サイズと削除済みのアイテム サイズへのマッピング ファイルを作成します。 このスクリプトは、オンプレミスの Exchange サーバーで実行します。Export-ModernPublicFolderStatistics.strings.psd1
このサポート ファイルは Export-ModernPublicFolderStatistics.ps1 スクリプトが使用します。同じ場所にダウンロードする必要があります。ModernPublicFolderToMailboxMapGenerator.ps1
このスクリプトは、Export-ModernPublicFolderStatistics.ps1 スクリプトからの出力を使用して、パブリック フォルダーからメールボックスへのマッピング ファイルを作成します。 このスクリプトは、オンプレミスの Exchange サーバーで実行します。ModernPublicFolderToMailboxMapGenerator.strings.psd1
このサポート ファイルは ModernPublicFolderToMailboxMapGenerator.ps1 スクリプトが使用します。同じ場所にダウンロードする必要があります。SetMailPublicFolderExternalAddress.ps1
このスクリプトは、オンプレミス環境内のメールが有効なパブリック フォルダーのExternalEmailAddress
を、Exchange Online の対応するものに更新します。この更新により、移行後に、メールが有効なパブリック フォルダー宛てのメールが適切に Exchange Online にルーティングされるようになります。 このスクリプトは、オンプレミスの Exchange サーバーで実行する必要があります。SetMailPublicFolderExternalAddress.strings.psd1
このサポート ファイルは Create-PublicFolderMailboxesForMigration.ps1 スクリプトで使用されます。同じ場所にダウンロードする必要があります。
手順 2: 移行の準備
注:
オンプレミスの Exchange メールボックス サーバーでソース側の検証スクリプトを実行することを強くお勧めします。 このスクリプトは、移行に時間がかかる原因として知られている問題を、これらの問題を修正するためのガイダンスに沿ってスキャンして報告します。 このスクリプトは、以下の前提条件をすべて実行します。
パブリック フォルダーの移行を始める前に、次のセクションの前提条件となる手順をすべて実行します。
前提条件となる手順の概要
移行を成功させるには、次の手順を実行する必要があります。
Active Directory 内に孤立したパブリック フォルダー メール オブジェクトが存在しないことを確認します。 孤立したオブジェクトとは、対応する Exchange オブジェクトがない Active Directory 内のオブジェクトのことです。
Active Directory 内のパブリック フォルダー用に構成された SMTP メール アドレスが、Exchange オブジェクトの SMTP メール アドレスと一致することを確認します。
Active Directory 内に重複するパブリック フォルダー オブジェクトがないことを確認します。 この手順は、複数の Active Directory オブジェクトが、メールが有効な同一のパブリック フォルダーを指す状況を回避するために必要です。
オンプレミスの Exchange 2013、Exchange 2016、または Exchange 2019 サーバー環境での前提条件となる手順
Exchange 管理シェル (オンプレミス) で、次の手順を実行します。
移行が完了すると、インターネット経由の DNS キャッシュが、Exchange Onlineの新しい場所にあるメールが有効なパブリック フォルダーにメッセージを送信するまでに時間がかかります。 この DNS の切り替えが行われている間に、既知の名前の承認済みドメインを作成して、移行したばかりのメールが有効なパブリック フォルダーがメッセージを受信することを確認できます。 確認するには、Exchange オンプレミス環境で次のコマンドを実行します。 この例で、
target domain
は Microsoft 365、Office 365、または Exchange Online のドメインで、ハイブリッド構成ウィザードにより送信コネクタが既に構成済みです。New-AcceptedDomain -Name PublicFolderDestination_78c0b207_5ad2_4fee_8cb9_f373175b3f99 -DomainName <target domain> -DomainType InternalRelay
例:
New-AcceptedDomain -Name PublicFolderDestination_78c0b207_5ad2_4fee_8cb9_f373175b3f99 -DomainName "contoso.mail.onmicrosoft.com" -DomainType InternalRelay
オンプレミスの環境に承認済みドメインが既にある場合は、名前を
PublicFolderDestination_78c0b207_5ad2_4fee_8cb9_f373175b3f99
に変更し、その他の属性はそのまま保持します。オンプレミスの環境に承認済みドメインが既にあるかどうか確認するには、次のように実行します。
Get-AcceptedDomain | Where {$_.DomainName -eq "<target domain>"}
承認済みドメインの名前を
PublicFolderDestination_78c0b207_5ad2_4fee_8cb9_f373175b3f99
に変更するには、次のように実行します。Get-AcceptedDomain | Where {$_.DomainName -eq "<target domain>"} | Set-AcceptedDomain -Name PublicFolderDestination_78c0b207_5ad2_4fee_8cb9_f373175b3f99
注:
Exchange Online 内のメールが有効なパブリック フォルダーがインターネットから外部のメールを受信することを想定している場合は、Exchange Online と Exchange Online Protection (EOP) で Directory Based Edge Blocking (DBEB) を無効にする必要があります。 詳細については、「ディレクトリ ベースのエッジ ブロックを使用して無効な受信者に送信されたメッセージを拒否する」をご覧ください。
パブリック フォルダーの名前にバックスラッシュ \ かスラッシュ / が含まれていると、移行プロセス中に指定のメールボックスに移行されない可能性があります。 移行する前に、このようなフォルダーの名前を変更して、これらの文字を削除してください。
a. パブリック フォルダー名にバックスラッシュが含まれているパブリック フォルダーを配置するには、次のコマンドを実行します。
Get-PublicFolder -Recurse -ResultSize Unlimited | Where {$_.Name -like "*\*" -or $_.Name -like "*/*"} | Format-List Name, Identity, EntryId
b. パブリック フォルダーが戻された場合、次のコマンドを実行して名前を変更します。
Set-PublicFolder -Identity "<public folder EntryId>" -Name "<new public folder name>"
(この手順は、何らかの理由で以前の移行の試行をやり直している場合にのみ必要です。そうでない場合は、次の手順に進んでください)。次のコマンドレットを実行して、organizationに以前に成功した移行のレコードがないことを確認します。 以前に成功した移行の記録がある場合は、その値を
$false
に設定する必要があります。値を変更する前に、誤って 2 回目の移行を実行しないように、以前に試みた移行を破棄できるか確認してください。
a. 次のコマンドを実行して、以前に行われた移行と、それらの移行の状態を確認します。
Get-OrganizationConfig | Format-List PublicFolderMailboxesLockedForNewConnections, PublicFolderMailboxesMigrationComplete
b. 返された出力で、上記のいずれかの値の設定が
$true
になっている場合は、次のコマンドを実行して$false
にします。Set-OrganizationConfig -PublicFolderMailboxesLockedForNewConnections:$false -PublicFolderMailboxesMigrationComplete:$false
完了時に移行が成功したことを確認するために、すべての適切な Exchange 2016 または Exchange 2019 サーバーで次のコマンドを実行することをお勧めします。 現在のパブリック フォルダーの展開のスナップショットが取得されるので、後でこのスナップショットを使用して、移行したばかりのパブリック フォルダーと比較できます。
注:
Exchange 組織のサイズによっては、これらのコマンドの実行に時間がかかる可能性があります。
移行元のフォルダー構造のスナップショットを取得するには、次のコマンドを実行します。
Get-PublicFolder -Recurse -ResultSize Unlimited | Export-CliXML OnPrem_PFStructure.xml
アイテム数、サイズ、所有者などのパブリック フォルダーの統計情報のスナップショットを取得するには、次のコマンドを実行します。
Get-PublicFolderStatistics -ResultSize Unlimited | Export-CliXML OnPrem_PFStatistics.xml
パブリック フォルダーのアクセス許可のスナップショットを取得するには、次のコマンドを実行します。
Get-PublicFolder -Recurse -ResultSize Unlimited | Get-PublicFolderClientPermission | Select-Object Identity,User,AccessRights -ExpandProperty AccessRights | Export-CliXML OnPrem_PFPerms.xml
メールが有効なパブリック フォルダーのスナップショットを取得するには、次のコマンドを実行します。
Get-MailPublicFolder -ResultSize Unlimited | Export-CliXML OnPrem_MEPF.xml
移行が終了した時点で比較するために、先に実行したコマンドで生成されたファイルを安全な場所に保存します。
Microsoft Entra Connect (Microsoft Entra Connect) を使用してオンプレミスのディレクトリを Microsoft Entra ID と同期する場合は、次の操作を行う必要があります (Microsoft Entra Connect を使用していない場合は、この手順をスキップできます)。
オンプレミス コンピューターで、[接続] Microsoft Entra開き、[構成] を選択します。
[追加のタスク] 画面で、 [同期オプションのカスタマイズ] を選択し、 [次へ] をクリックします。
[Microsoft Entra IDに接続] 画面で、適切な資格情報を入力し、[次へ] をクリックします。 接続したら、[オプションの機能] 画面が表示されるまで [次へ] をクリックし続けます。
[Exchange メール パブリック フォルダー] が選択されていないことを確認します。 選択されていない場合には、次のセクションの「Exchange Online の事前に必要な手順」に進むことができます。 選択されている場合には、クリックしてチェック ボックスをオフにし、[次へ] をクリックします。
注:
[オプション機能] 画面にオプションとして Exchange メール パブリック フォルダーが表示されない場合は、接続Microsoft Entra終了し、次のセクション「Exchange Onlineの前提条件の手順」に進むことができます。
[Exchange メール パブリック フォルダー] の選択を解除した後、[構成の準備完了] 画面が表示されるまで [次へ] をクリックし、[構成] をクリックします。
Exchange Online での前提となる手順
Exchange Online PowerShell で、次の手順を実行します。
既存のパブリック フォルダーの移行要求がないことを確認します。 要求がある場合、その要求をクリアしないと、自身が行っている移行要求が失敗します。 この手順は、パイプラインに既存の移行要求 (失敗した要求や中止しようとしている要求) が存在している可能性がある場合にのみ必要です。
次の例では、既存のバッチ移行要求を検出します。
Get-MigrationBatch | ?{$_.MigrationType.ToString() -eq "PublicFolder"}
次の例では、既存のパブリック フォルダーのバッチ移行要求を削除します。
Remove-MigrationBatch <name of migration batch> -Confirm:$false
Exchange Online に既存のパブリック フォルダーやパブリック フォルダー メールボックスがないことを確認します。 以下の手順に従ってExchange Onlineでパブリック フォルダーを検出する場合は、パブリック フォルダーとパブリック フォルダー メールボックスの削除を開始する前に、そのフォルダーが存在する理由と、organizationでパブリック フォルダー階層を開始したユーザーを特定することが重要です。
a. PowerShell Exchange Onlineで、次のコマンドを実行して、パブリック フォルダーメールボックスが存在するかどうかを確認します。
Get-Mailbox -PublicFolder
b. コマンドを実行しても、パブリック フォルダー メールバックスが返されない場合は、「手順 3: .csv ファイルを生成する」に進んでください。 上記のコマンドによってパブリック フォルダー メールボックスが返される場合は、次のコマンドを実行して、パブリック フォルダーが存在するかどうかを確認します。
Get-PublicFolder -Recurse
Microsoft 365 または Office 365 または Exchange Online にパブリック フォルダーがある場合は、次の PowerShell コマンドを実行して削除します (不要であることを確認した後)。 パブリック フォルダーを削除すると、すべての情報が完全に削除されるため、これらのパブリック フォルダー内の情報を削除する前に保存していることを確認します。
Get-MailPublicFolder -ResultSize Unlimited | where {$_.EntryId -ne $null}| Disable-MailPublicFolder -Confirm:$false Get-PublicFolder -GetChildren \ -ResultSize Unlimited | Remove-PublicFolder -Recurse -Confirm:$false
パブリック フォルダ-を削除した後、次のコマンドを実行して、パブリック フォルダー メールボックスをすべて削除します。
$hierarchyMailboxGuid = $(Get-OrganizationConfig).RootPublicFolderMailbox.HierarchyMailboxGuid Get-Mailbox -PublicFolder | Where-Object {$_.ExchangeGuid -ne $hierarchyMailboxGuid} | Remove-Mailbox -PublicFolder -Confirm:$false -Force Get-Mailbox -PublicFolder | Where-Object {$_.ExchangeGuid -eq $hierarchyMailboxGuid} | Remove-Mailbox -PublicFolder -Confirm:$false -Force Get-Mailbox -PublicFolder -SoftDeletedMailbox | % {Remove-Mailbox -PublicFolder $_.PrimarySmtpAddress -PermanentlyDelete:$true -force -Confirm:$false} $soft=Get-Mailbox -PublicFolder -SoftDeletedMailbox; foreach ($mbx in $soft){if ($mbx.Name -like "*CNF:*" -or $mbx.identity -like "*CNF:*") {Remove-Mailbox -PublicFolder $mbx.ExchangeGUID.GUID -RemoveCNFPublicFolderMailboxPermanently -Force -Confirm:$false}}
上記のコマンド ブロックを 5 分から 10 分間隔で繰り返して、SoftDeletedMailboxes がクリアされ、CNF オブジェクトが残されていないことを確認します。
注:
上記のコマンド ブロックは、"オブジェクト <MailboxName> が見つからなかったため、操作を実行できませんでした" のようなエラーを返す場合があります。これは、AD レプリケーションの待機時間のために無視しても問題ありません。
次のコマンドをもう一度実行して、SoftDeleted メールボックスまたは CNF メールボックスが残されていないことを確認します。
Get-Mailbox -PublicFolder -SoftDeletedMailbox
論理的に削除されたメールボックスの一覧が表示される場合は、手順 4 のコマンド ブロックを繰り返します。それ以外の場合は次の手順に進みます
手順 3: .csv ファイルを生成する
以前にダウンロードしたスクリプトを使用して、移行に使用する .csv ファイルを生成します。
Exchange 管理シェル (オンプレミス) から
Export-ModernPublicFolderStatistics.ps1
スクリプトを実行して、フォルダー名からフォルダー サイズへのマッピング ファイルを作成します。 このスクリプトを実行するには、ローカル管理者のアクセス許可が必要です。 結果のファイルには、 FolderName、 FolderSize、 DeletedItemSize の 3 つの列が含まれます。 FolderSize 列と DeletedItemSize 列の値はバイト単位で表示されます。 たとえば、\PublicFolder01,10240, 100 は、階層のルート内にある PublicFolder01 という名前のパブリック フォルダーのサイズが 10240 バイト (10 KB) で、このフォルダー内に 100 バイトの回復可能なアイテムがあることを意味しています。.\Export-ModernPublicFolderStatistics.ps1 <Folder-to-size map path>
例:
.\Export-ModernPublicFolderStatistics.ps1 stats.csv
ModernPublicFolderToMailboxMapGenerator.ps1
スクリプトを実行して、ソース パブリック フォルダーをExchange Online宛先のパブリック フォルダー メールボックスにマップする .csv ファイルを作成します。 このファイルは、Exchange Online のパブリック フォルダー メールボックスの適正数を計算するために使用されます。
ModernPublicFolderToMailboxMapGenerator.ps1
によって生成されたファイルには、organization内のすべてのパブリック フォルダーの名前は含まれません。 これには、大きなフォルダー ツリーの親フォルダーへの参照、またはそれ自体が大幅に大きいフォルダーの名前への参照が含まれています。 このファイルは、特定のフォルダー ツリーや大きなフォルダーが特定のパブリック フォルダー メールボックスに配置されるようにするために使用する "例外" ファイルと見なすことができます。 通常、このファイル内のすべてのパブリック フォルダーが表示されるわけではありません。 このマッピング ファイルに一覧表示されているフォルダーの子フォルダーも、親フォルダーと同じパブリック フォルダー メールボックスに移行されます。ただし、マッピング ファイル内の別の行で、別のパブリック フォルダー メールボックスに送るよう明示的に示されている場合は異なります。
.\ModernPublicFolderToMailboxMapGenerator.ps1 <Maximum mailbox size in bytes><Maximum mailbox recoverable item size in bytes><Folder-to-size map path><Folder-to-mailbox map path>
Maximum mailbox size in bytes
は、Exchange Online の単一のパブリック フォルダー メールボックスに移行しようとしているデータの最大量です。 このフィールドの最大サイズは現在 100 GB ですが、将来拡張できるように、最大サイズの 50% などの小さめのサイズを使用することをお勧めします。Maximum mailbox recoverable items size in bytes
は、Exchange Online メールボックス上の回復可能なアイテムのクォータです。 Exchange Online のパブリック フォルダー メールボックスの最大サイズは現在 100 GB です。 RecoverableItemsQuota を 15 GB 以下に設定することをお勧めします。Folder-to-size map path
は、Export-ModernPublicFolderStatistics.ps1
スクリプトの実行時に作成された .csv ファイルのファイル パスです。Folder-to-mailbox map path
は、この手順で作成するフォルダーからメールボックスへの .csv ファイルのファイル パスです。 ファイル名のみを指定した場合、ファイルはローカル コンピューターの現在の PowerShell ディレクトリに生成されます。
例:
.\ModernPublicFolderToMailboxMapGenerator.ps1 -MailboxSize 50GB -MailboxRecoverableItemSize 1GB -ImportFile .\stats.csv -ExportFile map.csv
注:
スクリプトが生成する map.csv には、次の手順で EXO に作成される対象のパブリック フォルダー メールボックス向けの一般的な名前が使用されています (例: Mailbox1、Mailbox2)。 組織の名前付けポリシーに合わせて、map.csv でパブリック フォルダー メールボックス名を変更することをお勧めします。 また、社内組織に一般的な名前と一致するメールボックスがすでに存在する場合は、map.csv を編集して、Exchange Online でターゲットとなるパブリック フォルダー メールボックスに一意の名前を付ける必要があります。 メモ帳などのエディターで、map.csv に含まれる TargetMailbox 名を編集します。
注:
Exchange Online に 100 個以上の一意のパブリック フォルダー メールボックスがある場合は、パブリック フォルダー の Exchange Online への移行はサポートされていません。 移行時には、最大 100 個のパブリック フォルダー メールボックスを有効にすることができます。
手順 4: Exchange Online でパブリック フォルダー メールボックスを作成する
次に、PowerShell Exchange Onlineで、移行したパブリック フォルダーを含むターゲット パブリック フォルダー メールボックスを作成します。
次のスクリプトを実行し、ターゲットのパブリック フォルダー メールボックスを作成します。 スクリプトは、「手順 3: ModernPublicFoldertoMailboxMapGenerator.ps1
スクリプトを実行したときに、.csv ファイルを生成する」で前に生成した .csv ファイル内の各メールボックスのターゲット メールボックスを作成します。
$mappings = Import-Csv <Folder-to-mailbox map path>
$primaryMailboxName = ($mappings | Where-Object FolderPath -eq "\" ).TargetMailbox;
New-Mailbox -HoldForMigration:$true -PublicFolder -IsExcludedFromServingHierarchy:$false $primaryMailboxName
($mappings | Where-Object TargetMailbox -ne $primaryMailboxName).TargetMailbox | Sort-Object -unique | ForEach-Object { New-Mailbox -PublicFolder -IsExcludedFromServingHierarchy:$false $_ }
Folder-to-mailbox map path
は、ModernPublicFoldertoMailboxMapGenerator.ps1
スクリプトで生成された、フォルダーからメールボックスへのマッピング .csv ファイル (「手順 3: .csv ファイルを生成する」で生成されたファイル) のファイル パスです。
手順 5: 移行要求を開始する
この手順では、Exchange Server オンプレミス環境と Exchange Online の両方で、いくつかのコマンドを実行する必要があります。
パブリック フォルダー メールボックスをホストしている Exchange 2016 サーバーまたは Exchange 2019 サーバーから、次のスクリプトを実行します。 このスクリプトは、メールが有効なパブリック フォルダーをローカル Active Directory からExchange Onlineに同期します。 このスクリプトの最新バージョンをダウンロードしていること、および Exchange Management Shell から実行していることを確認します。
.\Sync-ModernMailPublicFolders.ps1 -CsvSummaryFile:sync_summary.csv
-
CsvSummaryFile
は、同期操作やエラーのログ ファイルの置き場所へのファイル パスです。 ログは .csv 形式になります。
注:
Sync-ModernMailPublicFolders.ps1
スクリプト中にエラーが発生した場合は、MEPF スクリプトのトラブルシューティングの同期を使用します。-
Exchange Online PowerShell では、Exchange 2013、Exchange 2016、または Exchange 2019 のオンプレミス環境で管理者のアクセス許可を持つユーザーの資格情報を変数
$Source_Credential
に渡します。 Exchange Online で実行する移行要求では、この資格情報を使って、パブリック フォルダーのコンテンツを Exchange Online にコピーするためにオンプレミスの Exchange サーバーにアクセスします。$Source_Credential = Get-Credential <source_domain>\<PublicFolder_Administrator_Account>
PowerShell Exchange Onlineで、Exchange メールボックス レプリケーション サービス (MRS) のインターネット ルーティング可能な完全修飾ドメイン名を変数
$Source_RemoteServer
に渡します。 Exchange Online で実行する移行要求では、このリモート サーバーを使用して、パブリック フォルダーのコンテンツを Exchange Online にコピーします。$Source_RemoteServer = "<MRS proxy endpoint server>"
オンプレミスの Exchange サーバーで、Exchange 管理シェルを開き、次のコマンドでプライマリ階層メールボックスの GUID を検索します。
(Get-OrganizationConfig).RootPublicFolderMailbox.HierarchyMailboxGuid.GUID
このコマンドの出力に注意してください。 次の手順で使用します。 次に例を示します。
91edc6dd-478a-497c-8731-b0b793f5a986
注:
前のコマンドで説明したパブリック フォルダー メールボックス GUID は、オンプレミス サーバーから取得する必要があります。Exchange Onlineから取得した場合、移行バッチは一時的なエラーで失敗します。
Exchange Online PowerShell で、次のコマンドを実行して、パブリック フォルダー移行エンドポイントとパブリック フォルダー移行要求を作成します。
$bytes = [System.IO.File]::ReadAllBytes('folder_mapping.csv') $PfEndpoint = New-MigrationEndpoint -PublicFolder -Name PublicFolderEndpoint -RemoteServer $Source_RemoteServer -Credentials $Source_Credential New-MigrationBatch -Name PublicFolderMigration -CSVData $bytes -SourceEndpoint $PfEndpoint.Identity -SourcePfPrimaryMailboxGuid <guid you noted from previous step> -NotificationEmails <email addresses for migration notifications>
ここで、
folder_mapping.csv
は手順 3: .csv ファイルを生成するで生成されたマップ ファイル、HierarchyMailboxGUID
は前の手順でメモされた出力です。 完全なファイル パスをfolder_mapping.csv
に指定していることを確認します。 何らかの理由でマップ ファイルを移動した場合は、新しい場所を使用していることを確認します。複数のメール アドレスは、コンマで区切って指定します。
注:
上記のコマンドが失敗し、EXO のパブリック フォルダー メールボックスに関する GUID が記載された "メールボックス GUID を持つ受信者を見つけることができません" というエラーが表示されることがあります。 これは、AD レプリケーションの待機時間が原因で発生する可能性があります。 このような場合は、1 時間待ってからコマンドをもう一度やり直してください。
最後に Exchange Online PowerShell で次のコマンドを使用し、移行を開始します。
Start-MigrationBatch PublicFolderMigration
バッチ移行は Exchange Online PowerShell で New-MigrationBatch
コマンドレットを使用して作成する必要がありますが、移行の進行と完了は EAC で、または Get-MigrationBatch コマンドレットを実行することで表示および管理することができます。
New-MigrationBatch
コマンドレットは、各パブリック フォルダー メールボックスのメールボックス移行要求を開始するので、メールボックスの移行ページを使用してこれらの要求の状態を表示することができます。
メールボックス移行ページにアクセスするには、次のようにします。
Exchange Online にログオンし、EAC を開きます。
[受信者] に移動してから、 [移行] を選択します。
作成したばかりの移行要求を選択して、 [詳細] ウィンドウの [詳細の表示] を選択します。
手順 6: Exchange オンプレミス サーバー上のパブリック フォルダーをロックダウンする前に、すべてのデータがコピーされていること、および移行にエラーがないことを確認します。 バッチが同期済みの状態に移行したことを確認したら、Exchange Server オンプレミス環境での前提条件の最後の手順で「手順 2: 移行の準備」に言及されたコマンドを実行して、オンプレミスのパブリック フォルダーのスナップショットを撮影します。
これらのコマンドを実行し終えたら、次の手順に進むことができます。 対象フォルダーの数によっては、これらのコマンドが完了するまでにしばらく時間がかかることがあるのでご注意ください。 移行プロセスでは、ソース (オンプレミス) 環境のデータが 24 時間ごとに同期されます。
移行を監視するには、次のコマンドレットを使用できます。
手順 6: オンプレミスの Exchange サーバーでパブリック フォルダーをロック ダウンする (パブリック フォルダーのダウンタイムが必要)
移行プロセスのこの時点まで、ユーザーはオンプレミスのパブリック フォルダーにアクセスできました。 次の手順では、移行プロセスが最終的な同期を完了すると、ユーザー Exchange Serverパブリック フォルダーからログオフし、フォルダーをロックします。 この間、ユーザーはパブリック フォルダーにアクセスできず、これらのメールが有効なパブリック フォルダーに送信されたメッセージはキューに入れられ、パブリック フォルダーの移行が完了するまで配信不能のままです。
注:
最終的な同期には、ソース環境に行った変更、パブリック フォルダー展開のサイズ、サーバーの容量などによって、かなりの時間がかかる場合があります。 フォルダー階層に多くの破損した ACL があり、それが移行前にクリーン アップされていない場合は、完了までに大幅な遅れが生じる場合があります。 最終的な同期が完了するまで、少なくとも 48 時間のダウンタイムを計画しておくことをお勧めします。
移行バッチと個々の移行要求が正常に同期されていることを確認します。
詳細については、EXO PowerShell で次のコマンドを実行します。
Get-MigrationBatch |?{$_.MigrationType -like "*PublicFolder*"} | ft *last*sync*
Get-PublicFolderMailboxMigrationRequest | Get-PublicFolderMailboxMigrationRequestStatistics |ft targetmailbox,*last*sync*
LastSyncedDate (移行バッチの場合) と LastSuccessfulSyncTimestamp (個々のジョブの場合) は、過去 7 日以内である必要があります。 1 か月以上前など、あまりにも過去の日付になっている場合は、パブリック フォルダーの移行要求を確認して、すべての要求が最近同期されたことを確認する必要があります。
この時点で、新しいメールが有効なパブリック フォルダーがExchange Onlineと同期されるように、次のスクリプトを再実行することをお勧めします。
.\Sync-ModernMailPublicFolders.ps1 -CsvSummaryFile:sync_summary.csv
バッチとすべての移行要求が正常に同期したことを確認した後、オンプレミス環境で、次のコマンドを実行して終了処理のために Exchange Server パブリック フォルダーをロックします。
Set-OrganizationConfig -PublicFolderMailboxesLockedForNewConnections $true
注:
-PublicFolderMailboxesLockedForNewConnections
パラメーターにアクセスできない場合は、「開始する前に何を知る必要がありますか」で前述したように、CU アップグレード中に Active Directory が準備されなかった可能性があります。詳細については、「Active Directory とドメインの準備」を参照してください。 パブリック フォルダー自体を移行する前に、そのパブリック フォルダーへのアクセスを必要とするユーザーを最初に移行する必要があることにもご注意ください。
組織の複数の Exchange サーバーにパブリック フォルダー メールボックスがある場合、Active Directory のレプリケーションが完了するまで待つ必要が生じます。 完了したら、すべてのパブリック フォルダー メールボックスの PublicFolderMailboxesLockedForNewConnections
フラグが採用されたことと、ユーザーが最近パブリック フォルダーに加えた保留中の変更が組織全体で収束したことを確認できます。 これらのすべてには数時間かかることがあります。
オンプレミス環境で次のコマンドを実行し、パブリック フォルダーがロックされていることを確認します。
Get-PublicFolder \
パブリック フォルダーがロックされている場合、予期される結果は以下のとおりです。
Couldn't find the public folder mailbox. + CategoryInfo : NotSpecified: (:) [Get-PublicFolder], ObjectNotFoundException
手順 7:パブリック フォルダーの移行の終了処理をする (パブリック フォルダーのダウンタイムが必要)
パブリック フォルダーの移行が完了する前に、以下の項目をチェックする必要があります。
オンプレミスの Exchange 環境で他のパブリック フォルダー メールボックスの移動やパブリック フォルダーの移動が行われていないことを確認します。 これを行うには、Get-MoveRequest および Get-PublicFolderMoveRequest コマンドレットを使用して、既存のパブリック フォルダーの移動を表示します。 進行中の移動がある場合、または [完了] 状態の場合は、移動を削除します。
お使いの環境に複数の Active Directory ドメインがある場合は、「 アクティブなパブリック フォルダー メールボックスが見つかりませんでした」の手順を確認してください。エラーが発生し、完了を開始する前 Complete-MigrationBatch コマンドで移行バッチが失敗 します。
パブリック フォルダーの移行を完了するには、Exchange Online PowerShell で次のコマンドを実行します。
Complete-MigrationBatch PublicFolderMigration
重要
移行バッチが完了した後は、オンプレミスの Exchange サーバーと Exchange Online で追加データを同期させることはできません。
Complete-MigrationBatch PublicFolderMigration
を実行すると、Exchange は Exchange のオンプレミスの組織と Exchange Online の間での最終的な同期を実行します。 この間に、移行バッチの状態は 同期済みから 完了処理中に変わり、最終的に 完了に変わります。 最終的な同期が成功すると、Exchange Online のパブリック フォルダーのロックが解除されます。 ただし、パブリック フォルダーをユーザーに公開する前に、この記事の手順 8 と手順 9 を完了しておくことを強くお勧めします。
移行バッチの状態は、[完了] に切り替わる前に数時間 [同期済み] のままになるのが一般的です。 多数のターゲット メールボックスを含む移行の場合、基になるパブリック フォルダーの移行の要求が失敗または検疫されていない限り、状態は 24 時間以上 [同期済み] 状態のままです。
手順 8:Exchange Online のパブリック フォルダーをテストしてロックを解除する
パブリック フォルダーの移行を完了した後、次の手順を実行して、移行が成功したかテストし、完了したことを正式に確認します。 この最後のタスクにより、移行したパブリック フォルダー階層をテストしてから、Exchange Online のパブリック フォルダーを使用するように組織を完全に切り替えることができるようになります。
Exchange Online PowerShell で、次のようにテスト ユーザー メールボックスを構成して、移行したばかりのパブリック フォルダー メールボックスのいずれかを既定のパブリック フォルダー メールボックスとして使用するようにします。
Set-Mailbox -Identity <test user> -DefaultPublicFolderMailbox <public folder mailbox identity>
パブリック フォルダーの作成に必要なアクセス許可が、テスト ユーザーにあることを確認します。
前の手順で指定したテスト ユーザーを使って Outlook にログオンし、次のパブリック フォルダー テストを実行します。 変更が反映されるまで 15 分から 30 分かかる場合があることにご注意ください。 Outlook で変更が認識されると、再起動を求めるダイアログが何回か表示される場合があります。
a. 階層の表示
b. アクセス許可を確認します。
c. パブリック フォルダーの作成と削除
d. パブリック フォルダーに対する内容の追加と削除
問題が発生し、組織のパブリック フォルダー全体を Exchange Online に切り替える準備ができていないと判断した場合は、「Exchange Server から Exchange Online へのパブリック フォルダーの移行のロール バック」を参照してください。
Exchange Online PowerShell で次のコマンドを実行し、Exchange Online 内のパブリック フォルダーのロックを解除します。 コマンドを実行してから変更が反映されるまでに約 15 分から 30 分かかる場合があります。 Outlook で変更が認識されると、ユーザーに Outlook の再起動を求めるダイアログが何回か表示される場合があります。
Set-OrganizationConfig -RemotePublicFolderMailboxes $Null -PublicFoldersEnabled Local
手順 9:オンプレミスでの移行の終了処理を行う
メールが有効なパブリック フォルダーに対するメールをオンプレミスで有効にするには、次の手順を実行します。
オンプレミス環境で以下のコマンドを実行すると、メールが有効なパブリック フォルダーに送信されたキューに入ったメールのバックアップを取得することができます。 このバックアップは、メールが有効なパブリック フォルダーへのメール配信が何らかの理由で失敗したシナリオで使用できます。
$Server=Get-TransportService;ForEach ($t in $server) {Get-Message -Server $t -ResultSize Unlimited| ?{$_.Recipients -like "*PF.InTransit*"} | ForEach-Object {Suspend-Message $_.Identity -Confirm:$False; $Temp="C:\ExportFolder\"+$_.InternetMessageID+".eml"; $Temp=$Temp.Replace("<","_"); $Temp=$Temp.Replace(">","_"); Export-Message $_.Identity | AssembleMessage -Path $Temp;Resume-message $_.Identity -Confirm:$false}}
オンプレミスの環境で、次のスクリプトを実行し、メールが有効なパブリック フォルダーに対するすべてのメールが Exchange Online に正しくルーティングされることを確認します。 このスクリプトでは、メールが有効なパブリック フォルダーに、対応するExchange Onlineを指す
ExternalEmailAddress
がスタンプされます。.\SetMailPublicFolderExternalAddress.ps1 -ExecutionSummaryFile:mepf_summary.csv
テストが成功した場合は、オンプレミスの環境で次のコマンドを実行して、パブリック フォルダーの移行が完了したことを示します。
Set-OrganizationConfig -PublicFolderMailboxesMigrationComplete:$true -PublicFoldersEnabled Remote
設定が適用されたことを確認する方法
「手順 2: 移行の準備」で、オンプレミスのパブリック フォルダーの構造、統計情報、アクセス許可に関するスナップショットを取得しました。 次のステップでは、Exchange Online への移行後に同様のスナップショットを取得して、パブリック フォルダーの移行が成功したことを確認します。 両ファイルのデータを比較して、移行が成功したことを確認します。
新しいフォルダー構造のスナップショットを取得するには、Exchange Online PowerShell で次のコマンドを実行します。
Get-PublicFolder -Recurse -ResultSize Unlimited | Export-CliXML Cloud_PFStructure.xml
アイテム数、サイズ、所有者などのパブリック フォルダーの統計情報のスナップショットを取得するには、Exchange Online PowerShell で次のコマンドを実行します。
Get-PublicFolder -Recurse -ResultSize Unlimited | Get-PublicFolderStatistics | Export-CliXML Cloud_PFStatistics.xml
アクセス許可のスナップショットを取得するには、Exchange Online PowerShell で次のコマンドを実行します。
Get-PublicFolder -Recurse -ResultSize Unlimited | Get-PublicFolderClientPermission | Select-Object Identity,User,AccessRights | Export-CliXML Cloud_PFPerms.xml
メールが有効なパブリック フォルダーのスナップショットを取得するには、Exchange Online PowerShell で次のコマンドを実行します。
Get-MailPublicFolder -ResultSize Unlimited | Export-CliXML Cloud_MEPF.xml
注:
移行後、Exchange Online で外部メールがメールが有効なパブリック フォルダーで 5.7.13 または 5.4.1 エラーが発生して失敗する場合は、パブリック フォルダーで構成されたメール ドメインに対して、匿名ユーザーの CreateItems アクセス許可が有効で、ドメインベースのエッジ ブロック (DBEB)が無効になっていることを確認してください。
既知の問題
パブリック フォルダーの移行に関する次のような一般的な問題が組織で発生する可能性があります。
Exchange Online に 100 個以上の一意のパブリック フォルダー メールボックスがある場合は、パブリック フォルダー の Exchange Online への移行はサポートされていません。
ルート パブリック フォルダーと EFORMS REGISTRY フォルダーのアクセス許可はExchange Onlineに移行されないため、Exchange Onlineで手動で適用する必要があります。 適用するには、Exchange Online PowerShell で次のコマンドを実行します。 このコマンドは、オンプレミスでは存在し Exchange Online では存在しないアクセス許可エントリごとに 1 度ずつ実行します。
Add-PublicFolderClientPermission "\" -User <user> -AccessRights <access rights> Add-PublicFolderClientPermission "\NON_IPM_SUBTREE\EFORMS REGISTRY" -User <user> -AccessRights <access rights>
一部のパブリック フォルダー メールボックスがパブリック フォルダー階層サービスを提供していない場合に、一部のパブリック フォルダーの移行が失敗するという既知の問題があります。 これは、1 つ以上のメールボックスの
IsExcludedFromServingHierarchy
パラメーターが$true
に設定されていることを意味します。 この問題が発生しないようにするには、階層サービスを提供するように Exchange Online のすべてのメールボックスを設定します。送信者と 代理人として送信するのアクセス許可が Exchange Online に移行されません。 移行の際にこの問題が発生する場合は、オンプレミスの環境で次のコマンドを使用し、だれがこれらのアクセス許可を持っているかをメモします。
オンプレミスで送信者アクセス許可を持つパブリック フォルダーを調べるには、次のようにします。
Get-MailPublicFolder | Get-ADPermission | ?{$_.ExtendedRights -like "*Send-As*"}
オンプレミスで代理人として送信するアクセス許可を持つパブリック フォルダーを調べるには、次のようにします。
Get-MailPublicFolder | ?{$_.GrantSendOnBehalfTo -ne "$null"} | Format-Table name,GrantSendOnBehalfTo
Exchange Online でメールが有効なパブリック フォルダーに送信者アクセス許可を追加するには、Exchange Online PowerShell で次のように入力します。
Add-RecipientPermission -Identity <mail-enabled public folder primary SMTP address> -Trustee <name of user to be assigned permission> -AccessRights SendAs
例:
Add-RecipientPermission -Identity send1 -Trustee Exo1 -AccessRights SendAs
Exchange Online でメールが有効なパブリック フォルダーに代理人として送信するアクセス許可を追加するには、Exchange Online PowerShell で次のように入力します。
Set-MailPublicFolder -Identity <name of public folder> -GrantSendOnBehalfTo <user or comma-separated list of users>
例:
Set-MailPublicFolder send2 -GrantSendOnBehalfTo exo1,exo2
"\NON_IPM_SUBTREE\DUMPSTER_ROOT" フォルダーの下に 10,000 を超える数のフォルダーがあると、移行が失敗することがあります。 したがって、"\NON_IPM_SUBTREE\DUMPSTER_ROOT" フォルダーをチェックして、10,000 を超える数のフォルダーが直下にないか (直接の子) どうかを確認してください。 次のコマンドを使用すると、現在の場所にあるパブリック フォルダーの数を確認できます。
(Get-PublicFolder -GetChildren "\NON_IPM_SUBTREE\DUMPSTER_ROOT").Count
Exchange Onlineでは、10,000 を超えるサブフォルダーがサポートされていないため、10,000 を超えるフォルダーの移行は失敗します。 このような構成のブロックを解除するためのスクリプトを開発中です。 その間は、パブリック フォルダーの移行はお待ちいただくことをお勧めします。
移行ジョブが進行していないか、ストールしています。 これは、並列で実行されているジョブの数が多すぎて、ジョブが断続的なエラーで失敗している場合に発生することがあります。
MaxConcurrentMigrations
とMaxConcurrentIncrementalSyncs
を小さな数に変更することで、同時実行ジョブの数を減らすことができます。 これらの値を設定するには、次の例を使用します。Set-MigrationEndpoint <PublicFolderEndpoint> -MaxConcurrentMigrations 30 -MaxConcurrentIncrementalSyncs 20 -SkipVerification
移行ジョブが次のエラーで失敗する。"エラー:収集フォルダーの収集。"このエラーが発生した場合、バッチを停止してから再起動すると、解決します。
移行ジョブが失敗し、「次のエラーが原因で要求が検疫されました:指定されたキーがディクショナリに存在していませんでした」というエラーが表示されます。これは、移行ジョブがコピーできないフォルダーに破損した項目が存在する場合に発生します。 これを回避するには、次のようにします。
移行バッチを停止します。
破損した項目を含むフォルダーを特定します。 移行レポートに、エラーが発生したときにコピー中だったフォルダーへの参照が含まれています。
オンプレミス環境で、影響のあったフォルダーをプライマリ パブリック フォルダーのメールボックスに移動します。
New-PublicFolderMoveRequest
コマンドレットを使用してフォルダーを移動できます。フォルダーの移動が完了するまで待機します。 移動の完了後、移動要求を削除します。 最後に、移行バッチを再起動します。
Exchange オンプレミス環境からパブリック フォルダー メールボックスを削除する
移行の完了後に、Exchange Online のパブリック フォルダーが想定どおりに動作しており、想定しているすべてのデータが含まれていることを確認したら、オンプレミスのパブリック フォルダー メールボックスを削除できます。
パブリック フォルダー メールボックスを削除した後に回復することはできないので、この手順は元に戻せないことにご注意ください。 したがって、移行が成功したことを検証することに加えて、Exchange Online のパブリック フォルダーを 2、3 週間監視してから、オンプレミスのパブリック フォルダー メールボックスを削除することを強くお勧めします。
Outlook の PST エクスポートを使ってパブリック フォルダーを Microsoft 365 または Office 365 に移行する
オンプレミスのパブリック フォルダー階層が 30 GB を超える場合は、Outlook の PST エクスポート機能を使用してパブリック フォルダーを Microsoft 365 またはOffice 365またはExchange Onlineに移行しないことをお勧めします。 Microsoft 365 および Office 365 オンライン パブリック フォルダー メールボックスの増加は、サイズ クォータを超えたときにパブリック フォルダー メールボックスを分割する自動分割機能を使用して管理されます。 PST エクスポートを使ってパブリック フォルダーを移行すると、自動分割機能はパブリック フォルダー メールボックスの急激な容量増加に対処できなくなり、自動分割機能によってプライマリ メールボックスからデータが移動されるまで、最大で 2 週間待たなければならない場合があります。 さらに、Outlook PST を使用してパブリック フォルダーを Microsoft 365 またはOffice 365またはExchange Onlineにエクスポートする前に、次の点を考慮してください。
パブリック フォルダーのアクセス許可は、この処理の実行中に失われます。 移行の前に、現在のアクセス許可をキャプチャし、移行の完了後に手動で追加します。
複雑なアクセス許可を使用している場合や移行するフォルダーが多い場合は、コマンドレットを使って移行する方法をお勧めします。
PST エクスポートでの移行中に行われた元のパブリック フォルダーに対するアイテムやフォルダーの変更は失われます。 したがって、エクスポートとインポート処理の完了に時間がかかる場合は、コマンドレットを使用する方法をお勧めします。
PST ファイルを使ってパブリック フォルダーを移行する場合は、移行を正常に実行するため以下の手順に従ってください。
「手順 1: 移行スクリプトをダウンロードする」の手順に従って、移行スクリプトをダウンロードします。
PublicFolderToMailboxMapGenerator.ps1
ファイルのみをダウンロードする必要があります。「手順 3: .csv files の生成」の手順 2 に従って、パブリック フォルダーとメールボックスとのマッピング ファイルを作成します。 このファイルは、Exchange Online のパブリック フォルダー メールボックスの適正数を計算するために使用されます。
マッピング ファイルに基づいて、必要なパブリック フォルダー メールボックスを作成します。 詳細については、「EAC を使用してパブリック フォルダー メールボックスを作成する」を参照してください。
New-PublicFolder コマンドレットで、Mailbox パラメータを使って各パブリック フォルダー メールボックスの最上位のパブリック フォルダーを作成します。
Outlook を使って、PST ファイルをエクスポートし、インポートします。
EAC を使って、パブリック フォルダーのアクセス許可を設定します。 詳細については、「新しい組織でパブリック フォルダーをセットアップする」トピックの「手順 3:パブリック フォルダーにアクセス許可を割り当てる」を参照してください。
注意
PST 移行を既に開始しているが、プライマリ メールボックスがいっぱいであるという問題が生じた場合、PST 移行を回復するには次の 2 つの方法があります。
最初のオプションは、自動分割がプライマリ メールボックスからデータを移動するのを待つ方法です。 最大で 2 週間かかる場合があります。 ただし、パブリック フォルダー メールボックスが完全にいっぱいになると、自動分割が完了するまで、そのすべてのパブリック フォルダーは新しいコンテンツを受信できません。
2 つ目のオプションは、「Exchange Server でパブリック フォルダー メールボックスを作成する」を実行した後、New-PublicFolder コマンドレットで Mailbox パラメーターを使用して、セカンダリ パブリック フォルダー メールボックスに残りのパブリック フォルダーを作成します。
パブリック フォルダーの移行のトラブルシューティング
パブリック フォルダーの移行中の一般的な問題については、次のボタンを選択します。
Microsoft 365 管理センターでポップアップ ページが開き、テナント管理者アカウントでログインし、適切なオプションを選択します