• Peykanielaheh@gmail.com
  • ۰
    سبد خرید
      هیچ محصولی در سبد خرید وجود ندارد.
    ۰
    سبد خرید
      هیچ محصولی در سبد خرید وجود ندارد.

    بکاپ گرفتن از سرور با rsync

    بکاپ گرفتن از سرور با rsync

    اگر به طور منظم از سرور خود نسخه پشتیبان تهیه نکنید، تقریباً هیچ راهی برای بازیابی فایل های از دست رفته ندارید. در نتیجه، نسخه های پشتیبان همیشه باید نقش مهمی در برنامه ریزی سرور شما داشته باشند. ابزار/پروتکل همگام‌سازی rsync یکی از راه‌حل‌های پشتیبان‌گیری فراوان است.

    rsync چیست و چه کاربردی دارد؟

    نام rsync به پروتکل شبکه ای برای همگام سازی فایل ها اشاره دارد که در سال 1996 توسط اندرو تریجل (در میان دیگران) که پروژه سامبا را رهبری می کرد، توسعه یافت. علاوه بر پروتکل، ابزاری به همین نام وجود دارد که ارتباط روی پروتکل را تسهیل می کند. برنامه دارای مجوز GPL را می توان به صورت رایگان استفاده کرد و فایل ها را از یک فهرست منبع به دایرکتوری مورد نیاز – به صورت محلی یا از طریق یک شبکه عمومی منتقل می کند.

    اندازه فایل و زمان ایجاد همه فایل‌ها در پوشه مبدأ و هدف در طول همگام‌سازی با هم مقایسه می‌شوند، به طوری که هر فرآیند همگام‌سازی فقط فایل‌های تغییر یافته را کپی می‌کند. به همین دلیل، فرآیند پشتیبان گیری rsync یک نوع پشتیبان گیری افزایشی نامیده می شود که این مزیت را ارائه می دهد که نسخه پشتیبان سریع است و فضای ذخیره سازی کمی را اشغال می کند.

    rsync برای تمام سیستم عامل های استاندارد یونیکس مانند OS/2، Linux یا macOS در دسترس است. با استفاده از بسته‌بندی API Cygwin، می‌توان از آن در ویندوز مایکروسافت نیز استفاده کرد.

    سناریوهای استفاده معمول برای rsync شامل پشتیبان گیری از داده ها و تولید سرورهای آینه ای (تصاویر کامل سرور) و همچنین همگام سازی داده ها در شرکت هایی با مکان های مختلف و اتصالات داده ضعیف است. به طور خاص، عملکرد اخیر تقریباً به طور انحصاری توسط فناوری‌های ابری مدرن امروزی انجام می‌شود – همچنین به این دلیل که اتصالات داده ضعیف به طور فزاینده‌ای نادر می‌شوند.

    بکاپ گرفتن از سرور : مروری بر مهمترین گزینه های rsync

    ویژگی برجسته پشتیبان گیری rsync کارایی آنهاست. رویکرد افزایشی، استفاده از شبکه را به حداقل می‌رساند، که به‌ویژه برای فایل‌های بزرگ یک مزیت است – صرف نظر از اینکه تغییرات در فایل‌ها عمده یا حداقل باشد. به عنوان یک ابزار خط فرمان، rsync به طور پیش فرض از طریق ترمینال کنترل می شود – یا از طریق Command Prompt، اگر از rsync در یک دستگاه ویندوز استفاده می کنید. ورودی ها دارای نحو زیر هستند:

    rsync -(-)Options Source path Target path

    به عنوان مسیر منبع و مقصد، دایرکتوری شروع مربوطه و دایرکتوری را که می خواهید rsync برای ذخیره نسخه پشتیبان در آن قرار دهید، مشخص می کنید. می‌توانید با استفاده از گزینه‌هایی که به اختصار حروف یا نوشته شده‌اند، تنظیمات جداگانه‌ای را برای نسخه‌های پشتیبان rsync خود تعریف کنید.

    جدول زیر مهمترین پارامترهایی را که می توان با یکدیگر ترکیب کرد خلاصه می کند:

    OptionFunction
    -r, –recursiveپشتیبان گیری rsync همه زیرشاخه ها را در نظر می گیرد
    -u, –updateدستورالعمل پرش از فایل‌های جدیدتر در فهرست هدف نسبت به فهرست منبع
    -c, –checksumفایل های منبع و هدف را بر اساس چک سام ها تشخیص می دهد
    -l, –linksپیوندهای نمادین به این صورت کپی می شوند (و نه به عنوان فایل)
    -p, –permsمجوزهای فایل حفظ می شود
    -g, –groupمجوزهای فایل گروه حفظ می شود
    -t, –timesتمبرهای زمان فایل (آخرین تغییر) حفظ می شوند
    -o, –ownerمالکان فایل حفظ می شوند (فقط در صورتی که مدیران)
    -D, –devicesداده های دستگاه حفظ می شود
    -z, –compressفشرده سازی خودکار فایل های منتقل شده
    –compress-level=NUMسطح فشرده سازی را تعیین می کند. مقادیر (“NUM”) بین 0 (بدون فشرده سازی) و 9 (حداکثر فشرده سازی) امکان پذیر است
    -v, –verboseجزئیات جامع تر در طول فرآیندهای پشتیبان گیری
    -q, –quietپنهان کردن تمام جزئیات فرآیند پشتیبان گیری (به جز پیام های خطا)
    -a, –archiveحالت آرشیو به عنوان حالت استاندارد و مشابه با ترکیب گزینه های -rlptgoD استفاده می شود
    -n, –dry-runاجرای آزمایشی که در آن هیچ تغییر واقعی ایجاد نشده است
    -h, –helpمنوی کمکی (فقط می تواند بدون نشان دادن دایرکتوری های منبع و مقصد یا آرگومان های دیگر استفاده شود)
    –bwlimit=KBPSمحدود کردن پهنای باند (کیلو بایت در ثانیه)؛ به عنوان مثال، –bwlimit=30 (محدودیت 30 کیلوبیت بر ثانیه)
    –exclude=SAMPLEحذف یک الگو از همگام سازی؛ به عنوان مثال، – حذف پوشه نمونه (پوشه “پوشه نمونه” همگام سازی نشده است.)
    –deleteتمام فایل هایی که در دایرکتوری هدف هستند اما در دایرکتوری منبع نیستند را حذف کنید
    –progressمدت زمان پشتیبان گیری rsync و سرعت انتقال را نشان دهید
    –list-onlyلیست فایل ها به جای پشتیبان
    –statsگزارش جامع داده های منتقل شده (تعداد، اندازه)
    –max-size=SIZEحداکثر اندازه فایل را تعریف کنید. به عنوان مثال، –max-size=10MB (فقط فایل هایی با حجم تا 10 مگابایت منتقل می شوند.)
    –ignore-errorsاز لغو فرآیند پشتیبان گیری در صورت بروز خطا جلوگیری کنید

    بکاپ گرفتن از سرور : راه اندازی یک نسخه پشتیبان rsync در سرورهای لینوکس

    برای استفاده از rsync در سیستم عامل های لینوکس، پروتکل را در بسته ای به همین نام نصب کنید و با استفاده از دستورات ترمینال نسخه پشتیبان تهیه کنید. همچنین می توانید از برنامه هایی مانند Back In Time، rsnapshot (برای پشتیبان گیری خودکار معمولی) یا Unison برای کنترل فرآیند پشتیبان گیری از طریق یک رابط کاربری گرافیکی استفاده کنید. در مثال زیر با استفاده از اوبونتو، ما مهمترین مراحل برای راه اندازی فرآیندهای پشتیبان گیری با استفاده از rsync را به شما نشان می دهیم:

    rsync به طور پیش فرض در اوبونتو نصب می شود. اگر اینطور نیست، با استفاده از دستور زیر آن را نصب کنید.

    sudo apt-get install rsync

    هنگامی که rsync نصب می شود، از دستورات ترمینال مورد نیاز برای تعیین دایرکتوری های منبع و مقصد و گزینه های پشتیبان استفاده کنید. به عنوان مثال، می توانید حالت استاندارد (“Archive”) را به صورت زیر اجرا کنید:

    rsync -a Source directory Target directory

    بکاپ گرفتن از سرور : 5 سناریو محبوب rsync پشتیبان گیری

    هنگامی که دستورات اساسی را بدانید، rsync ابزاری برجسته برای کپی کردن فایل ها و تهیه نسخه پشتیبان است. می‌توانید تنظیمات فرمان فردی را آزمایش و اعمال کنید یا از ترکیبات ثابت شده پارامترهای rsync موجود استفاده کنید. به عنوان مثال، سناریوهای پشتیبان گیری rsync زیر بسیار محبوب هستند:

    پشتیبان گیری استاندارد با حالت آرشیو

    حالت بایگانی که همه فایل ها را از دایرکتوری منبع به دایرکتوری هدف کپی می کند (شامل همه زیر شاخه ها) و کلیه مجوزها، مهرهای زمانی و داده های دستگاه را حفظ می کند، در بسیاری موارد ایده آل ترین و ساده ترین راه حل است. زیرا گزینه های مختلف را در یک فایل ترکیب می کند. تک پارامتر اگر حالت را با پارامتر –v ترکیب کنید، اطلاعات وضعیت جامعی را نیز در طول فرآیند پشتیبان گیری دریافت خواهید کرد.

    rsync -av Source directory Target directory

    کپی یکسان از دایرکتوری منبع

    rsync نه تنها می‌تواند فایل‌ها را از A به B منتقل کند، بلکه می‌تواند کپی‌های یکسانی از پوشه‌ها یا کل فهرست‌ها ایجاد کند. پس از آرشیو استاندارد، فایل هایی که قبل از rsync در پوشه هدف قرار داشتند، اما در پوشه منبع نیستند، حذف می شوند.

    rsync -av --delete Source directory Target directory

    پشتیبان گیری به استثنای فایل هایی با فرمت خاص

    اگر می‌خواهید یک نسخه پشتیبان به استثنای فایل‌ها در قالب خاصی اجرا کنید، می‌توانید از دستور –exclude برای این کار استفاده کنید. این پارامتر به شما امکان می دهد یک الگوی کاراکتر فردی را تعریف کنید، که rsync از آن به عنوان نشانگر برای نادیده گرفتن یک فایل استفاده می کند. کد نمونه زیر فایل های متنی .txt را حذف نمی کند.

    rsync -av --exclude'*.txt' Source directory Target directory

    پشتیبان گیری از فایل ها با حداقل یا حداکثر اندازه تعریف شده

    اگر الگوی کاراکتر خاصی نمی‌خواهید، اما اندازه فایل بر حذف فایل‌های خاص در یک نسخه پشتیبان rsync تأثیر می‌گذارد، می‌توانید از پارامترهای –max-size و –min-size استفاده کنید. اگر از دستور زیر استفاده می کنید، فقط فایل های حداقل 10 مگابایت و حداکثر 100 مگابایت کپی می شوند:

    rsync -av --min-size=10MB --max-size=100MB Source directory Target directory

    پشتیبان گیری از جمله تبدیل فرمت کاراکتر

    ممکن است مجبور شوید فایل‌ها را به قالب کاراکتری متفاوت در فهرست هدف تبدیل کنید – برای مثال اگر می‌خواهید داده‌ها را از Mac به سرور لینوکس منتقل کنید. به طور استاندارد، دستگاه‌های اپل از UTF8-MAC استفاده می‌کنند که در سیستم‌های لینوکس در دسترس نیست و باعث ایجاد مشکلاتی در کاراکترهای خاص و umlaut می‌شود. گزینه –iconv به شما امکان می دهد رمزگذاری کاراکتر را به عنوان بخشی از فرآیند پشتیبان گیری rsync به راحتی تطبیق دهید (در مثال از UTF8-MAC تا UTF8):

    rsync -av --iconv=UTF8-MAC,UTF8 Source directory Target directory

    بکاپ گرفتن از سرور

    ترجمه شده توسط سایت دریای شرق از سایت
    کپی بدون ذکر نام و لینک سایت دریای شرق ممنوع است !

    بکاپ گرفتن از سرور

    About The Author