Exchangeでユーザーのメールボックスを誤って削除した場合でも、おそらくPowerShell(PoSh)を使用して復元できます。キーは、メールボックスが削除されたことを認識するとすぐに実行します。
これは、偶然これをやったことに気づいたとき、胸がドキドキする瞬間です。少数のメールメッセージのみを削除した場合は、Office 365で削除された電子メールを回復する方法 も表示できます。
開始する前に、これはOffice 365のExchange Onlineで削除されたメールボックスを復元するためのものであることに注意してください。環境およびExchange 2010。また、説明した方法を使用する管理者権限があり、いくつかの基本的なPowerShellスクリプト を実行していることを前提としています。
メールボックスが削除されるとどうなりますか?
メールボックスは、Azure Active Directory(AD)リサイクルのいずれかに移動しますExchange OnlineのbinまたはExchange 2010のDisconnected Mailboxesディレクトリ。
設定されている保持ポリシーによっては、最大30日間そこに存在する場合があります。これにより、エラーを認識して回復するための猶予期間が与えられます。
Exchange Onlineで削除されたメールボックスを回復する
PowerShellを介してExchange Onlineに接続
ローカルセッションで、Powershellコンソールを開き、次のコマンドを使用してログイン資格情報を変数に設定します。
<!-In_content_1 all:[300x250] / dfp:[640x360]->
$userCredential
これにより、後で他のスクリプトを操作しやすくなります。
$userCredential = get-Credential
入力可能なウィンドウが開きますExchange Onlineを管理するためのユーザー名とパスワード。
次に、セッションで実際に実行できるように、実行ポリシーレベルを設定します。これにより、署名のないコマンドを実行できます。ただし、PowerShellスクリプトに署名するためのベストプラクティス も学習することをお勧めします。
set-ExecutionPolicy Unrestricted
プロンプトが表示されたら、Yを押してはい。
ここで、ローカルコンピューターとExchange Onlineの間の接続を開くために使用する変数$ sessionを作成します。
$session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $userCredential -Authentication Basic -AllowRedirection
Powershell-liveidは、OfficeサイトのIDです。通常、これは会社名のバリエーションです。
次のコマンドを使用して、Exchange OnlineでPoShセッションを開きます。
import-PSSession $Session -DisableNameChecking
現在、Exchange OnlineでPowerShellを直接使用していますが、
PowerShellでメールボックスを復元
次の部分は非常に簡単です。接続を確立するには、はるかに長い時間がかかります。
私たちがしなければならないのは、以下に示すコマンドレットを実行することです:
undo-SoftDeletedMailbox [email protected] -WindowsLiveID [email protected] -Password (ConvertTo-SecureString -String 'newpassword' -AsPlainText -Force)
[email protected]の両方のインスタンスを、復元するメールボックスの適切なメールボックス名とWindows LiveIDに変更します。それらは同じではないことに注意してください。
メールボックスに新しいパスワードを設定する必要もあります。スクリプトのnewpasswordを任意のパスワードに変更します。それをユーザーに中継し、次回ログインするときにパスワードを変更するように依頼する必要があります。
最後に、次のコマンドレットを使用して、これが機能することを確認します。
get-Mailbox [email protected]
復元されている場合、コマンドレットは復元されたメールボックスに関する情報を返します。エラーが返された場合は、コマンドを再度実行して、正しいメールボックスとWindows LiveIDが使用されていることを確認してください。
それでも問題が解決しない場合は、システムバックアップからメールボックスを復元する必要があります。システムのバックアップには多くの種類があるため、これは今日の作業の範囲を超えています。
完了したら、PoShセッションを終了する必要があります。実行しているPoShセッションの数は限られています。開いたままにすると、それらのセッションのいずれかが使用されます。閉じない限り、セッションがタイムアウトになるのを待ってから別のセッションを開始する必要があります。
remove-PSSession $Session
それだけです。再度発生した場合に使いやすくするために、これをPowerShellモジュールにスクリプト化することもできます。
Exchange 2010で削除されたメールボックスを回復する
これはありませんOffice 365またはハイブリッド環境で動作します。オンプレミスのExchange 2010でのみ機能します。
メールサーバーで、Exchange管理コンソール(EMC)を開きます。
受信者の設定>切断されたメールボックスに移動します。そこにユーザーのメールボックスが表示されるはずです。
そうしない場合、メールボックスデータベースのクリーニングプロセスはまだ行われていません。
Get-MailboxDatabase | Clean-MailboxDatabase
Connect-Mailbox -Identity "username" -Database "Mailbox Database" -User "username"
メールアドレスやエイリアスなど、すべての設定が正しいことを確認してください。見栄えが良ければ、次にユーザーがOutlookを開いたときに、すべてが元の状態のままになります。
Mailbox Restored
その使用方法Exchange OnlineおよびExchange 2010でメールボックスを復元するPowerShell。ハイブリッド環境を使用している場合は、少し複雑ですが、実行できます。
これらの異なるコマンドレットが存在することを知っているだけで、バージョンや構成に関係なく、Exchangeを操作するのに適した位置に配置できます。