آموزش پشتیبان گیری با rsync در لینوکس - وان سرور آکـادمی

آموزش پشتیبان گیری با rsync در لینوکس

زمان تقریبی مطالعه: 5 دقیقه

rsync یک دستور لینوکس است که میتوان از آن برای کپی و همگام ‌سازی فایل‌ ها و پوشه ‌ها از طریق دسترسی ریموت (Remote) یا به صورت لوکال (Local) استفاده کرد.

به طور کلی، استفاده از این دستور به ما امکان این را میدهد که کار های مختلف مرتبط با داده ‌ها مانند همگام سازی، کپی کردن و تهیه بکاپ را انجام دهیم.

در این مقاله آموزش پشتیبان گیری با rsync در لینوکس را به شما آموزش خواهیم داد.

پشتیبان گیری با rsync در لینوکس
دستور rsync

چرا از پشتیبان گیری با rsync استفاده کنیم؟

  • rsync از الگوریتم انتقال دلتا استفاده میکند تا فقط تفاوت بین فایل های منبع و فایل های موجود را به مقصد ارسال کند؛ همچنین از داده های کمتری در شبکه برای حفظ پهنای باند استفاده میکند.
  • ابزار rsync میتواند بیشتر کارها را برای شما انجام دهد و در عین حال ویژگی های فوق العاده ای را برای صرفه جویی در وقت اضافه میکند. حتی اگر در حین انتقال، اتصال شبکه را قطع کنید، این ابزار پس از برقراری مجدد اتصال، دقیقا از جایی که متوقف شده است، ادامه خواهد داد.
  • معمولا برای پشتیبان‌ گیری از مقادیر زیادی داده یا انتقال داده بین دو کامپیوتر استفاده میشود.
پشتیبان گیری با rsync در لینوکس

چگونه نسخه rsync را بررسی کنیم؟

 rsync با بسیاری از توزیع ‌های لینوکس از قبل نصب شده اند. برای بررسی اینکه آیا rsync  روی دیوایس شما نصب شده است یا خیر، دستور زیر را اجرا کنید:

rsync -version

چگونه rsync را نصب کنیم؟

اگر روی دستگاه یا سرور شما rsync از قبل نصب نشده، میتوانید آن را به صورت دستی در عرض چند دقیقه نصب نمایید. در توزیع های مبتنی بر دبیان مانند اوبونتو، میتوانید این کار را با استفاده از دستور زیر انجام دهید:

apt-get install rsync

رایج ترین دستورات Rsync کدام است؟

در ادامه لیستی از رایج ترین دستورات مورد استفاده را ملاحظه میکنید:

فعال کردن حالت آرشیو

-a, --archive

ایجاد یک خروجی بصری و نمایش پیشرفت

-v, --verbose

نمایش خروجی در قالبی نزدیک به صحبت انسان ها

-h, --human-readable format

فشرده سازی داده‌ها در حین انتقال

-z, --compress

کپی کردن داده‌ها به صورت بازگشتی

-r

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

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

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

مراحل پشتیبان گیری با rsync در لینوکس

1. یک دستگاه برای پشتیبان گیری تهیه کنید

برای تهیه نسخه پشتیبان کامل از سیستم، به دستگاهی نیاز دارید که فضای زیادی برای نگهداری همه فایل ها داشته باشد. یک دستگاه پشتیبان می تواند یک درایو متصل به صورت محلی، دستگاه شبکه یا فضای ذخیره سازی ابری مانند Amazon S3، Azure Spaces و غیره باشد.

یک دایرکتوری برای ذخیره نسخه پشتیبان در دستگاه پشتیبان ایجاد کنید. با فرض اینکه یک دیسک جداگانه در ماشین محلی خود نصب کرده اید که در پوشه /mnt نصب شده است.

$ mkdir /mmnt/full-backup

2. ابزار Rsync را نصب کنید

Rsync یک ابزار خط فرمان است که به همگام سازی محتوا بین دو مسیر یا همان دایرکتوری ها کمک میکند که آنها یا در سیستم لوکال وجود دارند یا یکی میتواند از راه دور باشد. شما میتوانید به سرعت با استفاده از بسته مدیریت پیش فرض در اکثر توزیع های لینوکس مدرن نصب کنید. برای نصب در سیستم های مبتنی بر دبیان، تایپ کنید:

$ sudo apt install rsync

3. از سیستم خود نسخه پشتیبان تهیه کنید

شما برای تهیه نسخه پشتیبان از سیستم کامل میتوانید دستور را مستقیما اجرا کنید. به عنوان مثال، برای ایجاد یک نسخه پشتیبان از سیستم در پوشه “/mnt/full-backup”، دستور زیر را اجرا کنید:

$ sudo rsync -aAXv / --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt/full-backup

دستور بالا از کل دایرکتوری root (/) به استثنای /dev، /proc، /sys، /tmp، /run، /mnt، /media، و /lost+found دایرکتوری ‌ها پشتیبان تهیه میکند و داده‌ها را در /mnt/ ذخیره میکند.

گزینه «-aAXv» برای اینکه فایل ‌ها در حالت «بایگانی» منتقل شوند، تضمین می‌کند پیوند های نمادین، دستگاه‌ ها، مجوز ها، مالکیت‌ها، زمان‌ های اصلاح، ACL(Linux Access Lists) ها و ویژگی ‌های توسعه ‌یافته حفظ میشوند استفاده میشود.

4. پشتیبان گیری را به حالت خودکار تنظیم کنید

برنامه ریزی کردن پشتیبان گیری خودکار راهکار خوبی برای پشتیبان گرفتن از داده هایمان میباشد. شما به سادگی می توانید دستور را در crontab اضافه کنید یا آنها را به صورت یک اسکریپت در Shell بنویسید و سپس اسکریپت را زمان بندی کنید.

#!/usr/bin/evn bash

BACKUP_PATH="/mnt/full-backup"
EXCLUDE_DIR='{"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"}'
SOURCE_DIR="/"

sudo rsync -aAXv ${SOURCE_DIR} --exclude=${EXCLUDE_DIR} ${BACKUP_PATH}

if [ $? -eq 0 ]; then
    echo "Backup completed successfully"
else
    echo "Some error occurred during backup"
fi

میتوانید با استفاده از ابزاری مانند cron، اسکریپت را برای اجرای خودکار برنامه ریزی کنید. این کار به شما این امکان را میدهد که بدون نیاز به اجرای دستی اسکریپت از سیستم خود نسخه پشتیبان تهیه کنید.

برای ثبت برنامه ریزی اسکریپت، crontab را ویرایش کنید:

$ crontab -e

 و سپس ورودی زیر را بنویسید:

0  6  *  *  *  bash backup.sh >> backup.log

و مطمئن شوید که نام و مسیر صحیح اسکریپت را به درستی ثبت کردید. برنامه بالا اسکریپت را در ساعت 6 صبح هر روز اجرا میکند. و در آخر هم متن اسکریپ را ذخیره کنید و برنامه را ببندید.

از دیگر مقالات و مطالب در این سایت دیدن کنید و حتما نظرات خودتونو با ما در میان بگذارید.

Rate this post