Category Archives: 리눅스서버관리

rsync 사용 하기

rsync를 사용하면 손쉽게 데이터 미러링을 할 수 있습니다. 또한 증분 백업이 가능한 백업 시스템을 구축 할 수 있으며, 다수의 웹서버를 사용할 경우 웹페이지 배포등에 활용할 수 있습니다.

저는 백업 용도로 구성을 한번 해보겠습니다.

사용자 삽입 이미지위와 같이 파일 서버가 2대가 있고 그 정보를 백업할려는 백업 서버가 있습니다. 파일 서버에는 rsync 데몬을 실행하고 백업 서버에서는 rsync 명령으로 데이터를 끌어가면 됩니다.

FILE SERVER #1(192.168.0.1) ————————————————————————————
rsync는 xinetd 슈퍼 데몬에 얹혀 돌아갑니다. 데몬모드로 실행하기 위해 설정을 바꿔 봅시다.

$ vi /etc/xinetd.d/rsync

# default: off
# description: The rsync server is a good addition to an ftp server, as it \
#   allows crc checksumming etc.
service rsync
{
    disable = no
    socket_type     = stream
    wait            = no
    user            = root
    server          = /usr/bin/rsync
    server_args     = --daemon
    log_on_failure  += USERID
}

disable을 no로 바꾼후에 xinetd를 재시작 해줍니다.

$ service xinetd restart
xinetd 를 정지 중:                                        [  OK  ]
xinetd (을)를 시작 중:                                    [  OK  ]

nmap을 실행해 정상적으로 873번 포트가 떠있는지 확인해 봅시다.

$ nmap localhost

Starting Nmap 4.99 ( http://www.insecure.org/nmap/ ) at 2008-05-20 13:05 KST
Interesting ports on Theeye (127.0.0.1):
Not shown: 1672 closed ports
PORT     STATE SERVICE
873/tcp  open  rsync

Nmap finished: 1 IP address (1 host up) scanned in 0.105 seconds

/etc/rsyncd.conf 파일을 만들어 줍시다.

[file]
path = /home/file
comment = File server #1
uid = nobody
gid = nobody
use chroot = yes
read only = yes
host allow = 192.168.0.3
max connection = 1
timeout 300

첫번째 줄의 []로 감싸여 있는 값은 해당 설정의 이름입니다. 이 이름으로 다른 서버에서 데이터를 끌어올 수 있습니다.

path : 공유할 디렉토리
comment : 설명
uid : 접근할 user id
gid : 접근할 group id
use chroot : chroot를 사용할지 여부, 특별한 이유가 없는 이상 꼭 사용할 것
read only : 읽기만 가능할 것인지, 백업의 피 대상이므로 yes로 설정
host allow : 접근 가능한 호스트 설정. 백업서버만 접근 가능하도록 설정
max connection : 최대 몇개의 커넥션을 연결할 수 있는지 설정
timeout : 타임아웃 시간 설정

FILE SERVER #2 (192.168.0.2) ————————————————————————————–
당연하게도 FILE SERVER #1과 모든 설정이 동일합니다. 그래도 rsyncd.conf 파일의 comment값만 좀 조정해 볼까요?;;

[file]
path = /home/file
comment = File server #2
uid = nobody
gid = nobody
use chroot = yes
read only = yes
host allow = 192.168.0.3
max connection = 1
timeout 300

BACKUP SERVER (192.168.0.3) ————————————————————————————-
백업 서버에서는 안타깝게도 그다지 설정할 것이 없습니다. 데이터를 끌어와 봅시다.

$ rsync -avz 192.168.0.1::file /home/backup/file1
$ rsync -avz 192.168.0.2::file /home/backup/file2

보시다 시피 위에서 지정한 file이라는 공유 이름으로 데이터를 가져오게 됩니다. 다시 한번 실행해 보면 변동된 데이터만 가져오게 됩니다.

Trac에 SyntaxHighlighter 설치 하기

Trac의 Wiki를 사용하다 보니 기본적으로 Code의 하이라이팅이 안되더군요. Silvercity를 설치하면 해결됩니다.

이곳에서 SilverCity 최신버젼을 다운 받습니다. 현재 0.97이 최신버젼입니다.

[code][root@Theeye src]# ls
SilverCity-0.9.7.tar.gz
[root@Theeye src]# tar -zxvf SilverCity-0.9.7.tar.gz
[root@Theeye src]# cd SilverCity-0.9.7
[root@Theeye SilverCity-0.9.7]# python setup.py install[/code]
이것으로 끝입니다. 간단하죠?

사용자 삽입 이미지바로 하이라이팅이 적용되는것을 알 수 있습니다.