hdh li nux-rsync-pham tan khai

10
BỘ GIÁO DỤC VÀ ĐÀO TẠO Cấu hình RSYNC

Upload: nguoi-tu-hanh

Post on 17-Nov-2015

29 views

Category:

Documents


8 download

DESCRIPTION

cai dat RSYNC

TRANSCRIPT

  • B GIO DC V O TO

    Cu hnh

    RSYNC

  • GV hng dn: H Hu Trung

    Sinh vin: Phm tn Khi

    MSSV: 1051020018

    Lp: 11Dthm Mc lc:

    1. Gii thiu:

    2. Ci t & cu hnh

    3. Chp hnh & demo

    I. Gii thiu:

    1. Tin ch rsync thng c dng to backup trong mi trng UNIX/Linux. N s ng b ha d liu t th mc ny n th mc khc trn cng mt server, hoc backup d liu t server ny n server khc

    2. Tc : Rsync s thc hin ng b ha gia hai ni bng cch copy theo block (theo khi trn cng) ch khng phi copy theo tng file (Rsync cng h tr copy theo tng file). Tuy nhin khi thc hin trn block s cho tc nhanh hn nhiu cc phng thc khc.

  • 3. Bo mt: Trong qu trnh truyn d liu, Rsync cho php s dng m ha d liu s dng qua ssh nn data khi truyn s c bo mt tt hn.

    4. Bandwidth: Khi rsync bng cc option c bn, n cho php nn d liu v khi sang bn ch n s gii nn. Qu trnh nn cng theo block do vy bng thng s gim ti a. Tuy nhin qu trnh nn v gii nn gy ra tn thi gian. Do vy nu bng thng ca mng ln, rsync s c ty chn khng nn khi truyn, tng tc thi gian ng b ha.Khi ci t v thc thi rsync, n khng cn cp bt c quyn no c bit. Ch nh mt cng c bnh thng, rt d dng s dng v tin li.

    5. C php: rsync -options source destination 1. ng b 2 th mc trn cng mt server # mkdir /tmp/ssh # rsync -zvr /etc/ssh/ /tmp/ssh -z : Bt tnh nng nn -v : verbose -r : p dng vi cc th mc con ( qui) Vi cc option trn th cc thuc tnh ca cc file (thi gian) s khng c gi nguyn khi n copy n th mc ch. # ls -l /etc/ssh /tmp/ssh 2. Gi cc thuc tnh bng cch s dng option -a # mkdir /tmp/ssh2 # rsync -avz /etc/ssh/ /tmp/ssh2 # ls -l /etc/ssh /tmp/ssh2 3. ng b cc file t Local server sang Remote server # rsync -avz /etc/ssh [email protected]:/tmp/ssh 4. ng b cc file t Remote server v Local server # rsync -avz [email protected]:/etc/ssh /tmp/ssh 5. Remote shell for Synchronization S dng options -e ssh s dng ssh khi sync # rsync -avz -e ssh [email protected]:/etc/ssh /tmp/ssh 6. Khng ghi d liu ch S dng option -u trong trng hp ch mun ng b nhng file, folder cha tn ti server ch. Nhng file tn ti ( c ng b ri) th khng ng b na. 7. Ch ng b cy th mc (khng ng b file) S dng option -d # rsync -v -d [email protected]:/etc/ssh /tmp/ssh 8. Xa cc file, folder ch. S dng option --delete nu mun ng b hon ton gia 2 ni, cc file, folder ch m khng tn ti server ngun s b xa b m bo server ch l bn sao hon chnh ca server ngun. # rsync -avz --delete [email protected]:/etc/ssh /tmp/ssh 9. Gii hn kch c files khi ng b S dng option -max-size V d: Ch transfer cc file c size nh hn hoc bng100K # rsync -avz -max-size=100K [email protected]:/etc/ssh /tmp/ssh 10. Transfer files thay v transfer block Qu trnh copy data gia hai server thc hin bng copy block. Nu mng c bng thng rng, CPU mnh, c th s dng option -W copy theo file.

  • # rsync -avzW [email protected]:/etc/ssh /tmp/ssh

    II. Ci t & cu hnh

    1. bi tm hiu ny s yu cu:

    a. Phn mm vm-ware 10.0

    b. 1 my o HH centOS 5.6 chnh IP: 192.168.85.134

    c. 1 my o HH centOS 5.6 ph IP: 192.168.85.135

    d. My o c kt ni Internet s dng lnh YUM

    2. Ci t:

    Yu cu t ra:

    ng b ha d liu mt cch t ng th mc /var/www/ t server chnh sang server ph

    a. Trn my centOS 5.6 chnh (192.168.85.34)

    M Terminal v g lnh:

    rpm qa | grep rsync kim tra gi RSYNC ci t hay cha.

    Nu cha ta ci t RSYNC vi YUM:

    yum install rsync

    Kim tra ssh (ng b khng cn nhp password)

    # rpm qa | grep ssh

  • Nu cha c

    # yum install openssh

    b. Tng t trn my centOS 5.6 ph (192.168.85.135)

    M terminal v g lnh

    # rpm qa | grep rsync

    Nu cha c th

    # yum install rsync

    Kim tra ssh (ng b khng cn nhp password)

    # rpm qa | grep ssh

    Nu cha c

    # yum install openssh

    To ti khon thc hin rsync:

    Thc hin trn server chnh bng quyn root. V d y mnh to ti khon tn l syntest

    # useradd -d /home/syntest -m -s /bin/bash syntest

    Lnh trn s to ti khon syntest vi th mc gc l /home/syntest v login ch

    /bin/bash. Sau , ta tin hnh t mt khu cho ti khon syntest bng lnh:

    # passwd syntest

    Th rsync: Thc hin trn server ph bng quyn root

    # rsync -avz -e ssh [email protected]:/var/www//root/Desktop/backup

    Lnh trn yu cu bn nhp mt khu ca ti khon syntest. Sau khi thc hin thnh cng,

    bn vo th mc /root/Desktop/backup thuc server ph th s thy th mc www c

    copy sang.

    To key xc thc khng cn nhp mt khu khi thc hin rsync: Thc hin trn server

    ph bng quyn root

    # mkdir /root/rsync

    # ssh-keygen -t dsa -b 1024 -f /root/rsync/mirror-rsync-key

    Lu khi yu cu nhp passphrase, bn khng cn in g c ch cn nhn Enter

    Tip theo ta chp public key t server ph sang server chnh

    # scp /root/rsync/mirror-rsync-key.pub [email protected]:/home/syntest/

    Cu hnh dch v SSH chp nhn kiu chng thc bng key: Thc hin trn server chnh

    bng quyn root

    # vi /etc/ssh/sshd_config

  • PubkeyAuthentication yes

    AuthorizedKeysFile .ssh/authorized_keys

    Cu hnh server chnh: Thc hin trn server chnh bng quyn syntest

    # mkdir ~/.ssh

    # chmod 700 ~/.ssh

    # mv ~/mirror-rsync-key.pub ~/.ssh/

    # cd ~/.ssh

    # touch authorized_keys

    # chmod 600 authorized_keys

    # cat mirror-rsync-key.pub >> authorized_keys

    Cc lnh trn dng chn ni dung ca mirror-rsync-key.pub vo tp tin

    /home/syntest/.ssh/authorized_keys

    Th nghim rsync bng key: Thc hin trn server ph bng quyn root

    rsync -avz --delete -e "ssh -i /root/rsync/mirror-rsync-key"

    [email protected]:/var/www/ /root/Desktop/backup

    Nu thnh cng th tin trnh ng b d liu s c thc thi m khng yu cn bn nhp

    mt khu

    Lp lch chy ng b t ng: Thc hin trn server ph bng quyn root

    # crontab -e

    Nhp ni dung nh sau

    */5 * * * * /usr/bin/rsync -avz --delete -e "ssh -i /root/rsync/mirror-rsync-key"

    [email protected]:/var/www/ /root/Desktop/backup

    Lu : c sau mi 5 pht th lnh trn t ng thc hin 1 ln

    III. nh thc nghim

  • 1. Server chnh 192.168.158.134

    2. Server ph 192.168.58.135

  • 3. Ping 2 my vi nhau

    4. Lnh rsync vi ssh

    # rsync -avz --delete -e "ssh -i /root/rsync/mirror-rsync-key"

    [email protected]:/var/www/ /root/Desktop/backup/

  • Kt qu lnh

    5. Rsync khng c key ssh

    # rsync -avz -e ssh [email protected]:/var/www /root/Desktop/backupnew

    V cha c key xc thc nn server yu cu mt khu ca ti khon syntest

  • Mt khu syntest: 123

    Kt qu lnh trn

    6. Thit lp rsync t ng vi lnh # crontab e

    */5 * * * * /usr/bin/rsync avz delete e ssh i /root/rsync/mirror-rsync-key

    [email protected]:/var/www/ /root/Desktop/backup

    C mi 5 pht th server ph s t ng chy rsync