گذری بر سرویس پشتیبان‌گیری Volume Shadow Copy (قسمت اول)

تکنولوژی VSS یا Volume Snapshot  یا Volume Shadow Copy سرویسی است که از ویندوز XP-SP2 به سیستم عامل ویندوز اضافه شده و امکان پشتیبان‌گیری از سیستم فایل را در سطح بلاک فراهم می‌کند.
با استفاده از این تکنولوژی ‌میتوان از فایل‌های در حال استفاده یا فایل‌هایی که توسط سرویس Windows File Protection محافظت شده‌اند، کپی برداری نمود.

لازمه فعالیت این سرویس، وجود سیستم فایل NTFS به عنوان سیستم فایل OS است.

در حال حاضر اکثر نرم‌افزارهای فدرتمند پشتیبان‌گیری و همچنین برنامه‌های NTBackup و System Restore در خود ویندوز نیز از این سرویس برای تهیه کپی از فایل‌های سیستمی یا جایگزینی آنها استفاده می‌کنند.

سرویس مربوط به این تکنولوژی با نام Volume Shadow Copy در فایل System32\vssvc.exe قرار گرفته و جهت اجرا به فعالیت سرویس RPC نیاز دارد.

توابع مورد نیاز این سرویس در دو کتابخانه vss_ps.dll به عنوان Service proxy/stub و vssapi.dll که کتابخانه اصلی Copy Reader/Writer می‌باشد واقع شده‌اند.

اصولا جهت تعامل با این سرویس، از سرویس‌های دیگری تحت عنوان VSS provider استفاده می‌شود که به عنوان مثال MS Software Shadow Copy provider 1.0 در ویندوز XP این کار را بر عهده دارد.

بدیهیست که شرکت‌های مختلف جهت سفارشی سازی روش استفاده از این سرویس، provider های (سخت‌افزاری یا نرم‌افزاری) خاص خود را به همراه VSS Writer اختصاصی ایجاد می‌نمایند. به عنوان مثال اگر به سرویس‌هایی که پس از نصب MS SQL Server اضافه می‌شوند دقت نموده باشید، سرویسی موسوم به SQL Server VSS Writer یا اصطلاحا SQLWriter خواهید دید که برای پشتیبان‌گیری از دیتای مربوطه با استفاده از سرویس VSS ارائه شده است.

VSS Volume Shadow Copy
منظور از Requestor در تصویر فوق، نرم‌افزاری است که درخواست دریافت Shadow را به VSS ارسال می‌کند. (مانند NTBackup یا غیره). برنامه Writer نیز سرویس‌های جانبی هماهنگ کننده عملیات پردازش و کپی برداری هستند که ممکن است توسط شرکت‌های مختلفی ارائه شده باشند.

به طور کلی سرویس VSS از دو روش Clone و COW جهت ایجاد کپی استفاده می‌کند.

روش اول همان کپی کامل (Full Copy/Mirror) است که یک کپی فقط خواندنی از Volume اصلی ایجاد نموده و تا زمانی که وضعیت آن توسط مدیر سیستم تغییر داده نشود، بروز خواهد ماند.

روش دوم نیز Copy-On-Write یا به عبارتی Differential Copy است. در این روش پس از ایجاد تغییر در یک بلاک، اشاره‌گر جدیدی برای آن ایجاد شده و کپی آن در مکان جدیدی نسبت به Shadow قبلی قرار می‌گیرد. در واقع تمام سرویس‌ها جهت استفاده از یک State خاص از Shadow از یک اشاره‌گر واحد استفاده می‌کنند. اما به محض اینکه یکی از آنها (VSS Writer) اقدام به تغییر یک بلاک کند، اشاره‌گری جدید برای نسخه تغییر یافته از آن بلاک ایجاد می‌گردد.

پ.ن: از ویندوز Vista به بعد Tab جدیدی به پنجره Properties فایل‌های سیستم اضافه شده است که Previous Versions نام دارد. از این Tab جهت دسترسی به Shadow Copy ها یا Snapshot های قدیمی فایل استفاده می‌شود.

منابع تکمیلی:
Tips for deploying Shadow copies for Shared Folders
Copy-on-write

About محمد شمس

برنامه‌نویس، طراح انیمیشن و علاقمند به هوش مصنوعی

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


7 × = 49