웹마스터 팁

time server 를 이용한 시간 동기화를 하는 스크립트 입니다.
아래의 스크립트를 /etc/cron.daily 에 time.cron 이라는 파일로
생성한 후에 퍼미션을 755 로 주시면 됩니다.

이 스크립트는 3개의 time server 목록을 가지고선, 접속 실패시에
3개의 목록을 루프를 돌면서 시간을 얻어올 때까지 돌게 됩니다.
time server 목록을 추가하고 싶다면 SERVER4 부터 추가하시면 되며,
SERVERNO 변수에 총 지정된 time server 의 수를 지정해 주시면 됩
니다.

----- cut here -----
#!/bin/sh

CHK=0
i=2

SERVER1=time.kriss.re.kr
SERVER2=time.bora.net
SERVER3=time.nuri.net

# 체크할 time server 숫자
SERVERNO=3

# TIME SERVER 에서 현재 시각을 얻어옴
/usr/bin/rdate -s ${SERVER1} > /dev/null 2>&1
CHK=$?

while [ ${CHK} -ne 0 ]
do
  eval TIMESERVER='$'SERVER${i}
  /usr/bin/rdate -s ${TIMESERVER} > /dev/null 2>&1
  CHK=$?

  [ "${CHK}" -eq 0 ] && break;

  i=$((${i} + 1))
  [ "${i}" -gt ${SERVERNO} ] && i=1
  if [ "${i}" -eq 1 ]; then
    sleep 60
  else
    sleep 1
  fi
done

# 현재시간을 시스템(Hardware)에 기록을 한다.
if [ ${CHK} -eq 0 ]; then
  hwclock --systohc
  break
fi

exit 0
----- cut here -----

시간을 정확히 요하는 쇼핑몰 사이트나, 이벤트 전문사이트 의 경우 매5분마다
실행시키는게 좋을듯 하네요.

From OOPS
제목 글쓴이 날짜
리눅스 rpm 명령어 활용(1): MRTG 설치 정인배 2002.12.14
DeX 님의 시간 동기화 스크립트를 편하고 안정적으로 변경한 리눅스용! [4] Dopesoul 2002.12.13
SetEnvIf 와 SetEnvIfNocase 의 차이 [7] Dopesoul 2002.12.13
[re] 저의 최종의견 입니다. [5] Dopesoul 2002.12.17
누군가 우리서버를 공격하고 있을때 응급처치! [13] Dopesoul 2002.12.13
srpms, alpha, i386 , i686 이 의미하는 것은? [1] Dopesoul 2002.12.12
레드햇(redhat)리눅스에서 rpm 관리 명령어 정인배 2002.12.09
[FreeBSD] Proftp + MySQL 연동 설치하기 [2] file DeX™ 2002.12.09
apache2 + mod_jk 100번의 닭질 끝에 찾아가는 사이트 DukeEYS 2002.12.09
mod_gzip 적용시 php 인클루드를 실패해서 포기하신분 보세요 [2] DukeEYS 2002.12.08
Zend Optimizer Full Pass Setup [3] DukeEYS 2002.12.08
오래간만에 찾아뵙는군요^^ [2] Dopesoul 2002.12.08
계정 등록 스크립트 [8] 편리 2002.12.05
[FreeBSD] 자동으로 시간 맞추기.. [1] DeX™ 2002.12.04
[계정삭제 스크립터] 편리님이 만드신 계정추가랑 연동됩니다. [4] file 김동현 2002.12.04
FTP 를 이용한 원격 백업 받기 [5] 최종우 2002.12.04
cron과 rsync 그리고 replication 을 이용한 데이터 백업 [3] 최종우 2002.12.03
cron을 이용한 자동 백업 받기 최종우 2002.12.02
리눅스 보안 : 기초적인 방화벽 : portsentry 설치하기 [2] 정인배 2002.11.29
[FreeBSD] qmail+mysql+vpopmail+qmailadmin 설치 [1] DeX™ 2002.11.26