amanda، bacula و BackupPC. اینها سیستمهای کلاینت/سروری هستند که گزینههای بسیاری دارند با پیکربندیهای به نسبت دشوار. برخی از آنها به منظور غلبه بر این دشواری از رابطهای کاربر-پسند تحت وب استفاده میکنند. اما دبیان شامل طیف گستردهای از ابزارهای پشتیبانگیری است که با استفاده از دستور apt-cache search backup میتوانید فهرستی از آنان را مشاهده کنید.
rsync (از بستهای با همین نام) به صورت روزانه برای پشتیبانگیری از این سرورها استفاده میشود.
rsync به همراه کپی محتوای هارد پشتیبانگیری شده با پیوندهای سخت استفاده میشود، که این امر از استفاده بیش از حد فضای هارد درایو جلوگیری میکند. فرآیند rsync تنها فایلهایی را جایگزین میکند که از آخرین زمان پشتیبانگیری تغییر کرده باشند. با این مکانیزم تعداد زیادی فایل پشتیبان در فضای کمی از دیسک قابل ذخیرهسازی هستند. از آنجا که تمام فایلهای پشتیبان بلافاصله موجود و در دسترس هستند (برای نمونه، در دایرکتوریهای مختلف از یک شبکه اشتراکی) به سرعت میتوانید اختلاف محتوای آنها در دو تاریخ مختلف را بدست آورید.
dirvish پیادهسازی شده است. این برنامه از یک فضای ذخیرهسازی پشتیبان (“بانک”) استفاده میکند که در آن فایلهای پشتیبان را بر اساس بازه زمانی قرار میدهد (که به این فایلها “صندوق” گفته میشود).
/etc/dirvish/master.conf قرار دارد. در این فایل میتوان محل ذخیرهسازی فایلهای پشتیبان، فهرست “صندوقها” برای مدیریت و مقدار پیشفرض برای تاریخ انقضای آنها را مشخص کرد. باقی پیکربندی در فایلهای bank/vault/dirvish/default.conf قرار دارد که تنظیمات مختص به هر یک از فایلها را شامل میشود.
مثال 9.3. فایل /etc/dirvish/master.conf
bank:
/backup
exclude:
lost+found/
core
*~
Runall:
root 22:00
expire-default: +15 days
expire-rule:
# MIN HR DOM MON DOW STRFTIME_FMT
* * * * 1 +3 months
* * 1-7 * 1 +1 year
* * 1-7 1,4,7,10 1bank دایرکتوری مورد نظر جهت پشتیبانگیری را مشخص میکند. گزینه exclude به شما امکان استخراج فایلها (یا نوع فایلها) از فرآیند پشتیبانگیری را میدهد. گزینه Runall فهرستی از فایلها به منظور پشتیبانگیری به همراه بازه زمانی است، که به شما امکان تخصیص تاریخ صحیح برای رونوشتگیری را میدهد، در صورتی که پشتیبان در زمان مقرر صورت نگرفته باشد. باید یک زمان قبل از زمان اجرای آن (که به صورت پیش فرض ۱۰:۰۴ بعد از ظهر در دبیان بر طبق فایل /etc/cron.d/dirvish است) را مشخص کنید. در نهایت، تنظیمات expire-default و expire-rule سیاست انقضای فایلهای پشتبان را مشخص میکنند. نمونه بالا فایلهای پشتیبانی که در اولین یکشنه هر فصل ایجاد میشوند را تا ابد نگاه میدارد، اگر یک سال از اولین یکشنبه هر ماه بگذرد و پس از گذشت سه ماه از سایر یکشنبهها آنها را پاک میکند. سایر فایلهای پشتیبان برای ۱۵ روز نگاه داشته میشوند. ترتیب این قانونها اهمیت دارد، چرا که Dirvish از آخرین قانون صحیح استفاده میکند یا گزینه expire-default در صورتی که هیچ گزینه expire-rule یافت نشود.
مثال 9.4. فایل /backup/root/dirvish/default.conf
client: rivendell.falcot.com
tree: /
xdev: 1
index: gzip
image-default: %Y%m%d
exclude:
/var/cache/apt/archives/*.deb
/var/cache/man/**
/tmp/**
/var/tmp/**
*.bakhostname معلوم میشود را وارد کنیم)، به خصوص آنهایی که در مسیر ریشه قرار دارند (tree: /)، بجز آنهایی که در مسیر exclude قرار گرفتهاند. پشتیبانگیری محدود به محتوای یک فایلسیستم است (xdev: 1). شامل فایلهای سایر نقاط اتصال نمیباشد. یک شاخص برای فایلهای ذخیره شده تولید میشود (index: gzip) و فایل اصلی به صورت image-default: %Y%m%d و با تاریخ روز ثبت میگردد.
dirvish --vault vault --init راهاندازی اولیه کنید. از این زمان به بعد به صورت روزانه فراخوانی dirvish-runall به صورت خودکار اقدام به ایجاد رونوشتهای پشتیبان کرده و آنهایی را که تاریخ گذشته باشند حذف میکند.