كيفية استعادة صندوق بريد محذوف باستخدام PowerShell
بغض النظر عن كيفية حذف صندوق بريد شخص ما عن طريق الخطأ في Exchange، فمن المحتمل أن تتمكن من استعادته باستخدام PowerShell (PoSh). والمفتاح هو القيام بذلك بمجرد إدراكك أن صندوق البريد قد تم حذفه.
إنها لحظة تقفز فيها القلوب إلى حلقي عندما ندرك أننا فعلنا ذلك عن طريق الخطأ. إذا قمت بحذف بضع رسائل بريد إلكتروني فقط، فيمكننا أن نعرض لك كيفية استرداد رسائل البريد الإلكتروني المحذوفة في Office 365 أيضًا.
قبل أن نبدأ، لاحظ أن هذا مخصص لاستعادة صناديق البريد المحذوفة في تبادل عبر الإنترنت لبيئة Office 365 و تبادل 2010نفترض أيضًا أن لديك حقوق المسؤول لاستخدام الطرق الموضحة وأنك قمت ببعض برمجة PowerShell الأساسية.
ماذا يحدث عند حذف صندوق البريد؟
يتم نقل صندوق البريد إلى أي منهما دليل Azure النشط (AD) سلة المهملات في Exchange Online أو صناديق البريد المنفصلة الدليل في Exchange 2010.
قد تظل البيانات محفوظة هناك لمدة تصل إلى 30 يومًا، وذلك وفقًا لسياسات الاحتفاظ المعمول بها. وهذا يمنحنا فترة سماح للاعتراف بخطئنا والتعافي منه.
استعادة صندوق بريد محذوف في Exchange Online
الاتصال بـ Exchange Online عبر PowerShell
في جلستك المحلية، افتح وحدة تحكم Powershell واستخدم الأمر التالي لتعيين بيانات اعتماد تسجيل الدخول الخاصة بك في المتغير.
$userCredential
وهذا يجعل العمل مع البرامج النصية الأخرى أسهل في وقت لاحق.
$userCredential = get-Credential
سيتم فتح نافذة يمكنك من خلالها إدخال اسم المستخدم وكلمة المرور لإدارة Exchange Online.
بعد ذلك، قم بتعيين مستوى سياسة التنفيذ حتى نتمكن من القيام بالأشياء في جلستنا بالفعل. وهذا يسمح لنا بتشغيل أوامرنا غير الموقعة. ولكن قد ترغب في معرفة أفضل الممارسات لتوقيع نصوص PowerShell أيضاً.
set-ExecutionPolicy Unrestricted
عند المطالبة بذلك، اضغط على ي نعم.
الآن سنقوم بإنشاء المتغير جلسة يتم استخدامه لفتح اتصال بين الكمبيوتر المحلي وExchange Online.
$session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $userCredential -Authentication Basic -AllowRedirection
PowerShell-liveid هو معرف موقع Office الخاص بك. عادةً ما يكون هذا أحد الاختلافات في اسم شركتك.
استخدم الأمر التالي لفتح جلسة PoSh على Exchange Online:
import-PSSession $Session -DisableNameChecking
نحن الآن نعمل مع PowerShell مباشرة في Exchange Online، على الرغم من أننا نجلس أمام جهاز الكمبيوتر الخاص بنا.
استعادة صندوق بريد محذوف باستخدام PowerShell
الجزء التالي سهل للغاية. سيستغرق إنشاء الاتصال وقتًا أطول بكثير.
كل ما علينا فعله هو تشغيل الأمر cmdlet الموضح أدناه:
undo-SoftDeletedMailbox user@mycompany.com -WindowsLiveID user@mycompany.com -Password (ConvertTo-SecureString -String 'newpassword' -AsPlainText -Force)
تغيير كلا الحالتين المستخدم@mycompany.com إلى اسم صندوق البريد المناسب ومعرف Windows LiveID لصندوق البريد الذي نريد استعادته. لاحظ أنه قد لا يكونا متماثلين.
يتعين علينا أيضًا تعيين كلمة مرور جديدة لصندوق البريد. تغيير كلمة المرور الجديدة في البرنامج النصي، أدخل كلمة المرور التي اخترتها. ستحتاج إلى نقل هذه الكلمة إلى المستخدم وطلب منه تغيير كلمة المرور في المرة التالية التي يقوم فيها بتسجيل الدخول.
أخيرًا، استخدم الأمر cmdlet التالي للتأكد من نجاح الأمر.
get-Mailbox user@mycompany.com
إذا تم استعادته، فسوف يقوم الأمر cmdlet بإرجاع معلومات حول صندوق البريد المستعاد. إذا أعاد خطأ، فقم بمراجعة الأوامر مرة أخرى وتأكد من استخدام صندوق البريد الصحيح ومعرف Windows LiveID.
إذا لم ينجح ذلك، فسنحتاج إلى استعادة صندوق البريد من نسخة احتياطية للنظام. هناك العديد من أنواع النسخ الاحتياطية للنظام، لذا فإن هذا يتجاوز نطاق ما نقوم به اليوم.
عندما ننتهي، يجب علينا إغلاق جلسة PoSh. عدد جلسات PoSh التي نقوم بتشغيلها محدود. تركها مفتوحة يستخدم إحدى تلك الجلسات. ما لم نغلقها، فسيتعين علينا الانتظار حتى انتهاء مهلة الجلسة قبل أن نتمكن من بدء جلسة أخرى.
remove-PSSession $Session
هذا كل شيء. قد ترغب أيضًا في كتابة هذا في وحدة PowerShell لتسهيل الاستخدام إذا حدث ذلك مرة أخرى.
استعادة صندوق بريد محذوف في Exchange 2010
لا يعمل هذا مع Office 365 أو البيئات الهجينة. فهو يعمل فقط مع Exchange 2010 المحلي.
على خادم البريد، افتح وحدة التحكم في إدارة Exchange (التوافق الكهرومغناطيسي).
انتقل إلى تكوين المستلم > صندوق البريد غير متصلينبغي أن نرى صندوق بريد المستخدم هناك.
إذا لم نفعل ذلك، فهذا يعني أن عملية تنظيف قاعدة بيانات صندوق البريد لم تتم بعد. لا بأس، يمكننا فرض ذلك.
- افتح شل إدارة التبادل (EMS) كمسؤول. هذا هو المكان الذي يمكننا فيه القيام بعمل PowerShell الخاص بـ Exchange.
- الآن ندخل إلى cmdlet:
Get-MailboxDatabase | Clean-MailboxDatabase
- بمجرد الانتهاء من ذلك، دعنا نعود إلى EMC وننقر بزر الماوس الأيمن على صندوق البريد غير متصلثم انقر على ينعش.
- ينبغي أن نرى صندوق البريد هناك الآن، وهو موجود، إلى جانب صندوق بريد آخر تم حذفه مؤخرًا.
- ارجع إلى EMS وأدخل الأمر cmdlet:
Connect-Mailbox -Identity "username" -Database "Mailbox Database" -User "username"
- اسم المستخدم هو اسم حساب Windows الخاص بالشخص (مثل مستخدم اختباري), و قاعدة بيانات صندوق البريد هو اسم قاعدة البيانات المدرجة بجوار اسمها في صندوق البريد غير متصل نافذة في EMC.
- ينعش صندوق البريد غير متصل ويجب أن ترى أن صندوق البريد الخاص بهم لم يعد معروضًا هناك. انتقل إلى تكوين المستلم > صندوق البريد وتأكد من وجود صندوق بريد المستخدم هناك.
تحقق من صحة جميع الإعدادات، مثل عنوان البريد الإلكتروني والاسم المستعار. إذا كانت الإعدادات تبدو جيدة، ففي المرة التالية التي يفتح فيها المستخدم حساب Outlook، سيكون كل شيء كما كان.
تم استعادة صندوق البريد
هذه هي كيفية استخدام PowerShell لاستعادة صناديق البريد في Exchange Online وExchange 2010. إذا كانت لديك بيئة هجينة، فالأمر أكثر تعقيدًا بعض الشيء ولكن يمكن القيام به.
إن مجرد معرفة وجود هذه الأوامر الصغيرة المختلفة يضعك في وضع جيد للعمل مع Exchange، بغض النظر عن الإصدار أو التكوين.