استفاده از rsync از طریق شبکه
یکی از زیبایی های واقعی rsync این است که می توان از آن برای کپی فایل ها از طریق شبکه استفاده کرد. پس از همه، "r" در rsync مخفف عبارت "Remote" است. کپی از راه دور می تواند به یکی از دو روش انجام شود. راه اول با سیستم دیگری است که دارد rsync نصب شده، همراه با یک برنامه پوسته راه دور مانند SSH. فرض کنید ما یک سیستم دیگر در شبکه محلی خود با a داشتیم
فضای موجود در هارد دیسک زیاد بود و ما می خواستیم عملیات پشتیبان گیری خود را با استفاده از سیستم راه دور به جای درایو خارجی انجام دهیم. با فرض اینکه قبلاً یک دایرکتوری به نام داشته باشد /پشتیبان گیری جایی که میتوانیم فایلهایمان را تحویل دهیم، میتوانیم این کار را انجام دهیم:
[me@linuxbox ~]$ sudo rsync -av --delete --rsh=ssh /etc /home
/usr/local remote-sys:/backup
[me@linuxbox ~]$ sudo rsync -av --delete --rsh=ssh /etc /home
/usr/local remote-sys:/backup
ما دو تغییر در دستور خود ایجاد کردیم تا کپی شبکه را تسهیل کنیم. اول، ما اضافه کردیم
گزینه --rsh=ssh، که به rsync دستور می دهد از برنامه ssh به عنوان پوسته راه دور خود استفاده کند. به این ترتیب، ما توانستیم از یک تونل رمزگذاری شده ssh برای انتقال امن داده ها از سیستم محلی به میزبان راه دور استفاده کنیم. دوم، ما میزبان راه دور را با پیشوند نام آن (در این مورد میزبان راه دور remote-sys نامیده می شود) به نام مسیر مقصد مشخص کردیم.
راه دوم که rsync می توان از آن برای همگام سازی فایل ها از طریق شبکه استفاده کرد سرور rysnc. rsync را می توان طوری پیکربندی کرد که به صورت دیمون اجرا شود و به درخواست های دریافتی برای همگام سازی گوش دهد. این اغلب برای امکان انعکاس یک سیستم از راه دور انجام می شود. برای مثال، Red Hat Software مخزن بزرگی از بستههای نرمافزاری را برای توزیع فدورا خود در حال توسعه نگهداری میکند. برای آزمایش کنندگان نرم افزار مفید است که این مجموعه را در مرحله آزمایش چرخه انتشار توزیع منعکس کنند. از آنجایی که فایلهای موجود در مخزن به طور مکرر تغییر میکنند (اغلب بیش از یک بار در روز)، بهتر است یک آینه محلی با همگامسازی دورهای نگهداری شود، نه با کپی انبوه مخزن. یکی از این مخازن در Georgia Tech نگهداری می شود. میتوانیم آن را با استفاده از کپی محلی خود منعکس کنیم rsync و سرور rsync آنها مانند این است:
[me@linuxbox ~]$ mkdir fedora-devel
[me@linuxbox ~]$ rsync -av --delete rsync://rsync.gtlib.gatech.edu/fe dora-linux-core/development/i386/os fedora-devel
[me@linuxbox ~]$ mkdir fedora-devel
[me@linuxbox ~]$ rsync -av --delete rsync://rsync.gtlib.gatech.edu/fe dora-linux-core/development/i386/os fedora-devel
در این مثال، ما از URI سرور rsync راه دور استفاده می کنیم که از یک پروتکل (rsync://، و به دنبال آن نام میزبان راه دور (rsync.gtlib.gatech.edu) که با نام مسیر مخزن دنبال می شود.