منبع اصلی نوشتار زیر در این لینک قرار دارد

معرفی و راهنمای استفاده از rsync

از موارد مهم در مدیریت سرور انتقال داده و Synchronize اطلاعات بین سیستم‌های داخل شبکه می‌باشد. یکی از ابزارهای بسیار کارآمد برای انتقال و Sync کردن داده‌ها دایرکتوری‌ها و پرونده‌ها در سیستم‌های یونیکسی و لینوکسی rsync می‌باشد.

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

یک ویژگی بسیار جالب و کارآمد rsync برای Synchronize کردن قابلیت quick check در این نرم‌افزار می‌باشد که فایل‌هایی که نیاز به انتقال دادن دارند را شناسایی و منتقل خواهد کرد که برای این کار آخرین تاریخ ویرایش پرونده، تغییر حجم و … را مورد بررسی قرار داده و انتقال را انجام می‌دهد.

برخی از ویژگی‌ها و قابلیت‌های rsync
۱. پشتیبانی برای کپی کردن لینک‌ها، دیوایس‌ها، Ownerها، گروه‌ها و حقوق دسترسی.
۲. قابلیت Exclude کردن یک مسیر مشخص برای جلوگیری از کپی شدن اطلاعات.
۳. قابلیت استفاده از ssh و rsh برای انتقال داده.
۴. عدم نیاز به حق دسترسی root.
۵. امکان محدود کردن منابع برای انتقال داده.
و …

چطور rsync رو نصب کنم ؟

برای نصب rsync می‌توانید روش‌های زیر استفاده کنید.

 

برای دبین (Debian) یا اوبونتو گنو/لینوکس (Ubuntu GNU/Linux):

# apt-get install rsync

برای ردهت (RHEL):

# up2date rsync

و اگر سیستم شما CentOS یا Fedora می‌باشد:

# yum install rsync

خوب؛ اکنون که با ویژگی‌ها و کارایی‌های rsync آشنا شدیم بهتره بریم سراغ روش استفاده از آن، Syntax استفاده از آن به این صورت می‌باشد:

# rsync options source destination

-options: آپشن‌های مورد استفاده
-source: آدرس در مبدا
-destination: آدرس در مقصد

برخی از Optionهای مورد استفاده در rsync:

-a : آدرشیو کردن داده‌ها
-p : حفظ مجوزها
-v : نمایش جزئیات انتقال
-d : انتقال ساختار شاخه‌ها
-r : انتقال شاخه‌ها و زیر شاخه‌ها
-z : فشرده سازی داده ها در زمان انتقال
-e “ssh options” : انتقال توسط
–max-size=’100K’ : انتقال فایل‌های زیر ۱۰۰ کیلوبایت
–existing : انتقال فقط فایل‌های مشابه
–delete : پاک کردن فایل‌های سینک شده

با تعدادی مثال با این دستور بیشتر آشنا خواهید شد، پس با من همراه باشید …

 

۱. کپی کردن یک فایل از کامپیوتر لوکال به یک سرور راه دور:

کپی فایل /home/mohammad/boozary.tar.gz به سرور ssh.boozary.org

# rsync -v -e ssh /home/mohammad/boozary.tar.gz ssh.boozary.org:/home/mohammad/

 

۲. کپی کردن فایل از یک سرور راه دور به کامپیوتر لوکال:
کپی فایل /home/boozary2.tar.gz از سرور ssh.boozary.org به کامپیوتر لوکال

# rsync -v -e ssh root@ssh.boozary.org:/home/boozary2.tar.gz /home/mohammad/

 

۳. فقط انتقال شاخه‌ها و زیر شاخه‌ها بدون فایل‌ها:
توسط آپش -d می‌توانید این کار را انجام دهید.

# rsync -v -d root@ssh.boozary.org:/home/boozary/ /home/mohammad/sites/boozary/

و به این شکل ساختار درختی دایرکتوری‌ها از /home/boozary سرور ریموت به /home/mohammad/sites/boozary منتقل خواهند شد.

 

۴. فقط انتقال فایل‌های مشابه:
گاهی پیش آمده که در دایرکتوری مبدا یک سری فایل وجود داشته که بودن آن‌ها در مسیر مقصد لازم نیست و فقط فایل‌های مشابه بین مبدا و مقصد نیاز به Synchronize شدن دارند.

# rsync -avz --existing root@ssh.boozary.org:/home/boozary/ /home/mohammad/sites/boozary/

به این صورت اگر فایلی را در ssh.boozary.org:/home/boozary/ ایجاد کنیم که در آدرس تعیین شده محلی موجود نباشد توسط آپشن –existing انتقال داده نخواهد شد.

 

۵. عدم انتقال فایل‌های حجیم:

# rsync -avz --max-size='100K' root@ssh.boozary.org:/home/boozary/ /home/mohammad/sites/boozary/

آپشن –max-size به ما کمک کرده تا فایل‌هایی که بیشتر از ۱۰۰ کیلوبایت هستند را انتقال ندهیم.

 

۶. نمایش پروسه‌ی انتقال:

# rsync -apvz --progress /home/mohammad/ /home/boozary/

در این‌جا با استفاده از –progress می‌تونیم اطلاعات مربوط به انتقال داده را مشاهده کنیم، از جمله: سرعت، زمان انتقال و …

وب‌سایت Rsync
معرفی Rsync در ویکی‌پدیا



برچسب ها : , , , , , , , , , , , , , ,

به سیاره لینوکس امتیاز دهید

به اين صفحه امتياز دهيد