ممکنه برای خیلی از ماها پیش اومده باشه که یک Object ای رو داخل اکتیو دایرکتوری اشتباها پاک کرده باشیم و بعدش دچار دردسر شده باشیم . برای جلوگیری از بروز این مشکل که ممکنه حتی اتفاقی هم رخ داده باشه از Windows Server 2008 R2 به بعد قابلیتی به اکتیو دایرکتوری اضافه شد تا بتونیم Object هایی که به صورت تصادفی پاک کردیم رو بازیابی کنیم .
شاید قبل از وجود این قابلیت از موارد دیگه ای میشد استفاده کرد برای مثال از Directory Service Restore Mode یا همون DSRM که البته این روش جدیدتر سرعت خیلی بالاتری در خصوص بازیابی Object ها برای ما داره . برای مثال روش دیگه ای هم وجود داشت تحت عنوان Object reanimation که البته این روش جدید باز هم مزیتی که داره اینه که attribute های Object و همچنین عضویت های مربوط به گروه های اون Object رو برای ما حفظ میکنه . پس میشه نتیجه گرفت بهترین روش برای بازیابی Object ها فعال سازی Active Directory Recycle Bin هست .
برای فعال سازی نیاز هست که Active Directory forest ما ویندوز سرور 2008 یا بالاتر باشه . همچنین مایکروسافت توصیه میکنه که Active Directory Recycle Bin بر روی بر روی دامین کنترلری فعال بشه که نقش Domain Naming Master رو داشته باشه . حتما با نقش ها و FSMO role ها آشنایی دارید . اگه خاطرتون باشه برای اینکه ببینیم role ها بر روی کدوم دامین کنترلرها پخش شده میتونیم از دستور زیر استفاده کنیم .
netdom query fsmo
پس من با این دستور متوجه میشم که Domain Nameing Master بر روی کدوم دامین کنترلر وجود داره تا Active Directory Recycle Bin رو بر روی اون فعال کنم . (برای اجرای این دستور بر روی دامین کنترلر باید دسترسی Enterprise Admins رو داشته باشیم)
خوب همونطور که مشخصه Domain Naming Master بر روی DC1 قرار داره . پس بهتره که من Active Directory Recycle Bin رو بر روی DC1 فعال کنم . فعال کردن این قابلیت از داخل Active Directory Administrative Center امکان پذیره . پس من وارد Active Directory Administrative Center میشم . برای این کار میتونم دانل دامین کنترلر مورد نظر از dsac.exe استفاده کنم . برای فعال کردن بر روی domain name خودم کلیک راست میکنم و گزینه Enable Recycle Bin رو کلیک میکنم .
با نمایش داده شدن پیام زیر بر روی Ok کلیک میکنم تا قابلیت مورد نظر برای ما فعال بشه .
بعد از تایید پیام شکل زیر نمایش داده میشه که بر روی Ok کلیک میکنم .
بعد از این تنظیمات ، Active Directory Administrative Center رو یکبار refresh میکنم و در root مربوط به دامین خودم یک Container جدید مشاهده میکنم با نام Deleted Objects که از این به بعد هر Object ای رو Delete کنم بلافاصله از بین نمیره و وارد این Container میشه و برای بازیابی میتونم از اینجا اقدام کنم .
خوب شاید سوال بشه که این قابلیت چطور کار میکنه ؟ برای پاسخ به این سوال باید بدونیم که هرگاه ما یک Object ای رو (مثلا User یا Computer) داخل اکتیو دایرکتوری پاک میکنیم یک خصوصیت و attribute با نام isDeleted در مورد اون Object تغییر وضعیت میده به true . این تغییر از دامین کنترلر با بقیه دامین کنترلرها Replicate خواهد شد .
پس بعد از بازه زمانی مربوط به Replicationاین Object مورد نظر از روی همه دامین کنترلرها پاک میشه . با فعال شدن Active Directory Recycle Bin یک پارامتر زمانی جدید با نام recycle lifetime و یک attribute جدید با نام isRecycled اضافه میشه . با فعال شدن این قابلیت زمانی که یک Object رو Delete میکنیم attribute مربوط به isDeleted مثل قبل تغییر وضعیت پیدا میکنه به true که کاملا واضحه چون اون Object رو حذف کردیم . اما attribute جدید ما با نام isRecycled دست نخورده باقی میمونه . (منظورازدست نخورده مقدار پیش فرضش هست که false هست)
تو این وضعیت Object حذف شده داخل Container مربوط به Deleted Objects باقی میمونه و هر موقع نیاز باشه با کلیلک راست کردن روی اون میتونیم Object خودمون رو بازیابی کنیم . پس از گذشت زمان ، recycle lifetime منقضی میشه وبعد از اون تغییر وضعیت میده به مقدار true ، حالا اتفاقی که میوفته اینه که قرار هست دامین کنترلر ها با هم replication انجام بدن و بر اساس پارامترهای جدید attribute های Object شروع میکنن به پاک کردن اون Object داخل دیتابیس های خودشون .
Senior Infrastructure Specialist
محمدرضا ملک احمد ، بیش از 10 سال سابقه فعالیت در زمینه شبکه و زیرساخت . متخصص Virtualization ، استوریج و سرویس های مایکروسافت .
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود