چگونه یک صندوق پستی حذف شده را با PowerShell بازیابی کنیم
مهم نیست که چگونه به طور تصادفی صندوق پستی یک شخص را در Exchange حذف کرده اید، احتمالاً می توانید آن را با استفاده از PowerShell ( PoSh ) بازیابی کنید. کلید این است که به محض اینکه متوجه شوید صندوق پستی حذف شده است، این کار را انجام دهید.
لحظه ای است که می فهمیم به طور تصادفی این کار را انجام داده ایم. اگر فقط چند پیام ایمیل را حذف کردهاید، میتوانیم نحوه بازیابی ایمیلهای حذف شده را در Office 365(how to recover deleted emails in Office 365) نیز به شما نشان دهیم.
قبل از شروع، توجه داشته باشید که این برای بازیابی صندوق پستی حذف شده در Exchange Online برای محیط Office 365 و Exchange 2010 است. ما همچنین فرض میکنیم که شما حقوق مدیریتی برای استفاده از روشهای توضیح داده شده را دارید و برخی از اسکریپتنویسی اولیه PowerShell(basic PowerShell scripting) را انجام دادهاید .
وقتی یک صندوق پستی حذف می شود چه اتفاقی می افتد؟(What Happens When a Mailbox Is Deleted?)
صندوق پستی به سطل بازیافت Azure Active Directory (AD) در (Azure Active Directory )Exchange Online یا دایرکتوری Disconnected Mailboxes در Exchange 2010 منتقل می شود.
بسته به سیاستهای نگهداری موجود، ممکن است تا 30 روز در آنجا بماند. این به ما یک مهلت می دهد تا اشتباه خود را بشناسیم و از آن خلاص شویم.
بازیابی یک صندوق پستی حذف شده در Exchange Online(Restore a Deleted Mailbox In Exchange Online)
از طریق PowerShell به Exchange آنلاین متصل شوید(Connect To Exchange Online Via PowerShell)
در جلسه محلی خود، کنسول Powershell را باز کنید و از دستور زیر برای تنظیم اعتبار ورود خود به متغیر استفاده کنید.
$userCredential
این کار بعداً کار با اسکریپت های دیگر را آسان تر می کند.
$userCredential = get-Credential
پنجره ای باز می شود که در آن می توانید نام کاربری و رمز عبور خود را برای مدیریت Exchange Online وارد کنید .
در مرحله بعد، سطح سیاست اجرا را طوری تنظیم کنید که بتوانیم در جلسه خود کارهایی را انجام دهیم. این به ما اجازه می دهد تا دستورات بدون امضای خود را اجرا کنیم. اما ممکن است بخواهید بهترین روش ها را برای امضای اسکریپت های PowerShell(best practices for signing PowerShell scripts) نیز یاد بگیرید.
set-ExecutionPolicy Unrestricted
وقتی از شما خواسته شد، Y را برای Yes فشار دهید.
اکنون متغیر $session را ایجاد می کنیم تا از آن برای باز کردن اتصال بین رایانه محلی و Exchange Online استفاده شود.
$session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $userCredential -Authentication Basic -AllowRedirection
Powershell-liveid شناسه سایت Office شما است. معمولاً این تغییر نام شرکت شما است.
از دستور زیر برای باز کردن یک جلسه PoSh در (PoSh)Exchange Online استفاده کنید :
import-PSSession $Session -DisableNameChecking
اکنون ما مستقیماً در Exchange Online با (Exchange Online)PowerShell کار می کنیم ، حتی اگر پشت رایانه خودمان نشسته ایم.
بازیابی یک صندوق پستی حذف شده با PowerShell(Restore a Deleted Mailbox With PowerShell)
قسمت بعدی فوق العاده آسان است. برقراری ارتباط ما را بسیار طولانیتر میبرد.
تنها کاری که باید انجام دهیم این است که cmdlet زیر را اجرا کنیم:
undo-SoftDeletedMailbox [email protected] -WindowsLiveID [email protected] -Password (ConvertTo-SecureString -String 'newpassword' -AsPlainText -Force)
هر دو نمونه [email protected] را به نام صندوق پستی مناسب و Windows LiveID صندوق پستی که میخواهیم بازیابی کنیم، تغییر دهید. توجه داشته باشید که ممکن است یکسان نباشند.
همچنین باید یک رمز عبور جدید برای صندوق پست تعیین کنیم. رمز عبور جدید در اسکریپت را به پسورد(newpassword) انتخابی خود تغییر دهید. شما باید آن را به کاربر منتقل کنید و از او بخواهید که دفعه بعد که وارد سیستم می شود رمز عبور خود را تغییر دهد.
در نهایت، از cmdlet بعدی استفاده کنید تا مطمئن شوید که کار می کند.
get-Mailbox [email protected]
اگر بازیابی شده باشد، cmdlet اطلاعات مربوط به صندوق پستی بازیابی شده را برمی گرداند. اگر خطایی را برگرداند، دوباره دستورات را مرور کنید و مطمئن شوید که صندوق پستی و Windows LiveID صحیح(Windows LiveID) استفاده شده است.
اگر باز هم کار نکرد، باید صندوق پستی را از یک نسخه پشتیبان سیستم بازیابی کنیم. انواع مختلفی از سیستم پشتیبان گیری وجود دارد، بنابراین فراتر از محدوده کاری است که ما امروز انجام می دهیم.
وقتی کارمان تمام شد، باید جلسه PoSh را ببندیم . تعداد جلسات PoSh ما محدود است. باز گذاشتن آن از یکی از آن جلسات استفاده می کند. مگر اینکه آن را ببندیم، باید منتظر بمانیم تا جلسه به پایان برسد تا بتوانیم جلسه دیگری را شروع کنیم.
remove-PSSession $Session
خودشه. حتی ممکن است بخواهید این مورد را در یک ماژول PowerShell(PowerShell Module) اسکریپت کنید تا در صورت تکرار، سهولت استفاده کنید.
بازیابی یک صندوق پستی حذف شده در Exchange 2010(Restore a Deleted Mailbox In Exchange 2010)
این برای Office 365(Office 365) یا محیط های ترکیبی کار نمی کند . این فقط برای Exchange 2010 در محل کار می کند.
در سرور ایمیل، کنسول مدیریت تبادل(Exchange Management Console ) (EMC) را باز کنید.
به پیکربندی گیرنده(Recipient Configuration ) > صندوق پستی قطع(Disconnected Mailbox) شده بروید . ما باید صندوق پستی کاربر را در آنجا ببینیم.
اگر این کار را نکنیم، پس فرآیند پاکسازی پایگاه داده صندوق پستی هنوز اتفاق نیفتاده است. اشکالی ندارد، ما می توانیم آن را مجبور کنیم.
- پوسته مدیریت تبادل(Exchange Management Shell ) ( EMS ) را به عنوان سرپرست باز کنید. اینجاست که میتوانیم کار PowerShell مخصوص Exchange(Exchange-specific PowerShell) را انجام دهیم .
- حالا cmdlet را وارد می کنیم:
Get-MailboxDatabase | Clean-MailboxDatabase
- پس از انجام این کار، اجازه دهید به EMC(EMC) برگردیم و روی صندوق پست قطع(Disconnected Mailbox) شده کلیک راست کرده، سپس روی Refresh کلیک کنید .
- ما اکنون باید صندوق پستی را در آنجا ببینیم، و به همراه صندوق دیگری که اخیراً حذف شده است.
- به EMS(EMS) برگردید و cmdlet را وارد کنید:
Connect-Mailbox -Identity "username" -Database "Mailbox Database" -User "username"
- نام کاربری نام حساب (Username)ویندوز(Windows) شخص (مانند کاربر آزمایشی(Test User) ) است(,) و پایگاه داده صندوق پستی(Mailbox Database) نام پایگاه داده ای است که در کنار نام آنها در پنجره صندوق پست قطع(Disconnected Mailbox) شده در EMC فهرست شده است.
- صندوق پست قطع(Disconnected Mailbox) شده را رفرش کنید و باید ببینید که صندوق پستی آنها دیگر در آنجا نمایش داده نمی شود. به Recipient Configuration > Mailbox بروید(Mailbox ) و مطمئن شوید که صندوق پستی کاربر در آنجا وجود دارد.
آن را بررسی کنید تا مطمئن شوید همه تنظیمات مانند آدرس ایمیل و نام مستعار درست هستند. اگر خوب به نظر می رسد، دفعه بعد که کاربر Outlook خود را باز می کند ، همه چیز همان طور که بود وجود دارد.
صندوق پستی بازیابی شد(Mailbox Restored)
این نحوه استفاده از PowerShell برای بازیابی صندوق های پستی در Exchange Online و Exchange 2010 است. اگر یک محیط ترکیبی دارید، کمی پیچیده تر است، اما می توان آن را انجام داد.
فقط دانستن اینکه این cmdlet های مختلف وجود دارند، شما را در موقعیت خوبی برای کار با Exchange قرار می دهد ، صرف نظر از نسخه یا پیکربندی.
Related posts
نحوه بازیابی ایمیل های پاک شده از جیمیل
چگونه یک PowerShell For Loop می تواند یک فرمان را چندین بار اجرا کند
نقد و بررسی کتاب - راهنمای گیک برای ویندوز 8
نصب پلاگین های GIMP: راهنمای نحوه کار
نحوه دانلود Google Chrome Offline (Standalone) Installer
چگونه بدون دست زدن به ماوس کامپیوتر ویندوزی خود را بیدار نگه دارید
نحوه حذف پوشه Windows.old در ویندوز 7/8/10
چگونه کامپیوتر خود را به یک سرور رسانه ای DLNA تبدیل کنیم
نحوه تبدیل تصاویر WEBP به JPG، GIF یا PNG
چگونه لپ تاپ خود را بسازیم
کنترل حساب کاربری (UAC) را برای یک برنامه خاص خاموش کنید
IE را در ویندوز 7 حذف و دوباره نصب کنید
نحوه باز کردن فایل های DDS در ویندوز 10
از Netstat برای مشاهده پورت های گوش دادن و PID در ویندوز استفاده کنید
نحوه تبدیل فایل های IMG به ISO
نحوه بازیابی اکانت هک شده فیسبوک
استفاده از رابط وب انتقال
چگونه نرم افزار رایانه شخصی خود را به طور خودکار به روز نگه دارید
چگونه چندین صفحه را در یک فایل PDF اسکن کنیم
نحوه تبدیل دیسک پویا به دیسک پایه