「孤立した」パブリック フォルダーを特定する機能の紹介
(この記事は 2015 年 10 月 9 日に Exchange Team Blog に投稿された記事 Introducing Public Folder “Lost and Found” functionality の翻訳です。最新情報については、翻訳元の記事をご参照ください。)
概要
Exchange Server 2016 と Office 365 のいずれにおいても、削除したパブリック フォルダー メールボックスを復元した場合に、復元されたセカンダリ パブリック フォルダー メールボックスの中に、新規作成のプライマリ パブリック フォルダー メールボックスには存在しないパブリック フォルダーが含まれている可能性があります。
もう少し詳しくご説明しましょう。
パブリック フォルダーは、1 つ以上のパブリック フォルダー メールボックスに格納されています。1 つ目のパブリック フォルダー メールボックスは、「プライマリ」パブリック フォルダー メールボックスと呼ばれます。続くパブリック フォルダー メールボックスは、すべて「セカンダリ」パブリック フォルダー メールボックスと呼ばれます。これらのセカンダリ パブリック フォルダー メールボックスは、パブリック フォルダー階層の更新情報をプライマリ パブリック フォルダー メールボックスから取得します。このプロセスは、パブリック フォルダーの階層同期と呼ばれます。関連する基本概念については、こちらの記事 (英語) をご覧ください。
パブリック フォルダーの階層同期は、ユーザーが行ったパブリック フォルダーの作成、削除、変更を処理し整合を取ります。パブリック フォルダーの階層同期が完了した後、プライマリ メールボックスには存在しないパブリック フォルダーがセカンダリ メールボックスに存在する場合、それらのパブリック フォルダーは「孤立した」パブリック フォルダーとして扱われます。
シナリオ例
Office 365 テナント管理者がプライマリ パブリック フォルダー メールボックス (「PrimaryN1」とします) とセカンダリ パブリック フォルダー メールボックス (「SecondaryN1」とします) を作成しました。この賢明な管理者は、すべてのコンテンツをセカンダリ パブリック フォルダー メールボックスでホストし、プライマリ パブリック フォルダー メールボックスをパブリック フォルダー階層のマスター専用とすることにしました。
最初にパブリック フォルダーを作成する際は、パブリック フォルダーの格納先になるパブリック フォルダー メールボックスを指定します。
たとえば、以下のように指定します。
PS C:\pf> New-PublicFolder "Green Monster" -Mailbox SecondaryN1 |
以下の例では、SecondaryN1 パブリック フォルダー メールボックスに 10 個のパブリック フォルダーが作成されます。
PS C:\pf> 1..10 | %{New-PublicFolder -Name ("PublicFolder_{0:00}" -f $_) -Mailbox SecondaryN1} |
しばらくは何事もありませんでしたが、あるとき管理者が交代しました。新しい管理者は、何らかの理由で両方のパブリック フォルダー メールボックスを削除することにしました。その後、この管理者は新しいプライマリ メールボックスを作成し、「PrimaryN2」という名前を付けました。
自分のミスに気付いた管理者は、コンテンツを元に戻すために、以前のセカンダリ パブリック フォルダー メールボックス (SecondaryN1) を復元しました。
パブリック フォルダー メールボックスの復元方法
Undo-SoftDeletedMailbox -PublicFolder |
Office 365 では、パブリック フォルダー メールボックスを削除すると (ただし、完全に削除した場合を除きます)、このパブリック フォルダー メールボックスは「削除済み (回復可能)」という状態になります。削除済み (回復可能) のパブリック フォルダー メールボックスは、Get-Mailbox -PublicFolder -SoftDeletedMailbox を使用して特定することができます。
Office 365 では、Undo-SoftDeletedMailbox -PublicFolder を使用して、これらのパブリック フォルダー メールボックスを復元することができます。
しかし、このときプライマリ パブリック フォルダー メールボックスは PrimaryN2 であり、この中には Undo-SoftDeletedMailbox -PublicFolder を使用して復元した以前のデータは存在しません。パブリック フォルダーの階層同期によって、プライマリ メールボックスに存在しないパブリック フォルダーが検出されると、これらのパブリック フォルダーは「LOST_AND_FOUND」という特別なフォルダー内に再作成されます。このフォルダーは NON_IPM_SUBTREE のルートに格納されているため、Outlook Web App または Outlook でエンド ユーザーに表示されることはありません。
孤立したフォルダーの特定方法
Get-PublicFolder -LostAndFound |
上記の例では、復元された SecondaryN1 パブリック フォルダー メールボックスには 10 個のパブリック フォルダーが含まれていました (PublicFolder_01 ~ PublicFolder_10)。その後、階層同期が実行された際に、これらのパブリック フォルダーがプライマリ メールボックスのパブリック フォルダー階層に存在しないことが検出されました。そして、パブリック フォルダーの階層同期の整合プロセス (パブリック フォルダーのメールボックス アシスタントによって開始) により、\NON_IPM_SUBTREE\LOST_AND_FOUND の下のプライマリ パブリック フォルダー メールボックスに新しいフォルダーが作成されます。このフォルダーの名前には、復元されたメールボックスの ExchangeGUID が使用されます (例: 25e6e0a3-d601-403a-aca5-9144962ef54b)。さらに、パブリック フォルダーの階層整合プロセスにより、孤立したパブリック フォルダー (PublicFolder_01 ~ PublicFolder_10) が、復元されたセカンダリ パブリック フォルダー メールボックスからこのプライマリ メールボックスの新規フォルダーに移動されます。
PS C:\pf> Get-PublicFolder -LostAndFound | ft -a |
パブリック フォルダーの階層同期の詳細なしくみについては、Microsoft Ignite 2015 で実演された Ladislau Conceicao、Brian Day、Kanika Ramji によるプレゼンテーション、「新しいパブリック フォルダーの最新情報 (英語)」をご覧ください。また、このシナリオを理解しやすくするために、以下に一連の基本概念をイラストでご説明します。
各パブリック フォルダーには LostAndFoundFolderOriginalPath という新しいプロパティが追加されており、元のパブリック フォルダー階層におけるそのフォルダーの場所を確認することができます。たとえば、PublicFolder_02 の元の場所を確認する場合は、以下のようになります。
この結果によると、PublicFolder_02 の元の場所はパブリック フォルダー階層のルートであることがわかります。
場所が判明したら、通常どおりパブリック フォルダーに対して Get-PublicFolder および Set-PublicFolder を実行できます。たとえば、LOST_AND_FOUND フォルダーから通常のパブリック フォルダー階層にパブリック フォルダーを移動させ、エンド ユーザーが再び使用できるようにするには、以下のように実行します。
これで、削除されていた PublicFolder_02 を無事に復元することができました。
この手順は、親パブリック フォルダーのサブフォルダーにも適用することができます。たとえば、「Fenway Park」、「Right Field」、「Pesky Pole」という 3 つのパブリック フォルダーがあり、以下のようなパブリック フォルダー階層になっているとします。
Fenway Park \Right Field \Pesky Pole |
PowerShell では、以下のように表示されます。
PS C:\pf> Get-PublicFolder Name Parent Path ---- ----------- Fenway Park \ Right Field \Fenway Park Pesky Pole \Fenway Park\Right Field |
このとき、障害復旧として、新しいプライマリ パブリック フォルダー メールボックスを作成し、これらのパブリック フォルダーが含まれていた元のパブリック フォルダー メールボックスを復元しました。Get-PublicFolder -LostAndFound を実行して確認できるように、孤立していたパブリック フォルダーが、現在は以下のとおり LOST_AND_FOUND パブリック フォルダーに格納されています。
PS C:\pf> Get-PublicFolder -LostAndFound | ft -a Name Parent Path ---- ----------- Fenway Park \NON_IPM_SUBTREE\LOST_AND_FOUND\5773ba6a-9926-4d64-97db-63a2bdd94a5b Pesky Pole \NON_IPM_SUBTREE\LOST_AND_FOUND\5773ba6a-9926-4d64-97db-63a2bdd94a5b Right Field \NON_IPM_SUBTREE\LOST_AND_FOUND\5773ba6a-9926-4d64-97db-63a2bdd94a5b |
ここでは、「Pesky Pole」のみを復元するとします。そこで、最上位の「Fenway Park」と、そのサブフォルダーである「Right Field」を再作成します。
PS C:\pf> New-PublicFolder "Fenway Park" Name Parent Path ---- ----------- Fenway Park \ PS C:\pf> New-PublicFolder "Right Field" -Path "\Fenway Park" Name Parent Path ---- ----------- Right Field \Fenway Park |
次に、「Pesky Pole」を元の場所である「Right Field」内に移動します。
PS C:\pf> Get-PublicFolder \NON_IPM_SUBTREE\LOST_AND_FOUND\5773ba6a-9926-4d64-97db-63a2bdd94a5b\"Pesky Pole" | Set-PublicFolder -Path "\Fenway Park\Right Field" PS C:\pf> Get-PublicFolder ?gFenway Park?h -Recurse Name Parent Path ---- ----------- Fenway Park \ Right Field \Fenway Park Pesky Pole \Fenway Park\Right Field |
これで無事復旧できました。
対象製品
Undo-SoftDeletedMailbox -PublicFolder は、Office 365 でのみ使用できます。オンプレミス版 Exchange Server では、削除済み (回復可能) オブジェクトの機能はサポートされていません。
Get-PublicFolder -LostAndFound は、Office 365 で使用できるほか、今後の Exchange 2013 および Exchange 2016 の累積更新プログラムにより、オンプレミス版 Exchange でも使用できるようになります。
まとめ
Undo-SoftDeletedMailbox -PublicFolder を使用することにより、Office 365 テナント管理者は削除されたパブリック フォルダー メールボックスを復元することができます。オンプレミス版の Exchange 2013 または Exchange 2016 で削除されたパブリック フォルダー メールボックスを復元する場合は、管理者は公開されているガイダンス (英語) に従ってください。
Get-PublicFolder -LostAndFound を使用することにより、Office 365 とオンプレミス版の Exchange 2016 の両方で孤立していたパブリック フォルダーの場所を確認することができます。
最後に、そもそもこの機能を使用しなくて済むように、どうしても必要な場合以外はパブリック フォルダー メールボックスを削除しないことをお勧めします。また、復元する必要がある場合は、必ずプライマリ パブリック フォルダー メールボックスを先に復元してください。この順序に従わず、セカンダリ パブリック フォルダー メールボックスを先に復元した場合は、Get-PublicFolders -LostAndFound を使用して孤立したパブリック フォルダーの場所を確認する必要があります。
Scott Oseychik