功能:

监控指定服务器的某个目录,自动同步至其它服务器

 

 
  
  1. #!/bin/bash 
  2. # author: honway.liu 
  3. # date: 2012-07-04 
  4. R1=61.147.88.114 
  5. R2=61.147.88.115 
  6. R3=222.186.32.15 
  7. DESTHOSTDIR=/data/mp3 
  8. SRCDIR=/data/music/mp3/song11 
  9. LOG=/var/tmp/mp3sync.log 
  10.  
  11. inotifywait -mr --timefmt '%d/%m/%y %H:%M' --format '%T %w %f' -e close_write,modify,delete,create,attrib $SRCDIR |  while read DATE TIME DIR FILE; do 
  12.  
  13.        FILECHANGE=${DIR}${FILE} 
  14.  
  15.        rsync -avz --password-file=/etc/rsyncd/rsyncd.pass $FILECHANGE darling@${R1}::root${DESTHOSTDIR} &>/dev/null && \ 
  16.        echo "At ${TIME} on ${DATE}, file $FILECHANGE was backed up via rsync" >> $LOG 
  17.  
  18.        rsync -avz --password-file=/etc/rsyncd/rsyncd.pass $FILECHANGE darling@${R2}::root${DESTHOSTDIR}  &>/dev/null && \ 
  19.        echo "At ${TIME} on ${DATE}, file $FILECHANGE was backed up via rsync" >> $LOG 
  20.  
  21.        rsync -avz --password-file=/etc/rsyncd/rsyncd.pass $FILECHANGE darling@${R3}::root${DESTHOSTDIR}  &>/dev/null && \ 
  22.        echo "At ${TIME} on ${DATE}, file $FILECHANGE was backed up via rsync" >> $LOG 
  23. done