rsync 設定Linux下目錄同步[final]

tolywang發表於2010-09-07

 

1. 在目標機上生成public key  .

franklinstby$ cd  /home/oracle
franklinstby$ mkdir  .ssh
franklinstby$ chmod  700  .ssh
franklinstby$ cd  /home/oracle
franklinstby$ ssh-keygen  -t  rsa

然後可以看到 .ssh 目錄下生成有 id_rsa.pub 檔案。

 

2. 在源機器上家目錄.ssh下生成authorized_keys檔案,然後將目標機的
public key傳輸源機器已經存在 authorized_keys 檔案中.
備註: 10.17.113.18 是目標機的IP地址 。

franklindb$touch  authorized_keys
franklindb$ ssh 10.17.113.18 cat  ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 

 

3. 測試連通性  (備註: 10.17.113.15 是源庫的IP地址 )
franklinstby$ssh 10.17.113.15  date

 

4. 現在可以登入目標機器,開始測試rsync .

franklinstby$rsync -e ssh -av /data/frankdb/arch/   
receiving file list ... done
./
1_626_721631640.arc
1_627_721631640.arc
1_628_721631640.arc
1_629_721631640.arc
1_630_721631640.arc
1_631_721631640.arc
sent 349808 bytes  received 831141263 bytes  11013126.77 bytes/sec
total size is 1153840128  speedup is 1.39
franklinstby$ 


5. 設定crontab 及指令碼自動進行不同目錄的同步。

同步目錄中檔案的指令碼如下: 

#!/bin/bash

pid=`/sbin/pidof rsync`
if [ "$pid" ]
then
    echo
    echo "Starting rsync `date`"
    echo "Rsync is already running...."
else
    echo
    echo "Starting rsync `date`"
    rsync -e ssh -av   /data/frankdb/arch/
    echo "Completed rsync `date`"
fi

exit 0

 

6.  設定linux中的crontab (注意事先建立相應的目錄) 
*/10 * * * * bash /u01/run/rsync_arc 1>>/u01/run/log/rsync_arc.log  2>>/u01/run/log/rsync_arc.bad

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-672849/,如需轉載,請註明出處,否則將追究法律責任。

相關文章