숀패밀리

lsync 사용하기

· 14년 전 · 806
요구환경 
 
kernel 2.6.13 이상 버전
rsync package
libxml2 package
libxml2-devel package
lsync 사용법

lsyncd [OPTION]... [SOURCE] [TARGET 1] [TARGET 2] ...
[SOURCE] => 동기화시 원본이 존제하는 위치 /home/test/
[TARGET X] => 동기화가 필요한 서버 192.168.0.3::HOME/test
[OPTION]
--binary FILE rsync 실행 파일 위치
--conf FILE 실행시 로드할 설정 파일명 (DEFAULT: /etc/lsyncd.conf.xml)
--debug 디버그를 위한 로그
--exclude-from FILE 동기화시 제외시킬 패턴의 옵섭
--logfile FILE 로그 파일위치
--no-daemon 포그라운드로 실행 시킴
--pidfile FILE pid 파일 생성위치


설정방법

슬레이브 서버

rsyncd를 서비스에 추가시켜 rsync접속이 가능하도록 한다

/etc/rsyncd.conf -->

[HOME]
path = /home/test
uid = root
gid = root
use chroot = yes
read only = no                      # 마스터에서 배포시 쓰기가 가능해야 한다
max connections = 4
hosts allow = 192.168.0.1         # 마스터 서버에서만 접속이 가능하도록 설정


위와 같이 마스터서버에서만 rsync 데몬만 이용할수있도록 하며 마스터에서 파일을 슬레이브로 쓰는 형태이므로 쓰기원한을 주어야한다

세팅후 rsync 데몬을 시작한다 .


마스터 서버

데몬 직접 띄우기
# lsyncd /home/test/ 192.168.0.3::HOME/test

설정파일을 이용하여 실행시키기
/etc/lsyncd.conf.xml 파일을 생성하여

<lsyncd version="1">
  <settings>
    <logfile      filename="/var/log/lsyncd"/>
    <binary       filename="/usr/bin/rsync"/>
    <callopts>
      <option text="-az%r"/>
      <option text="--delete"/>
    </callopts>
  </settings>
  <directory>
    <source path="/home/test/"/>
    <target path="192.168.0.2::HOME/"/>
  </directory>
</lsyncd>

설정 파일을 작성하고

/etc/rc.d/init.d/lsyncd 파일을 생성하여

#!/bin/bash
# description: lsyncd auto start script

start() {
  pid=`pidof lsyncd`
  if [ $? -eq 0 ]; then
    echo "lsyncd (pid $pid) is running..."
    echo " "
  else
    echo "Starting lsyncd..."
    echo " "
    /usr/bin/lsyncd
  fi
}


stop() {
  echo "Stopping lsyncd..."
  echo " "

   /bin/kill -9 `/sbin/pidof lsyncd`
   until [ -z $(/sbin/pidof lsyncd) ]; do :; done
}

case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  restart)
    stop
    start
    ;;
  status)
    pid=`pidof lsyncd`
    if [ $? -eq 0 ]; then
      echo "lsyncd (pid $pid) is running..."
      echo " "
    else
      echo "lsyncd is not running"
      echo " "
    fi
  ;;
  *)
  echo "Usage: lsyncd {start|stop|restart|status}"
  exit 1
esac

exit $?


/etc/rc.d/init.d/lsyncd start를 하게 되면 실행된다
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
14년 전 조회 3,257
14년 전 조회 1,051
14년 전 조회 1,560
14년 전 조회 1,175
14년 전 조회 1,038
14년 전 조회 3,583
14년 전 조회 2,553
14년 전 조회 2,170
14년 전 조회 2,090
14년 전 조회 853
14년 전 조회 1,660
14년 전 조회 859
14년 전 조회 777
14년 전 조회 812
14년 전 조회 1,247
14년 전 조회 1,272
14년 전 조회 1,876
14년 전 조회 1,018
14년 전 조회 1,250
14년 전 조회 1,381
14년 전 조회 1,388
14년 전 조회 732
14년 전 조회 1,954
14년 전 조회 1,091
14년 전 조회 1,429
14년 전 조회 1,160
14년 전 조회 1,529
14년 전 조회 1,640
14년 전 조회 1,037
14년 전 조회 1,262
14년 전 조회 1,571
14년 전 조회 1,641
14년 전 조회 963
14년 전 조회 1,143
14년 전 조회 1,833
14년 전 조회 2,964
14년 전 조회 2,209
14년 전 조회 2,262
14년 전 조회 1,702
14년 전 조회 1,495
14년 전 조회 1,400
14년 전 조회 1,141
14년 전 조회 610
14년 전 조회 1,551
14년 전 조회 4,598
14년 전 조회 1,515
14년 전 조회 1,298
14년 전 조회 798
14년 전 조회 1,019
14년 전 조회 806
14년 전 조회 697
14년 전 조회 776
14년 전 조회 794
14년 전 조회 744
14년 전 조회 1,599
14년 전 조회 919
14년 전 조회 760
14년 전 조회 717
14년 전 조회 789
14년 전 조회 1,097
14년 전 조회 986
14년 전 조회 1,634
14년 전 조회 1,204
14년 전 조회 3,651
14년 전 조회 880
14년 전 조회 1,480
14년 전 조회 1,176
14년 전 조회 2,970
14년 전 조회 2,574
14년 전 조회 753
14년 전 조회 1,757
14년 전 조회 771
14년 전 조회 2,512
14년 전 조회 2,117
14년 전 조회 688
14년 전 조회 5,833
14년 전 조회 1,058
14년 전 조회 1,624
14년 전 조회 1,408
14년 전 조회 1,385
14년 전 조회 1,307
14년 전 조회 1,313
14년 전 조회 1,118
14년 전 조회 1,473
14년 전 조회 1,890
14년 전 조회 906
14년 전 조회 1,287
14년 전 조회 2,299
14년 전 조회 2,141
14년 전 조회 1,113
14년 전 조회 1,630
14년 전 조회 4,128
14년 전 조회 854
14년 전 조회 2,847
14년 전 조회 1,621
14년 전 조회 2,022
14년 전 조회 1,230
14년 전 조회 1,004
14년 전 조회 995
14년 전 조회 1,140