مقدمه
دستور rsync برای همگام سازی فایل های راه دور و محلی استفاده می شود. از الگوریتمی استفاده می کند که با انتقال بخشی از پرونده هایی که تغییر کرده اند ، مقدار داده های کپی شده را به حداقل می رساند. در این نوشته در قالب مثال هایی این ابزار را معرفی می کنم.
سنتکس پایه
سنتکس پایه این دستور همانند دستور cp و mv در لینوکس می باشد. برای شروع دو پوشه dir1 و dir2 را ایجاد می کنیم در درون پوشه dir1 با استفاده از دستور touch صد فایل خالی با نام های file1 ... file100 تولید می کنیم.
cd ~
mkdir dir1
mkdir dir2
touch dir1/file{1..100}
با استفاده از دستور ls می توانید محتوی پوشه dir1 ، که شامل ۱۰۰ فایل است را مشاهده کنید.
ls dir1
پوشه dir2 هنوز خالی است حال با استفاده دستور rsync محتوی پوشه dir1 و dir2 را همگام (همسان) می کنیم. اینجا به جای واژه کپی از واژه همگام استفاده کردم چون همگام سازی فقط فایل هایی را به مقصد ارسال می کند که اصلاح شده اند.
rsync -r dir1/ dir2
دستور فوق محتوی پوشه dir1 را به پوشه dir2 منتقل می کند به کاراکتر / در جلوی dir1 دقت کنید در صورتی که این کارکتر در دستور نباشد به جای محتوی پوشه dir1 خود پوشه dir1 با محتوایش درون پوشه dir2 منتقل خواهد شد.
از کلید هایی مختلف می توان برای تغییر در حالت پیش فرض دستور استفاده کرد:
انتقال بر روی ماشین از راه دور
یکی از قابلیت های پر کاربرد این دستور انتقال اطلاعات بر روی ماشین های راه دور است. مثال با دستور زیر محتوی پوشه dir1 به پوشهdestination_directory در ماشین با نام remote_host و کاربری username منتقل می شود.
rsync -a ~/dir1 username@remote_host:destination_directory
برای دریافت فایل های از ماشین راه دور کافی است جای مبدا و مقصد به درستی مشخص شود.
جمع بندی
با استفاده از ابزار rsync می توان وظایف مختلف پشتیانگیری را بر روی ماشین های شبکه طراحی و پیاده سازی کرد.
دستور rsync دارای قابلیت ها و گزینه های مختلفی دارد که به فراخور نیاز می توانید از انها استفاده کنید.
منبع:
برای مطالعه بیشتر و دسترسی به مقالات در همین حوزه می توانید به ادرس زیر مراجعه کنید.