گروه کاربران لینوکس دانشگاه شهید مدنی آذربایجان

لاگ دانشگاه آذربایجان :: Azarbaijan University Linux User Group

گروه کاربران لینوکس دانشگاه شهید مدنی آذربایجان

لاگ دانشگاه آذربایجان :: Azarbaijan University Linux User Group

پروژه یک

 

 

 

کاراکتر همگام آر ، به عنوان کاراکتر دور شناخته میشود . کاراکتر همگام آر ، به منظور گرفتن اطلاعات پشتیبانی در Unix /Linux استفاده میشود ‌.  آر سینک به منظور هماهنگ کردن فایل ها و داده ها راهنمای کتابخانه ای از یک محل به محل دیگر استفاده میشود . مکان اطلاعات بازیابی شده ممکن است بر روی یک گیرنده ی محلی و یا غیر محلی (دور ) قرار گیرد .

ویژگی های مهمrcync :

سرعت : در دفعات اول  ، rcync کل داده ها را بین اطلاعات اصلی کتاب خانه ای و داده های نهایی ، تکرار میکند .

در دفعات بعدی rcync تنها اطلاعات و بایت های  تغییر داده شده را به محل نهایی انتقال میدهد که این عامل سرعت انتقال داده را تسریع میکند .

امنیت : rcync به پنهان کردن داده ها توسط اس اس اِچ در طول انتقال آنها کمک میکند

پهنای باند کمتر : rsync  از فشرده سازی و آزاد سازی اطلاعات ( داده ها ) و ایجاد سد در مقابل در یافت و انتقال داده ها استفاده میکند . بنابر این پهنای باند استفاده شده توسط rsyncاز دیگر پروتکل ها کمتر میباشد .  

برتری : هیچ برتری به خصوصی لازمه ی اجرا و نصب rsync  نمیباشد .

$ rsync options source destination

 

مثال 1:منبع و مقصد به طور همزمان میتوانند محلی یا غیر محلی ( دور ) باشند ‌.

$ rsync -zvr /var/opt/installation/inventory/ /root/temp
building file list ... done
sva.xml
svB.xml
.
sent 26385 bytes  received 1098 bytes  54966.00 bytes/sec
total size is 44867  speedup is 1.63
$

 

 در مورد داده های جزئی ( غیر محلی ) اسم ورود ( passwordاسم جزئی سرور و محل آن باید شناسایی شود ‌.

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

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

$ ls -l /var/opt/installation/inventory/sva.xml /root/temp/sva.xml
-r--r--r-- 1 bin  bin  949 Jun 18  2009 /var/opt/installation/inventory/sva.xml
-r--r--r-- 1 root bin  949 Sep  2  2009 /root/temp/sva.xml

 

 مثال۲: ذخیره همزمان timestamps در همگام سازی با استفاده از rsync

گزینه ی  rsync _aمعرف یک حالت آرشیوی است .

در حال حاضر، اجرای همان فرمان ارائه شده در مثال 1 (اما با گزینه rsync -a) همانطور که در زیر نشان داده شده است:

 

همانطور که در زیر مشاهده میکنید، rsync در زمان همگامسازی تایمرهای زمانی را حفظ کرده است

$ rsync -azv /var/opt/installation/inventory/ /root/temp/
building file list ... done
./
sva.xml
svB.xml
.
sent 26499 bytes  received 1104 bytes  55206.00 bytes/sec
total size is 44867  speedup is 1.63
$

 

 

$ ls -l /var/opt/installation/inventory/sva.xml /root/temp/sva.xml
-r--r--r-- 1 root  bin  949 Jun 18  2009 /var/opt/installation/inventory/sva.xml
-r--r--r-- 1 root  bin  949 Jun 18  2009 /root/temp/sva.xml

 

مثال 3. همگام سازی تنها یک فایل

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

$ rsync -v /var/lib/rpm/Pubkeys /root/temp/
Pubkeys
 
sent 42 bytes  received 12380 bytes  3549.14 bytes/sec
total size is 12288  speedup is 0.99

 

مثال 4. هماهنگ سازی فایل ها از محلی تا جزئی .

آر سینک به شما اجازه می دهد تا فایل ها / دایرکتوری ها را بین سیستم محلی و جزئی همگام سازی کنید .

$ rsync -avz /root/temp/ thegeekstuff@192.168.200.10:/home/thegeekstuff/temp/
Password:
building file list ... done
./
rpm/
rpm/Basenames
rpm/Conflictname
 
sent 15810261 bytes  received 412 bytes  2432411.23 bytes/sec
total size is 45305958  speedup is 2.87

 

هنگام انجام هماهنگ سازی با سرور جزئی ، شما باید نام کاربری و آی پی آدرس سرور جزئی را مشخص کنید. شما همچنین باید راهنمای  مقصد را در سرور جزئی مشخص کنید. فرمت عبارت است از  نام کاربری @نام ماشین : مسیر

همانطور که در بالا مشاهده می کنید، در هنگام انجام rsync از محلی به سرور جزئی ;  درخواست رمز عبور می شود  

گاهی اوقات شما نمی خواهید رمز عبور را وارد کنید در زمانی که باز یابی اطلاعات از فایل ها از محلی به جزئی صورت میگیرد  به عنوان مثال، اگر یک متن پوسته پشتیبان دارید، که فایل ها را از سرور محلی به سرور جزئی با استفاده از rsync کپی می کند، نیازی به توانایی rsync برای وارد کردن رمز عبور نمیباشد

 

 

مثال 5: انطباق ;  سازی فایل ها از جزئی به محلی:

وقتی میخواهید فایلها را از جزئی; به محلی منطبق; کنید، مسیر جزئی; را در; منبع و محلی در مقصد مشخص کنید، همانطور که در زیر نشان داده شده است.

$ rsync -avz thegeekstuff@192.168.200.10:/var/lib/rpm /root/temp
Password:
receiving file list ... done
rpm/
rpm/Basenames
.
sent 406 bytes  received 15810230 bytes  2432405.54 bytes/sec
total size is 45305958  speedup is 2.87

 

 

مثال 6. برنامه های (موقت ) جزئی برای همگام سازی

ری سینک ;  به شما اجازه می دهد تا برنامه ; های جزئی را که می خواهید استفاده کنید مشخص کنید. شما می توانید rsync ssh را برای فعال کردن اتصال از راه دور ایمن استفاده کنید

از rsync -e ssh استفاده کنید تا مشخص کنید کدام برنامه جزئی ;  استفاده می شود. در این مورد، rsync از SSH استفاده خواهد کرد.

 

$ rsync -avz -e ssh thegeekstuff@192.168.200.10:/var/lib/rpm /root/temp
Password:
receiving file list ... done
rpm/
rpm/Basenames
 
sent 406 bytes  received 15810230 bytes  2432405.54 bytes/sec
total size is 45305958  speedup is 2.87

 

 

 

 

 

مثال ۷ : فایل های اصلاح شده را در مقصد رونویسی نکنید

در وضعیت همگام سازی معمولی، اگر یک فایل در مقصد تغییر کند، ممکن است ما نمی خواهیم فایل را با فایل قدیمی از منبع بازنویسی کنیم.

 

از rsync -u ابه این منظور میتوانید ستفاده کنید. (به این معنی که  فایل در مقصد را بازنویسی نکنید، اگر اصلاح شده باشد). در مثال زیر، فایل Basenames قبلا در مقصد اصلاح شده است. بنابراین، با rsync -u رونویسی نخواهد شد.

$ ls -l /root/temp/Basenames
total 39088
-rwxr-xr-x 1 root root        4096 Sep  2 11:35 Basenames
 
$ rsync -avzu thegeekstuff@192.168.200.10:/var/lib/rpm /root/temp
Password:
receiving file list ... done
rpm/
 
sent 122 bytes  received 505 bytes  114.00 bytes/sec
total size is 45305958  speedup is 72258.31
 
$ ls -lrt
total 39088
-rwxr-xr-x 1 root root        4096 Sep  2 11:35 Basenames

 

مثال ۸ : تنها ساختار درختی راهنما  را همگام سازی کنید  (نه فایل ها)

از گزینه rsync -d برای همگام سازی فقط درخت دایرکتوری از منبع به مقصد استفاده کنید. در مثال زیر، تنها ساختار درختی راهنما   با استفاده از روش بازگشتی هماهنگ شود، نه فایلهای موجود در فهرست راهنما .

$ rsync -v -d thegeekstuff@192.168.200.10:/var/lib/ .
Password:
receiving file list ... done
logrotate.status
CAM/
YaST2/
acpi/
 
sent 240 bytes  received 1830 bytes  318.46 bytes/sec
total size is 956  speedup is 0.46

 

مثال 9. مشاهده پیشرفت rsync در هنگام انتقال

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

 

گزینه rsync-progress نشان دهنده پیشرفت دقیقی از اجرای rsync است که در زیر نشان داده شده است.

$ rsync -avz --progress thegeekstuff@192.168.200.10:/var/lib/rpm/ /root/temp/
Password:
receiving file list ...
19 files to consider
./
Basenames
     5357568 100%   14.98MB/s    0:00:00 (xfer#1, to-check=17/19)
Conflictname
       12288 100%   35.09kB/s    0:00:00 (xfer#2, to-check=16/19)
.
.
.
sent 406 bytes  received 15810211 bytes  2108082.27 bytes/sec
total size is 45305958  speedup is 2.87

 

مثال 10. حذف فایل های ایجاد شده در هدف

اگر یک فایل در منبع وجود نداشته باشد، اما در هدف قرار داشته باشد ، ممکن است بخواهید فایل را در هنگام هدف گذاری  در rsync حذف کنید.

 

در این مورد، از گزینه -delete استفاده کنید همانطور که در زیر نشان داده شده است. گزینه حذف rsync حذف فایل هایی که در راهنمای کتابخانه ای مرجع وجود ندارد را انجام میدهد .

# Source and target are in sync. Now creating new file at the target.
$ > new-file.txt
 
$ rsync -avz --delete thegeekstuff@192.168.200.10:/var/lib/rpm/ .
Password:
receiving file list ... done
deleting new-file.txt
./
 
sent 26 bytes  received 390 bytes  48.94 bytes/sec
total size is 45305958  speedup is 108908.55

 

داده های هدف فایل جدیدی با عنوان file txt زمانی که با فایل هدف هماهنگی ایجاد میکنند ، دارند ، گزینه delete فایل txt را پاک میکند .

مثال 11. فایل جدید را در مقصد ایجاد نکنید

اگر دوست دارید، می توانید تنها فایل های موجود در هدف را به روز کنید (همگام سازی کنید). در صورتی که منبع دارای فایل های جدید است که در هدف وجود ندارد، می توانید از ایجاد این فایل های جدید در هدف جلوگیری کنید. اگر می خواهید این ویژگی، از گزینه -existing با دستور rsync استفاده کنید.

 

ابتدا فایل جدید-file.txt را در منبع اضافه کنید.

[/var/lib/rpm ]$ > new-file.txt

 

بعد، rsync را از هدف اجرا کنید .

$ rsync -avz --existing root@192.168.1.2:/var/lib/rpm/ .
root@192.168.1.2's password:
receiving file list ... done
./
 
sent 26 bytes  received 419 bytes  46.84 bytes/sec
total size is 88551424  speedup is 198991.96

 

اگر خروجی بالا را ببینید، فایل جدید new-file.txt را دریافت نکرده است .

 

مثال 12. مشاهده تغییرات بین منبع و مقصد

این گزینه برای مشاهده تفاوت در فایل ها یا دایرکتوری ها بین منبع و مقصد مفید است.

$ ls -l /var/lib/rpm
-rw-r--r-- 1 root root  5357568 2010-06-24 08:57 Basenames
-rw-r--r-- 1 root root    12288 2008-05-28 22:03 Conflictname
-rw-r--r-- 1 root root  1179648 2010-06-24 08:57 Dirnames

 

 

 

 

$ ls -l /root/temp
-rw-r--r-- 1 root root    12288 May 28  2008 Conflictname
-rw-r--r-- 1 bin  bin   1179648 Jun 24 05:27 Dirnames
-rw-r--r-- 1 root root        0 Sep  3 06:39 Basenames

 

در مثال بالا، بین منبع و مقصد، دو تفاوت وجود دارد. اول، مالک و گروه فایل Dirname متفاوت است. بعد، اندازه فایل های Basenames متفاوت است.

 

حالا اجازه دهید ببینیم چگونه rsync این تفاوت را نشان می دهد. گزینه -i تغییرات آیتم  را نمایش می دهد.

$ rsync -avzi thegeekstuff@192.168.200.10:/var/lib/rpm/ /root/temp/
Password:
receiving file list ... done
>f.st.... Basenames
.f....og. Dirnames
 
sent 48 bytes  received 2182544 bytes  291012.27 bytes/sec
total size is 45305958  speedup is 20.76

 

در خروجی 9 حرف در مقابل نام فایل یا نام دایرکتوری که نشان دهنده تغییرات است نمایش می دهد.

 

در مثال ما، حروف در مقابل BasenamesDirnames) موارد زیر را می گوید:

> specifies that a file is being transferred to the local host.
f represents that it is a file.
s represents size changes are there.
t represents timestamp changes are there.
o owner changed
g group changed.

 

مثال 13.  شامل   الگوی درج و انتقال فایل و ( همچنین ) خالی از آن است

rsync به شما اجازه می دهد تا الگوی مورد نظر خود را در هنگام انجام هماهنگ سازی به فایل ها و دایرکتوری ها اضافه یا از آن حذف کنید.

$ rsync -avz --include 'P*' --exclude '*' thegeekstuff@192.168.200.10:/var/lib/rpm/ /root/temp/
Password:
receiving file list ... done
./
Packages
Providename
Provideversion
Pubkeys
 
sent 129 bytes  received 10286798 bytes  2285983.78 bytes/sec
total size is 32768000  speedup is 3.19

 

در مثال بالا، این شامل تنها فایل ها یا دایرکتوری هایی است که از 'P' شروع می شوند (با استفاده از rsync include) و تمام فایل های دیگر را حذف می کند. (با استفاده از rsync exclude '*')

 

مثال 14. فایل های بزرگ را انتقال ندهید

شما می توانید با استفاده از  rsync  فایل هایی که بیشتر از یک اندازه خاص است را با استفاده از گزینه rsync -max-size از انتقال آن جلو گیری کنید .

$ rsync -avz --max-size='100K' thegeekstuff@192.168.200.10:/var/lib/rpm/ /root/temp/
Password:
receiving file list ... done
./
Conflictname
Group
Installtid
Name
Sha1header
Sigmd5
Triggername
 
sent 252 bytes  received 123081 bytes  18974.31 bytes/sec
total size is 45305958  speedup is 367.35

 

max-size = 100K باعث می شود rsync تنها فایل هایی را که کمتر از 100K هستند و یا مساوی آنها را داشته باشند انتقال دهد. شما می توانید برای مگابایت و G برای گیگابایت را نشان دهید.

 

مثال 15. انتقال فایل کامل

یکی از ویژگی های اصلی rsync این است که تنها انتقال بلوک ( سد )  های تغییر یافته را  به مقصد  به جای ارسال کل فایل انجام می دهد.

 

اگر پهنای باند شبکه مسئله ای برای شما نیست (اما CPU است)، شما می توانید کل فایل را با استفاده از گزینه rsync -W منتقل کنید. این باعث می شود روند rsync را سریعتر کند، زیرا لازم نیست که مجموعه اطلاعاتی  را در منبع و مقصد اجرا و منتقل کند .[1]

#  rsync -avzW  thegeekstuff@192.168.200.10:/var/lib/rpm/ /root/temp
Password:
receiving file list ... done
./
Basenames
Conflictname
Dirnames
Filemd5s
Group
Installtid
Name
 
sent 406 bytes  received 15810211 bytes  2874657.64 bytes/sec
total size is 45305958  speedup is 2.87

 

: https://www.thegeekstuff.com/2010/09/rsync-command-examples/ [1]

 

 

 

یاسر نیکی و محمد رضا مظلومی

 

 

 

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد