Rsync (Amuṣiṣẹpọ Latọna jijin): Awọn apẹẹrẹ Iṣe 10 ti Rsync Command ni Linux


Rsync (Sync Remote) jẹ aṣẹ ti o wọpọ julọ ti a lo fun didakọ ati mimuṣiṣẹpọ awọn faili ati awọn ilana itọnisọna latọna jijin bii agbegbe ni awọn ọna ṣiṣe Linux/Unix. Pẹlu iranlọwọ ti aṣẹ rsync o le daakọ ati muuṣiṣẹpọ data rẹ latọna jijin ati ni agbegbe kọja awọn ilana, kọja awọn disiki ati awọn nẹtiwọọki, ṣe awọn afẹyinti data ati didan laarin awọn ero Linux meji.

Nkan yii ṣalaye ipilẹ 10 ati ilosiwaju ti aṣẹ rsync lati gbe awọn faili rẹ latọna jijin ati ni agbegbe ni awọn ero orisun Linux. O ko nilo lati jẹ olumulo olumulo lati ṣiṣẹ pipaṣẹ rsync.

  1. O daakọ daradara ati muuṣiṣẹpọ awọn faili si tabi lati eto latọna jijin.
  2. Ṣe atilẹyin awọn didakọ awọn ọna asopọ, awọn ẹrọ, awọn oniwun, awọn ẹgbẹ ati awọn igbanilaaye.
  3. O yarayara ju scp (Idaabobo Aabo) nitori rsync nlo ilana imudojuiwọn-latọna jijin eyiti o fun laaye lati gbe awọn iyatọ laarin awọn ọna meji ti awọn faili nikan. Ni akoko akọkọ, o daakọ gbogbo akoonu ti faili kan tabi itọsọna kan lati orisun si ibi-ajo ṣugbọn lati akoko miiran, o ṣe idaako awọn bulọọki ti o yipada ati awọn baiti si ibi-ajo naa nikan.
  4. Rsync n gba bandiwidi ti o kere si bi o ti nlo funmorawon ati ọna imukuro lakoko fifiranṣẹ ati gbigba data pari awọn ipari mejeeji.

# rsync options source destination

  1. -v: ọrọ-ọrọ
  2. -r: daakọ data ni ifaseyin (ṣugbọn maṣe tọju awọn akoko ati igbanilaaye lakoko gbigbe data
  3. -a: ipo iwe ifi nkan pamosi, ipo iwe-ipamọ ngbanilaaye didakọ awọn faili leralera ati pe o tun tọju awọn ọna asopọ apẹẹrẹ, awọn igbanilaaye faili, olumulo & awọn ohun-ini ẹgbẹ ati awọn ami-akọọlẹ
  4. -z: compress data faili
  5. -h: kika eniyan, awọn nọmba o wu ni ọna kika kika eniyan

A le fi sori ẹrọ package rsync pẹlu iranlọwọ ti pipaṣẹ atẹle.

# yum install rsync (On Red Hat based systems)
# apt-get install rsync (On Debian based systems)

1. Daakọ/Ṣiṣẹpọ Awọn faili ati Itọsọna Agbegbe

Aṣẹ atẹle yii yoo mu faili kan ṣiṣẹpọ lori ẹrọ agbegbe lati ipo kan si ipo miiran. Nibi ni apẹẹrẹ yii, orukọ faili backup.tar nilo lati daakọ tabi muṣiṣẹpọ si/tmp/awọn afẹyinti/folda.

 rsync -zvh backup.tar /tmp/backups/

created directory /tmp/backups

backup.tar

sent 14.71M bytes  received 31 bytes  3.27M bytes/sec

total size is 16.18M  speedup is 1.10

Ninu apẹẹrẹ loke, o le rii pe ti ibi-ajo ko ba si tẹlẹ rsync yoo ṣẹda itọsọna kan laifọwọyi fun ibi-ajo.

Aṣẹ atẹle yoo gbe tabi muṣiṣẹpọ gbogbo awọn faili ti lati itọsọna kan si itọsọna miiran ni ẹrọ kanna. Eyi ni apẹẹrẹ yii,/root/rpmpkgs ni diẹ ninu awọn faili package rpm ati pe o fẹ ki a daakọ itọsọna naa inu/tmp/backups/folda.

 rsync -avzh /root/rpmpkgs /tmp/backups/

sending incremental file list

rpmpkgs/

rpmpkgs/httpd-2.2.3-82.el5.centos.i386.rpm

rpmpkgs/mod_ssl-2.2.3-82.el5.centos.i386.rpm

rpmpkgs/nagios-3.5.0.tar.gz

rpmpkgs/nagios-plugins-1.4.16.tar.gz

sent 4.99M bytes  received 92 bytes  3.33M bytes/sec

total size is 4.99M  speedup is 1.00

2. Daakọ/Ṣiṣẹpọ Awọn faili ati Itọsọna si tabi Lati Olupin

Aṣẹ yii yoo muṣiṣẹpọ itọsọna kan lati ẹrọ agbegbe si ẹrọ latọna jijin. Fun apẹẹrẹ: folda wa ninu kọmputa agbegbe rẹ\"rpmpkgs" eyiti o ni diẹ ninu awọn idii RPM ati pe o fẹ pe akoonu itọsọna agbegbe ranṣẹ si olupin latọna jijin, o le lo aṣẹ atẹle.

[[email ]$ rsync -avz rpmpkgs/ [email :/home/

[email 's password:

sending incremental file list

./

httpd-2.2.3-82.el5.centos.i386.rpm

mod_ssl-2.2.3-82.el5.centos.i386.rpm

nagios-3.5.0.tar.gz

nagios-plugins-1.4.16.tar.gz

sent 4993369 bytes  received 91 bytes  399476.80 bytes/sec

total size is 4991313  speedup is 1.00

Aṣẹ yii yoo ran ọ lọwọ lati muuṣiṣẹpọ ilana itọsọna latọna jijin si itọsọna agbegbe kan. Nibi ni apẹẹrẹ yii, itọsọna kan/ile/tarunika/rpmpkgs eyiti o wa lori olupin latọna jijin ni a daakọ ni kọnputa agbegbe rẹ ni/tmp/myrpms.

 rsync -avzh [email :/home/tarunika/rpmpkgs /tmp/myrpms

[email 's password:

receiving incremental file list

created directory /tmp/myrpms

rpmpkgs/

rpmpkgs/httpd-2.2.3-82.el5.centos.i386.rpm

rpmpkgs/mod_ssl-2.2.3-82.el5.centos.i386.rpm

rpmpkgs/nagios-3.5.0.tar.gz

rpmpkgs/nagios-plugins-1.4.16.tar.gz

sent 91 bytes  received 4.99M bytes  322.16K bytes/sec

total size is 4.99M  speedup is 1.00

3. Rsync Lori SSH

Pẹlu rsync, a le lo SSH (Ikarahun ti o ni aabo) fun gbigbe data, ni lilo ilana SSH lakoko gbigbe data wa o le rii daju pe o ti gbe data rẹ ni asopọ ti o ni aabo pẹlu fifi ẹnọ kọ nkan ki ẹnikẹni ma le ka data rẹ lakoko gbigbe. lori okun waya lori intanẹẹti.

Paapaa nigba ti a ba lo rsync a nilo lati pese olumulo/ọrọ igbaniwọle lati ṣaṣeyọri iṣẹ yẹn pato, nitorinaa lilo aṣayan SSH yoo firanṣẹ awọn ibuwolu rẹ ni ọna ti paroko ki ọrọ igbaniwọle rẹ yoo ni aabo.

Lati ṣafihan ilana kan pẹlu rsync o nilo lati fun aṣayan\"- e" pẹlu orukọ ilana ti o fẹ lo. Nibi ni apẹẹrẹ yii, A yoo lo\"ssh" pẹlu aṣayan\"- e" ki o ṣe gbigbe data.

 rsync -avzhe ssh [email :/root/install.log /tmp/

[email 's password:

receiving incremental file list

install.log

sent 30 bytes  received 8.12K bytes  1.48K bytes/sec

total size is 30.74K  speedup is 3.77
 rsync -avzhe ssh backup.tar [email :/backups/

[email 's password:

sending incremental file list

backup.tar

sent 14.71M bytes  received 31 bytes  1.28M bytes/sec

total size is 16.18M  speedup is 1.10

4. Fihan Ilọsiwaju Lakoko Gbigbe Data pẹlu rsync

Lati ṣe afihan ilọsiwaju lakoko gbigbe data lati ẹrọ kan si ẹrọ oriṣiriṣi, a le lo aṣayan ‘-progress’ fun rẹ. O ṣe afihan awọn faili ati akoko to ku lati pari gbigbe.

 rsync -avzhe ssh --progress /home/rpmpkgs [email :/root/rpmpkgs

[email 's password:

sending incremental file list

created directory /root/rpmpkgs

rpmpkgs/

rpmpkgs/httpd-2.2.3-82.el5.centos.i386.rpm

           1.02M 100%        2.72MB/s        0:00:00 (xfer#1, to-check=3/5)

rpmpkgs/mod_ssl-2.2.3-82.el5.centos.i386.rpm

          99.04K 100%  241.19kB/s        0:00:00 (xfer#2, to-check=2/5)

rpmpkgs/nagios-3.5.0.tar.gz

           1.79M 100%        1.56MB/s        0:00:01 (xfer#3, to-check=1/5)

rpmpkgs/nagios-plugins-1.4.16.tar.gz

           2.09M 100%        1.47MB/s        0:00:01 (xfer#4, to-check=0/5)

sent 4.99M bytes  received 92 bytes  475.56K bytes/sec

total size is 4.99M  speedup is 1.00

5. Lilo ti -include and –exclude Awọn aṣayan

Awọn aṣayan meji wọnyi gba wa laaye lati ṣafikun ati yọ awọn faili kuro nipa sisọ awọn abawọn pẹlu aṣayan wọnyi ṣe iranlọwọ fun wa lati ṣọkasi awọn faili wọnyẹn tabi awọn ilana ilana eyiti o fẹ lati ṣafikun ninu amuṣiṣẹpọ rẹ ati ki o yọ awọn faili ati awọn folda kuro pẹlu iwọ ko fẹ gbe.

Nibi ni apẹẹrẹ yii, pipaṣẹ rsync yoo pẹlu awọn faili wọnyẹn ati itọsọna nikan eyiti o bẹrẹ pẹlu 'R' ati ya sọtọ gbogbo awọn faili ati itọsọna miiran.

 rsync -avze ssh --include 'R*' --exclude '*' [email :/var/lib/rpm/ /root/rpm

[email 's password:

receiving incremental file list

created directory /root/rpm

./

Requirename

Requireversion

sent 67 bytes  received 167289 bytes  7438.04 bytes/sec

total size is 434176  speedup is 2.59

6. Lilo ti Aṣayan -arẹ

Ti faili tabi itọsọna ko ba si ni orisun, ṣugbọn o wa tẹlẹ ni opin irin ajo, o le fẹ paarẹ faili/itọsọna ti o wa tẹlẹ ni ibi-afẹde lakoko mimuṣiṣẹpọ.

A le lo ‘–paarẹ’ aṣayan lati paarẹ awọn faili ti ko si nibẹ ni itọsọna orisun.

Orisun ati ibi-afẹde wa ni amuṣiṣẹpọ. Bayi ṣiṣẹda faili tuntun test.txt ni ibi-afẹde naa.

 touch test.txt
 rsync -avz --delete [email :/var/lib/rpm/ .
Password:
receiving file list ... done
deleting test.txt
./
sent 26 bytes  received 390 bytes  48.94 bytes/sec
total size is 45305958  speedup is 108908.55

Afojusun ni faili tuntun ti a pe ni test.txt, nigbati o ba ṣiṣẹpọ pẹlu orisun pẹlu aṣayan ‘-paarẹ, o yọ faili faili.txt kuro.

7. Ṣeto Iwọn Max ti Awọn faili lati gbe

O le ṣọkasi iwọn faili Max lati gbe tabi muṣiṣẹpọ. O le ṣe pẹlu aṣayan\"- iwọn-julọ". Nibi ni apẹẹrẹ yii, iwọn faili Max jẹ 200k, nitorinaa aṣẹ yii yoo gbe awọn faili wọnyẹn nikan ti o dọgba tabi kere ju 200k lọ.

 rsync -avzhe ssh --max-size='200k' /var/lib/rpm/ [email :/root/tmprpm

[email 's password:

sending incremental file list

created directory /root/tmprpm

./

Conflictname

Group

Installtid

Name

Provideversion

Pubkeys

Requireversion

Sha1header

Sigmd5

Triggername

__db.001

sent 189.79K bytes  received 224 bytes  13.10K bytes/sec

total size is 38.08M  speedup is 200.43

8. Ni Aifọwọyi Paarẹ Awọn faili orisun lẹhin Gbigbe aṣeyọri

Nisisiyi, ṣebi o ni olupin wẹẹbu akọkọ ati olupin igbasilẹ data, o ṣẹda afẹyinti ojoojumọ o si muṣiṣẹpọ pẹlu olupin afẹyinti rẹ, bayi o ko fẹ lati tọju ẹda agbegbe ti afẹyinti ni olupin ayelujara rẹ.

Nitorinaa, ṣe iwọ yoo duro de gbigbe lati pari ati lẹhinna paarẹ faili afẹyinti agbegbe wọn pẹlu ọwọ? Dajudaju Bẹẹkọ. Piparẹ adaṣe yii le ṣee ṣe nipa lilo aṣayan ‘–remove-orisun-faili’.

 rsync --remove-source-files -zvh backup.tar /tmp/backups/

backup.tar

sent 14.71M bytes  received 31 bytes  4.20M bytes/sec

total size is 16.18M  speedup is 1.10

 ll backup.tar

ls: backup.tar: No such file or directory

9. Ṣe Ṣiṣe Gbẹ pẹlu rsync

Ti o ba jẹ tuntun ati lilo rsync ati pe o ko mọ kini aṣẹ rẹ yoo ṣe. Rsync le ṣe idotin gaan awọn nkan ninu folda irin-ajo rẹ lẹhinna ṣiṣe atunṣe le jẹ iṣẹ ti o nira.

Lilo aṣayan yii kii yoo ṣe awọn ayipada nikan ṣe ṣiṣe gbigbẹ ti aṣẹ ati fihan iṣejade aṣẹ naa, ti o ba jẹ pe iṣẹjade fihan bakanna ni o fẹ ṣe lẹhinna o le yọ aṣayan ‘-dry-run’ kuro ni aṣẹ rẹ ati ṣiṣe awọn lori ebute.

[email ]# rsync --dry-run --remove-source-files -zvh backup.tar /tmp/backups/

backup.tar

sent 35 bytes  received 15 bytes  100.00 bytes/sec

total size is 16.18M  speedup is 323584.00 (DRY RUN)

10. Ṣeto Iwọn Bandwidth ati Gbigbe Faili

O le ṣeto opin bandiwidi lakoko gbigbe data lati ẹrọ kan si ẹrọ miiran pẹlu iranlọwọ ti aṣayan ‘-bwlimit’. Awọn aṣayan yii ṣe iranlọwọ fun wa lati fi opin si bandiwidi I/O.

 rsync --bwlimit=100 -avzhe ssh  /var/lib/rpm/  [email :/root/tmprpm/
[email 's password:
sending incremental file list
sent 324 bytes  received 12 bytes  61.09 bytes/sec
total size is 38.08M  speedup is 113347.05

Pẹlupẹlu, nipasẹ aiyipada awọn amuṣiṣẹpọ rsync awọn bulọọki ti a yipada ati awọn baiti nikan, ti o ba fẹ ni kedere fẹ lati mu gbogbo faili ṣiṣẹpọ lẹhinna o lo aṣayan '-W' pẹlu rẹ.

 rsync -zvhW backup.tar /tmp/backups/backup.tar
backup.tar
sent 14.71M bytes  received 31 bytes  3.27M bytes/sec
total size is 16.18M  speedup is 1.10

Iyẹn ni gbogbo pẹlu rsync bayi, o le wo awọn oju-iwe eniyan fun awọn aṣayan diẹ sii. Wa ni asopọ pẹlu Tecmint fun awọn iwunilori diẹ sii ti o nifẹ si ni ọjọ iwaju. Maṣe fi awọn asọye ati awọn imọran rẹ silẹ.