در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش بکاپ (Backup) گیری از اکتیودایرکتوری قسمت 3 : Restore کردن

در مقاله های قبلی با روش های مختلف Backup گیری و بازگردانی کلی سیستم و System State آشنا شدید ، اما همیشه شرایط به شکلی که گفته شد جلو نمی رود ، دقت کنید که برخی اوقات پیش می آید که شما نمی خواهید کل یک دامین کنترلر را بازیابی کنید در واقع اصلا دامین کنترلر مشکلی ندارد که بخواهید آن را بازیابی کنید ، اما بر حسب اتفاق و بصورت ناخواسته یکی از اشیاء شبکه شما حذف می شود .

مثلا کاربری به نام M.Nasiri بصورت تصادفی حذف شده است . خوب در اینجا دیگر منطقی نیست که بخواهیم کل اطلاعات یک دامین کنترلر را بازگردانی کنیم ، آن هم فقط به خاطر یک کاربر حذف شده ، بگذریم از اینکه حتی اگر در حالت عادی عملیات بازگردانی را انجام دهیم باز هم کاربر مورد نظر بعد از عملیات Replication بین دامین کنترلر ها حذف خواهد شد . خوب چاره چیست ؟ برای اینکه درک بهتری از این موضوع داشته باشید انواع بازگردانی یا Restore کردن اطلاعات در اکتیودایرکتوری را بررسی می کنیم.


انواع بازگردانی یا Recovery اطلاعات در اکتیودایرکتوری

  1. Non-Authoritative Restore : اینگونه Restore بیشتر زمانی پیش می آید که دامین کنترلر شما در اثر مشکلات سخت افزاری یا نرم افزاری دچار مشکل شده است و دیگر قادر به ارائه سرویس نمی باشد . در این نوع از Restore کردن کلیه اطلاعات اکتیودایرکتوری که در Backup گرفته شده وجود دارد به یکباره به سرور بازگردانده می شود و بعد از اینکه سرور به حالت فعال در آمد ، با استفاده از فرآیند Replication بین دامین کنترلرها ، اطلاعاتی که در این مدت در دامین کنترلرهای دیگر بروز رسانی شده است را دریافت کرده و به روز می شود . دو نوع بازگردانی که در مقاله قبلی اشاره کردیم ، هر دو به شکل Non-Authoritative Restore بودند.
  2. Authoritative Restore :اینگونه از Restore بیشتر زمانی انجام می شود که یک تغییری که در ساختار Directory Services یا همان اکتیودایرکتوری انجام شده است بایستی به حالت قبلی آن بازگردد ، مثلا بصورت تصادفی و به اشتباه یک کاربر یا یک OU از اکتیودایرکتوری حذف شده است و بایستی بازگردانی شود . در این فرآیند شیء حذف شده ضمن اینکه بازگردانی می شود خود را با سایر اطلاعات یا بهتر بگوییم با سایر دامین کنترلرهای مجموعه Replicate می کند ، اما اینبار Replication سایر دامین کنترلرها تاثیری بر روی آن نداشته و آنرا مجددا حذف نمی کند و این شیء بر روی سایر اطلاعات موجود در دامین Overwrite می کند . مزین این نوع بازگردانی این است که شما دقیقا می توانید تعیین کنید که چه شیئی را به عنوان Authoritative در نظر گرفته شود . مثلا شما یک OU را به اشتباه حذف کرده اید و تنها این شیء را به عنوان Authoritative برای بازگردانی در نظر می گیرید ، بعد از عملیات بازگردانی ، تمامی اطلاعات در قالب فرآیند Replication از سایر دامین کنترلرها بر روی این دامین کنترلر Overwrite می شود به غیر از این OU که بر خلاف جهت عمل می کند بدین معنا که اطلاعات این OU بصورت استثناء بر روی اطلاعات موجود در سایر دامین کنترلر ها Overwrite می کند.

بازگردانی اطلاعات اکتیودایرکتوری معمولا به دو روشی انجام می شود که اشاره شد. اما سئوال اول اینجاست که اکتیودایرکتوری از کجا متوجه می شود که یک شیء بایستی بر روی سایر اشیاء Overwrite شود ؟ چرا بعد از فرآیند Replication این شیء که از نظر سایر دامین کنترلرها حذف شده می باشد مجددا به اکتیودایرکتوری باز می گردد و به عنوان یک شیء جدید معرفی می شود ؟ سئوال دوم در اینجاست که آیا ما می توانیم Backup را از هر زمانی که گرفته ایم بازگردانی کنیم ؟ مثلا Backup ای که یک مدیر شبکه از اکتیودایرکتوری گرفته است به 6 ماه پیش بر می گردد ! آیا ما می توانیم چنین Backup ای را بدون مشکل بازگردانی کنیم ؟ جواب این دو سئوال به دو خاصیت در اکتیودایرکتوری بر می گردد که به شرح زیر می باشند :

  • Update Sequence Number یا USN : اکتیودایرکتوری و بسیاری از Directory Service های دیگر برای اینکه بتوانند تغییرات انجام شده بر روی اشیاء را برای انجام عملیات Replication بیابند از فاکتور زمان استفاده می کنند ، اما فاکتور زمان چیز ثابت و قابل اتکایی نیست و می تواند بر حسب شرایط زمانی و مکانی و همچنین اشتباهات سهوی و عمدی دچار اختلال شود ، بنابراین اکتیودایرکتوری از یک ساختار شماره گذاری به نام Sequence Number برای شناسایی تغییرات و بروز بودن اشیاء استفاده می کند ، این شماره در هر دامین از یک Forest بصورت مشخصی ایجاد می شود و در قالب incremental بروز رسانی می شود ، هر چقدر این Update Sequence Number بیشتر باشد در نتیجه شیء بروز تر می شود و بر روی سایر اشیاء مشابه در هنگام Replication جایگزین می شود . در عملیات بازگردانی به روش Authoritative شما این عدد را آنقدر بالا می برید تا از عدد فعلی که وجود دارد بالاتر شود و در نتیجه در هنگام Replication بر روی سایر اطلاعات مشابه در دامین کنترلرهای دیگر Overwrite می کند. برای اینکه بتوانید USN یک شیء در اکتیودایرکتوری را مشاهده کنید ابتدا وارد کنسول Active Directory Users and Computers شوید و سپس از منوی View گزینه Advanced را انتخاب کنید و در نهایت بر روی هر کدام از Object ها که راست کلیک کنید تب جدیدی به نام Object را مشاهده خواهید کرد که Update Sequence Number را به شما نمایش می دهد.

Update Sequence Number  در اکتیودایرکتوری


  • Tombstone Lifetime یا تاریخ انقضا (ترجمه بهتری پیدا نکردم براش) : با توجه به تعریف خوبی که در مقاله مهندس خلیفی در خصوص این موضوع ارائه شده من بیشتر توضیح نمیدم ، Tombstone Lifetime که ترجمه آن طول عمر سنگ قبر می باشد در واقع تاریخ انقضای یک شیء حذف شده یا بهتر بگوییم یک Object حذف شده در ساختار اکتیودایرکتوری را تعیین می کند ، زمانی که شما یک Object را از ساختار اکتیودایرکتوری حذف می کنید ، این Object بلافاصله از این ساختار حذف نخواهد شد و در واقع در یک Recycle Bin در اکتیودایرکتوری قرار می گیرد ، مدت زمانی که این Object در این Recycle Bin قرار دارد تا زمانی که بصورت کامل از اکتیودایرکتوری حذف شود را به اصطلاح فنی Tombstone Lifetime می گوییم . حال فرض را بر این بگیرید که Backup ای که شما تهیه کرده اید برای 6 یا 7 ماه پیش است و در نتیجه tombstone آن به اتمام رسیده است و برای اکتیودایرکتوری غیر قابل بازگردانی محسوب می شود ، این همان دلیلی است که شما بایستی بصورت هفتگی با ماهیانه از اکتیودایرکتوری خود Backup بگیرید.

خوب نکات بالا رو حتما خوب مطالعه کنید ، با توجه به مثال هایی که در هر دو مورد مطرح شد حتما متوجه شدید که اگر به عنوان رهکار Backup گیری از ابزارهای Image گیری استفاده کنید و مثلا ایمیج ماه پیش رو در هنگام بروز مشکل بازگردانی کنید و یا اگر دامین کنترلر خودتون رو در محیط های مجازی مثل VMware نصب کردید و ازش Snapshot گرفتید ، وقتی این Snapshot رو بر می گردونید چه فاجعه ای ممکنه پیش بیاد !!! پس به این نکته خیلی خیلی توجه کنید و به عنوان تکلیف شب برای خودتون 10 بار تکرارش کنید : من هیچوقت از Image و Snapshot برای برگرداندن اطلاعات اکتیودایرکتوری استفاده نمی کنم ...

نکته های Backup گیری از اکتیودایرکتوری


خوب امیدوارم که مطالب بالا را به درستی مطالعه کرده باشید ، به سراغ بازگردانی اطلاعات یک شیء حذف شده در اکتیودایرکتوری می رویم ، برای انجام اینکار ابتدا بایستی System State را بازگردانی کنیم و سپس قبل از Restart کردن سیستم دستورات لازم را بایستی وارد کنیم ، در مقاله قبلی در خصوص شیوه بازگردانی اطلاعات System State توضیحاتی را ارائه دادم و فکر نمی کنم نیازی باشد که دوباره مطالب مربوط به آن را تکرار کنیم بنابراین به مراحلی که بعد از بازگردانی System State بایستی انجام شود اشاره می کنیم.

بعد از اینکه System State را با استفاده از مقاله قبلی بازگردانی کردید ، دیگر سیستم را بر خلاف مقاله قبلی دیگر Restart نکنید و در اینجاست که بایستی با استفاده از دستور ntdsutil مجددا به سیستم شیء مورد نظرمان را برای بازگردانی مشخص کنیم ، دقت کنید که ما برای نمایش اشیاء در اکتیودایرکتوری از ساختار نامگذاری Distinguished Name یا همان DN استفاده می کنیم و در اینجا نیز برای مشخص کردن شیء مورد نظر بایستی با ساختار نامگذاری DN آشنایی داشته باشیم. در این مثال ما قصد داریم یک شیء با ساختار DN به شکل زیر را بازگردانی کنیم :
CN=Test User,CN=Users,DC=home,DC=local
برای انجام اینکار بایستی دستورات زیر را بعد از بازگردانی System State در CMD وارد کنید :

ntdsutil
activate instance ntds
authoritative restore
restore object “cn=Test User,cn=Users,dc=home,dc=local” 
Authoritative Restore در اکتیودایرکتوری



با وارد کردن دستورات بالا وصرفا کاربری با نام کاربری Test که در دامین home.local قرار دارد بازگردانی می شود و در واقه به عنوان یک شیء Authoritative در نظر گرفته می شود ، می توانید نتیجه را که مشابه تصویر بالا می باشد مشاهده کنید ، بعد از انجام این عملیات می توانید سیستم را Restart کرده و مطمئن باشید که کاربر مورد نظر بازگردانی شده است . دقت کنید که در دستور ذکر شده وجود علامت "" برای ساختار نامگذاری DN الزامی است. هنوز مبحث Backup گیری از اکتیودایرکتوری به پایان نرسیده است و چند روش دیگر در این خصوص وجود دارد که در مقالات بعدی در خصوص این روشها که تهیه Snapshot و همچنین فعال سازی و استفاده از قابلیت Active Directory Recycle Bin می باشد صحبت خواهیم کرد. امیدوارم که مقاله مفید بوده باشد.

نویسنده : محمد نصیری
منبع : جزیره سرویس های شبکه مایکروسافت وب سایت توسینسو
هرگونه نشر و کپی برداری بدون ذکر منبع دارای اشکال اخلاقی می باشد.
#بک_آپ_از_System_State #بک_آپ_گیری_از_اکتیودایرکتوری #بازگردانی_یک_شیء_حذف_شده #بازیابی_اکتیودایرکتوری #Update_Sequence_Number_چیست #تفاوت_Authoritative_و_Non-Authoritative
عنوان
1 آموزش بکاپ (Backup) گیری از اکتیودایرکتوری قسمت 1 : دستور wbadmin رایگان
2 آموزش بکاپ (Backup) گیری از اکتیودایرکتوری قسمت 2 : System State رایگان
3 آموزش بکاپ (Backup) گیری از اکتیودایرکتوری قسمت 3 : Restore کردن رایگان
4 آموزش بکاپ (Backup) گیری از اکتیودایرکتوری قسمت 4 : Snapshot رایگان
زمان و قیمت کل 0″ 0
10 نظر
whim.shape

با سلام

من بک آپ گرفتم اما میخوام که بازیابی کنم فایل رو پیدا میکنه میرسه به مرحله نصب خطا میده که المنت رو پیدا نمیکنه

whim.shape

لطفا راهنمایی کنید

فایل بک آپ رو ریختم رو هارد اکسترنال حالا میخوام روی هارد سرور بازیابی کنم که تو مرحاله نصب خطا میده

محمد حسن غلامی

سلام

اگه لطف کنید لینک قسمتهای دیگه مقاله رو هم بذارید خیلی خوب میشه.

ممنون

Mehran Eshghi

سلام مهندس عالی بود

اما ما اینجا نیاز نداریم USN این آبجکت و بالا ببریم تا هنگام Replication بعد از restart سیستم این ابجکت حذف نشه؟

به این مورد شما اشاره نکردید.لطفا بیشتر توضیح بدین

ممنون

محمد نصیری

USN رو زمانی نیاز هست بالا ببرید که دو یا بیشتر از دو تا DC دارید ، اگر یکی باشه نیازی نیست چون Replication ای انجام نمیشه که بخاد حذف کنه Object ما رو ..

Mehran Eshghi

دقیقا درست میفرمایید.ممنون از راهنماییتون

فقط یک سوال دیگه در یک قسمت دیگه داشتتم در مورد اینکه چرا نباید GC رو روی IM نصب کرد.

سپاس

محمد نصیری

این مورد در محیط های تک دامین اصلا مهم نیست در محیط هایی که Forest و Tree دارند مطرح هست به لینک زیر مراجعه کنید :

faraghat

سلام . خیلی خوب بود . به نظر من یکی از عیب های روش Authoritative restore اینه که حتما باید مراحل system state restore بگذره و بعد ما یک شئ رو بازیابی کنیم که خیلی زمانبره . مگر اینکه به صورت تخصصی از نرم افزارهای دیگه استفاده کنیم .

mohamad-8

سلام

ممنون از مقاله خوبتون فقط استاد یه سوال داشتم ممنون میشم جوابمو بدید

اگر یه شی (مثلا یوزر یا ou)حذف شده باشد من چطوری باید پیداش کنم و عدد usn بالا ببرم؟ چون حذف شده

ایا با ریکاوری کردن system state اون شی(یوزر یا ou و ...) برمیگرده که من بتونم usn بالا ببرم تا روی dc دیگه overwrite بشه؟

محمد نصیری

خوب شما اول Backup رو برمیگردونید بعد USN رو بالا می برید ،بله با ریکاوری اون شیء برمیگرده ، دقیقا همینطور هست.

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره تابستانه می تونی امروز ارزونتر از فردا خرید کنی ....