همواره یکی از مهمترین چالش ها در بحث Data Management ، فرآیند Backup یا پشتیبانگیری از داده ها است. از این رو باید به دنبال تکنیک های سریعتر و به صرفه تری (از حیث مصرف منابعی مانند دیسک و شبکه) در فرآیند Backup گیری بود. یکی از این تکنیک ها، Backup گیری به روش Incremental هست که باعث میشود هر بار تنها از تغییرات Backup تهیه شود. به عبارت دیگر به وسیله Incremental Backup در هر نوبت Backup گیری، بر خلاف نوبت اول از تمامی فایل ها و داده ها مجدد Backup تهیه نمی شود بلکه تنها از فایل های جدید و یا داده های تغییر یافته نسخه ی جدید Backup تهیه میشود. این کار در سیستم عامل های نسخه ی لینوکس میتواند با اجرا شدن یک Bash Script انجام شود.
همانطور که پیشتر اشاره شد در توزیع های مختلف سیستم عامل لینوکس به کمک Bash Script میتوان یک Directory را به عنوان مبدا برای Backup گیری و همچنین Directory دیگری را به عنوان مقصد برای ذخیره سازی فایل های Backup مشخص کرد تا هر بار که Script اجرا شد محتوای مبدا و مقصد با هم مقایسه شود و از هر داده جدیدی که در مبدا اضافه شده Backup گرفته شود. در این حالت Directory مبدا حاوی داده های موجود بر روی آن سیستم است و Directory مقصد در واقع یک فضای ذخیره سازی خارجی mount شده به آن سیستم است.
برای این کار ابتدا یک فایل script با پسوند .sh ایجاد میکنیم، سپس مطابق تصویر زیر سطح دسترسی این فایل را طوری تعیین میکنیم که فایل همیشه با سطح دسترسی کامل و بهوسیله قابلیت Special Permissions همیشه با سطح دسترسی کاربر root اجرا شود:
سپس فایل script را با vi باز کرده و مطابق تصویر زیر کد script را نوشته و ذخیره کنید: (مسیر src به معنای محل ذخیره داده اصلی و مسیر dst به معنای محل ذخیره سازی Backup است)
در Script فوق از دو متغیر src و dst استفاده شده (که میتواند برای هر سناریو مسیری متفاوت داشته باشد) سپس محتوای موجود در src با dst بررسی می شود و بعد از هر بار اجرا شدن کد در صورتی که تغییرات جدیدی در src رخ داده باشد به صورت Incemental در dst کپی خواهد شد.