バッチ移行を使用して、Exchange server のパブリック フォルダーを Exchange Online に移行する

適用先: Exchange Server 2013Exchange Server 2016Exchange Server 2019

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: 移行スクリプトをダウンロードする

  1. Exchange 2013/2016/2019 パブリック フォルダーの移行スクリプトおよび Microsoft 365 または Office 365 事前移行スプリクトへの Exchange 2010/2013/2016/EXO パブリック フォルダーですべてのスクリプトとサポートするファイルをダウンロードできます。

  2. 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 管理シェル (オンプレミス) で、次の手順を実行します。

  1. 移行が完了すると、Exchange Online 内の新しい場所にある、メールが有効なパブリック フォルダーにメッセージを送るために、インターネットを介した DNS キャッシュが行われます。これには時間がかかります。 この 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) を無効にする必要があります。 詳細については、「ディレクトリ ベースのエッジ ブロックを使用して無効な受信者に送信されたメッセージを拒否する」をご覧ください。

  2. パブリック フォルダーの名前にバックスラッシュ \ かスラッシュ / が含まれていると、移行プロセス中に指定のメールボックスに移行されない可能性があります。 移行する前に、このようなフォルダーの名前を変更して、これらの文字を削除してください。

    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>"
    
  3. (この手順は、何らかの理由で以前の移行試行を再実行する場合にのみ必要です。そうでない場合は、次の手順に進んでください)。次のコマンドレットを実行して、organizationに以前に成功した移行のレコードがないことを確認します。 以前に成功した移行の記録がある場合は、その値を $false に設定する必要があります。

    値を変更する前に、誤って 2 回目の移行を実行しないように、以前に試みた移行を破棄できるか確認してください。

    a. 次のコマンドを実行して、以前に行われた移行と、それらの移行の状態を確認します。

    Get-OrganizationConfig | Format-List  PublicFolderMailboxesLockedForNewConnections, PublicFolderMailboxesMigrationComplete
    

    b. 返された出力で、上記のいずれかの値の設定が $true になっている場合は、次のコマンドを実行して $false にします。

    Set-OrganizationConfig -PublicFolderMailboxesLockedForNewConnections:$false -PublicFolderMailboxesMigrationComplete:$false
    
  4. 完了時に移行が成功したことを確認するために、すべての適切な 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
      
    • 移行が終了した時点で比較するために、先に実行したコマンドで生成されたファイルを安全な場所に保存します。

  5. Microsoft Entra Connect (Microsoft Entra Connect) を使用してオンプレミスのディレクトリを Microsoft Entra ID と同期する場合は、次の操作を行う必要があります (Microsoft Entra Connect を使用していない場合は、この手順をスキップできます)。

    1. オンプレミス コンピューターで、[接続] Microsoft Entra開き、[構成] を選択します。

    2. [追加のタスク] 画面で、 [同期オプションのカスタマイズ] を選択し、 [次へ] をクリックします。

    3. [Microsoft Entra ID への接続] 画面で、適切な資格情報を入力し、[次へ] をクリックします。 接続したら、[オプションの機能] 画面が表示されるまで [次へ] をクリックし続けます。

    4. [Exchange メール パブリック フォルダー] が選択されていないことを確認します。 選択されていない場合には、次のセクションの「Exchange Online の事前に必要な手順」に進むことができます。 選択されている場合には、クリックしてチェック ボックスをオフにし、[次へ] をクリックします。

      注:

      [オプション機能] 画面にオプションとして Exchange メール パブリック フォルダーが表示されない場合は、接続Microsoft Entra終了し、次のセクション「Exchange Onlineの前提条件の手順」に進むことができます。

    5. [Exchange メール パブリック フォルダー] の選択を解除した後、[構成の準備完了] 画面が表示されるまで [次へ] をクリックし、[構成] をクリックします。

Exchange Online での前提となる手順

Exchange Online PowerShell で、次の手順を実行します。

  1. 既存のパブリック フォルダーの移行要求がないことを確認します。 要求がある場合、その要求をクリアしないと、自身が行っている移行要求が失敗します。 この手順は、パイプラインに既存の移行要求 (失敗した要求や中止しようとしている要求) が存在している可能性がある場合にのみ必要です。

    次の例では、既存のバッチ移行要求を検出します。

    Get-MigrationBatch | ?{$_.MigrationType.ToString() -eq "PublicFolder"}
    

    次の例では、既存のパブリック フォルダーのバッチ移行要求を削除します。

    Remove-MigrationBatch <name of migration batch> -Confirm:$false
    
  2. Exchange Online に既存のパブリック フォルダーやパブリック フォルダー メールボックスがないことを確認します。 下記の手順に従った後に Exchange Online にパブリック フォルダーが見つかる場合には、パブリック フォルダーとパブリック フォルダー メールボックスの削除を始める前に、なぜパブリック フォルダーが存在するのか、組織内のだれがパブリック フォルダー階層を開始したかを特定することが重要です。

    a. PowerShell Exchange Onlineで、次のコマンドを実行して、パブリック フォルダーメールボックスが存在するかどうかを確認します。

    Get-Mailbox -PublicFolder
    

    b. コマンドを実行しても、パブリック フォルダー メールバックスが返されない場合は、「手順 3: .csv ファイルを生成する」に進んでください。 上記のコマンドによってパブリック フォルダー メールボックスが返される場合は、次のコマンドを実行して、パブリック フォルダーが存在するかどうかを確認します。

    Get-PublicFolder -Recurse
    
  3. 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
    
  4. パブリック フォルダ-を削除した後、次のコマンドを実行して、パブリック フォルダー メールボックスをすべて削除します。

    $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 レプリケーションの待機時間のために無視しても問題ありません。

  5. 次のコマンドをもう一度実行して、SoftDeleted メールボックスまたは CNF メールボックスが残されていないことを確認します。

    Get-Mailbox -PublicFolder -SoftDeletedMailbox
    

    論理的に削除されたメールボックスの一覧が表示される場合は、手順 4 のコマンド ブロックを繰り返します。それ以外の場合は次の手順に進みます

手順 3: .csv ファイルを生成する

以前にダウンロードしたスクリプトを使用して、移行に使用する .csv ファイルを生成します。

  1. Exchange 管理シェル (オンプレミス) から Export-ModernPublicFolderStatistics.ps1 スクリプトを実行して、フォルダー名からフォルダー サイズへのマッピング ファイルを作成します。 このスクリプトを実行するには、ローカル管理者のアクセス許可が必要です。 生成されたファイルには、 FolderNameFolderSizeDeletedItemSize の 3 つの列が含まれます。 FolderSize 列と DeletedItemSize 列の値は、バイト単位で表示されます。 たとえば、\PublicFolder01,10240, 100 は、階層のルート内にある PublicFolder01 という名前のパブリック フォルダーのサイズが 10240 バイト (10 KB) で、このフォルダー内に 100 バイトの回復可能なアイテムがあることを意味しています。

    .\Export-ModernPublicFolderStatistics.ps1 <Folder-to-size map path>
    

    :

    .\Export-ModernPublicFolderStatistics.ps1 stats.csv
    
  2. スクリプトをModernPublicFolderToMailboxMapGenerator.ps1実行して、ソース パブリック フォルダーをExchange Online宛先のパブリック フォルダー メールボックスにマップする .csv ファイルを作成します。 このファイルは、Exchange Online のパブリック フォルダー メールボックスの適正数を計算するために使用されます。

ModernPublicFolderToMailboxMapGenerator.ps1 で生成されるファイルには、組織内のすべてのパブリック フォルダーの名前は含まれないことに注意してください。 大きなフォルダー ツリーの親フォルダーへの参照や、非常に大きなフォルダーの名前が含まれます。 このファイルは、特定のフォルダー ツリーや大きなフォルダーが特定のパブリック フォルダー メールボックスに配置されるようにするために使用する "例外" ファイルと見なすことができます。 このファイルにすべてのパブリック フォルダーが示されていなくても正常です。 このマッピング ファイルに一覧表示されているフォルダーの子フォルダーも、親フォルダーと同じパブリック フォルダー メールボックスに移行されます。ただし、マッピング ファイル内の別の行で、別のパブリック フォルダー メールボックスに送るよう明示的に示されている場合は異なります。

.\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 でパブリック フォルダー メールボックスを作成する

次に、Exchange Online PowerShell で、移行後のパブリック フォルダーを含めるターゲットのパブリック フォルダー メールボックスを作成します。

次のスクリプトを実行し、ターゲットのパブリック フォルダー メールボックスを作成します。 このスクリプトは、以前に「手順 3: .csv ファイルを生成する」で ModernPublicFoldertoMailboxMapGenerator.ps1 スクリプトを実行して生成した .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 の両方で、いくつかのコマンドを実行する必要があります。

  1. パブリック フォルダー メールボックスをホストしている Exchange 2016 サーバーまたは Exchange 2019 サーバーから、次のスクリプトを実行します。 このスクリプトは、メールが有効なパブリック フォルダーを、ローカル Active Directory から Exchange Online に同期します。 このスクリプトの最新バージョンをダウンロードしていること、および Exchange Management Shell から実行していることを確認します。

    .\Sync-ModernMailPublicFolders.ps1 -CsvSummaryFile:sync_summary.csv
    
    • CsvSummaryFile は、同期操作やエラーのログ ファイルの置き場所へのファイル パスです。 ログは .csv 形式になります。

    注:

    Sync-ModernMailPublicFolders.ps1 スクリプト中にエラーが発生した場合は、MEPF スクリプトのトラブルシューティングの同期を使用します。

  2. 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>
    
  3. Exchange Online Powershell で、Exchange メールボックス レプリケーション サービス (MRS) のインターネット ルーティ ング可能な完全修飾ドメイン名を変数 $Source_RemoteServer に渡します。 Exchange Online で実行する移行要求では、このリモート サーバーを使用して、パブリック フォルダーのコンテンツを Exchange Online にコピーします。

    $Source_RemoteServer = "<MRS proxy endpoint server>"
    
  4. オンプレミスの Exchange サーバーで、Exchange 管理シェルを開き、次のコマンドでプライマリ階層メールボックスの GUID を検索します。

    (Get-OrganizationConfig).RootPublicFolderMailbox.HierarchyMailboxGuid.GUID
    

    このコマンドの出力に注意してください。 この値は次の手順で必要になります。 次に例を示します。

    91edc6dd-478a-497c-8731-b0b793f5a986

注:

前のコマンドで説明したパブリック フォルダー メールボックス GUID は、オンプレミス サーバーから取得する必要があります。Exchange Onlineから取得した場合、移行バッチは一時的なエラーで失敗します。

  1. 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 時間待ってからコマンドをもう一度やり直してください。

  1. 最後に Exchange Online PowerShell で次のコマンドを使用し、移行を開始します。

    Start-MigrationBatch PublicFolderMigration
    

バッチ移行は Exchange Online PowerShell で New-MigrationBatch コマンドレットを使用して作成する必要がありますが、移行の進行と完了は EAC で、または Get-MigrationBatch コマンドレットを実行することで表示および管理することができます。 New-MigrationBatch コマンドレットは、各パブリック フォルダー メールボックスのメールボックス移行要求を開始するので、メールボックスの移行ページを使用してこれらの要求の状態を表示することができます。

メールボックス移行ページにアクセスするには、次のようにします。

  1. Exchange Online にログオンし、EAC を開きます。

  2. [受信者] に移動してから、 [移行] を選択します。

  3. 作成したばかりの移行要求を選択して、 [詳細] ウィンドウの [詳細の表示] を選択します。

手順 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 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:パブリック フォルダーの移行の終了処理をする (パブリック フォルダーのダウンタイムが必要)

パブリック フォルダーの移行が完了する前に、以下の項目をチェックする必要があります。

  1. オンプレミスの Exchange 環境で他のパブリック フォルダー メールボックスの移動やパブリック フォルダーの移動が行われていないことを確認します。 これを行うには、Get-MoveRequest および Get-PublicFolderMoveRequest コマンドレットを使用して、既存のパブリック フォルダーの移動を表示します。 進行中 の移動がある場合、または 完了 状態の場合は、削除します。

  2. この時点で、以下のスクリプトを再実行して、新しいメール対応のパブリック フォルダーが Exchange Online と同期されることを確認しておくことをお勧めします。

    .\Sync-ModernMailPublicFolders.ps1 -CsvSummaryFile:sync_summary.csv
    
  3. 環境に複数の Active Directory ドメインがある場合は、「 アクティブなパブリック フォルダー メールボックスが見つかりませんでした」エラーの手順を確認し、完了を開始する前 Complete-MigrationBatch コマンドで移行バッチが失敗 していることを確認します。

  4. パブリック フォルダーの移行を完了するには、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 のパブリック フォルダーを使用するように組織を完全に切り替えることができるようになります。

  1. Exchange Online PowerShell で、次のようにテスト ユーザー メールボックスを構成して、移行したばかりのパブリック フォルダー メールボックスのいずれかを既定のパブリック フォルダー メールボックスとして使用するようにします。

    Set-Mailbox -Identity <test user> -DefaultPublicFolderMailbox <public folder mailbox identity>
    

    パブリック フォルダーの作成に必要なアクセス許可が、テスト ユーザーにあることを確認します。

  2. 前の手順で指定したテスト ユーザーを使って Outlook にログオンし、次のパブリック フォルダー テストを実行します。 変更が反映されるまで 15 分から 30 分かかる場合があることにご注意ください。 Outlook で変更が認識されると、再起動を求めるダイアログが何回か表示される場合があります。

    a. 階層の表示

    b. アクセス許可を確認します。

    c. パブリック フォルダーの作成と削除

    d. パブリック フォルダーに対する内容の追加と削除

    問題が発生し、組織のパブリック フォルダー全体を Exchange Online に切り替える準備ができていないと判断した場合は、「Exchange Server から Exchange Online へのパブリック フォルダーの移行のロール バック」を参照してください。

  3. Exchange Online PowerShell で次のコマンドを実行し、Exchange Online 内のパブリック フォルダーのロックを解除します。 コマンドを実行してから変更が反映されるまでに約 15 分から 30 分かかる場合があります。 Outlook で変更が認識されると、ユーザーに Outlook の再起動を求めるダイアログが何回か表示される場合があります。

    Set-OrganizationConfig -RemotePublicFolderMailboxes $Null -PublicFoldersEnabled Local
    

手順 9:オンプレミスでの移行の終了処理を行う

メールが有効なパブリック フォルダーに対するメールをオンプレミスで有効にするには、次の手順を実行します。

  1. オンプレミス環境で以下のコマンドを実行すると、メールが有効なパブリック フォルダーに送信されたキューに入ったメールのバックアップを取得することができます。 このバックアップは、メールが有効なパブリック フォルダーへのメール配信が何らかの理由で失敗したシナリオで使用できます。

    $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}}
    
  2. オンプレミスの環境で、次のスクリプトを実行し、メールが有効なパブリック フォルダーに対するすべてのメールが Exchange Online に正しくルーティングされることを確認します。 このスクリプトでは、メールが有効なパブリック フォルダーにExternalEmailAddress、対応するExchange Onlineを指す がスタンプされます。

    .\SetMailPublicFolderExternalAddress.ps1 -ExecutionSummaryFile:mepf_summary.csv
    
  3. テストが成功した場合は、オンプレミスの環境で次のコマンドを実行して、パブリック フォルダーの移行が完了したことを示します。

    Set-OrganizationConfig -PublicFolderMailboxesMigrationComplete:$true -PublicFoldersEnabled Remote
    

設定が適用されたことを確認する方法

手順 2: 移行の準備」で、オンプレミスのパブリック フォルダーの構造、統計情報、アクセス許可に関するスナップショットを取得しました。 次のステップでは、Exchange Online への移行後に同様のスナップショットを取得して、パブリック フォルダーの移行が成功したことを確認します。 両ファイルのデータを比較して、移行が成功したことを確認します。

  1. 新しいフォルダー構造のスナップショットを取得するには、Exchange Online PowerShell で次のコマンドを実行します。

    Get-PublicFolder -Recurse -ResultSize Unlimited | Export-CliXML Cloud_PFStructure.xml
    
  2. アイテム数、サイズ、所有者などのパブリック フォルダーの統計情報のスナップショットを取得するには、Exchange Online PowerShell で次のコマンドを実行します。

    Get-PublicFolder -Recurse -ResultSize Unlimited | Get-PublicFolderStatistics | Export-CliXML Cloud_PFStatistics.xml
    
  3. アクセス許可のスナップショットを取得するには、Exchange Online PowerShell で次のコマンドを実行します。

    Get-PublicFolder -Recurse -ResultSize Unlimited | Get-PublicFolderClientPermission | Select-Object Identity,User,AccessRights | Export-CliXML Cloud_PFPerms.xml
    
  4. メールが有効なパブリック フォルダーのスナップショットを取得するには、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 個を超えるフォルダーの移行が失敗します。 このような構成のブロックを解除するためのスクリプトを開発中です。 その間は、パブリック フォルダーの移行はお待ちいただくことをお勧めします。

  • 移行ジョブが進行しない、または停止してしまう。 これは、並列で実行されているジョブの数が多すぎて、ジョブが断続的なエラーで失敗している場合に発生することがあります。 と MaxConcurrentIncrementalSyncs を小さな数に変更MaxConcurrentMigrationsすることで、同時実行ジョブの数を減らすことができます。 これらの値を設定するには、次の例を使用します。

    Set-MigrationEndpoint <PublicFolderEndpoint> -MaxConcurrentMigrations 30 -MaxConcurrentIncrementalSyncs 20 -SkipVerification
    
  • 移行ジョブが次のエラーで失敗する。"エラー:収集フォルダーの収集。"このエラーが発生した場合、バッチを停止してから再起動すると、解決します。

  • 移行ジョブが失敗し、「次のエラーが原因で要求が検疫されました:指定されたキーがディクショナリに存在しなかった」というエラーが表示されます。これは、移行ジョブがコピーできないフォルダーに破損した項目が存在する場合に発生します。 これを回避するには、次のようにします。

    1. 移行バッチを停止します。

    2. 破損した項目を含むフォルダーを特定します。 移行レポートに、エラーが発生したときにコピー中だったフォルダーへの参照が含まれています。

    3. オンプレミス環境で、影響のあったフォルダーをプライマリ パブリック フォルダーのメールボックスに移動します。 コマンドレットを New-PublicFolderMoveRequest 使用してフォルダーを移動できます。

    4. フォルダーの移動が完了するまで待機します。 移動の完了後、移動要求を削除します。 最後に、移行バッチを再起動します。

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. 手順 1: 移行スクリプトをダウンロードする」の手順に従って、移行スクリプトをダウンロードします。 ファイルをダウンロード PublicFolderToMailboxMapGenerator.ps1 するだけで済みます。

  2. 手順 3: .csv files の生成」の手順 2 に従って、パブリック フォルダーとメールボックスとのマッピング ファイルを作成します。 このファイルは、Exchange Online のパブリック フォルダー メールボックスの適正数を計算するために使用されます。

  3. マッピング ファイルに基づいて、必要なパブリック フォルダー メールボックスを作成します。 詳細については、「EAC を使用してパブリック フォルダー メールボックスを作成する」を参照してください。

  4. New-PublicFolder コマンドレットで、Mailbox パラメータを使って各パブリック フォルダー メールボックスの最上位のパブリック フォルダーを作成します。

  5. Outlook を使って、PST ファイルをエクスポートし、インポートします。

  6. EAC を使って、パブリック フォルダーのアクセス許可を設定します。 詳細については、「新しい組織でパブリック フォルダーをセットアップする」トピックの「手順 3:パブリック フォルダーにアクセス許可を割り当てる」を参照してください。

注意

PST 移行を既に開始しているが、プライマリ メールボックスがいっぱいであるという問題が生じた場合、PST 移行を回復するには次の 2 つの方法があります。

最初のオプションは、自動分割がプライマリ メールボックスからデータを移動するのを待つ方法です。 最大で 2 週間かかる場合があります。 ただし、パブリック フォルダー メールボックスが完全にいっぱいになると、自動分割が完了するまで、そのすべてのパブリック フォルダーは新しいコンテンツを受信できません。

2 つ目のオプションは、「Exchange Server でパブリック フォルダー メールボックスを作成する」を実行した後、New-PublicFolder コマンドレットで Mailbox パラメーターを使用して、セカンダリ パブリック フォルダー メールボックスに残りのパブリック フォルダーを作成します。

パブリック フォルダーの移行のトラブルシューティング

パブリック フォルダーの移行中の一般的な問題については、次のボタンを選択します。

Microsoft 365 管理センターでポップアップ ページが開き、テナント管理者アカウントでログインし、適切なオプションを選択します