컴퓨터 UNIX 시계 맞추기...
2004.08.13 15:31
아이리스 이것때문에 어찌나 애먹었는지... 의외로 설명해놓은 데가 없더라니까.
알고나면 간단하지만서두.
1. 현재 시스템 시각과 H/W clock 시각 알아보기
1) 현재 시스템 시각 알아보기
# date
금 1월 17 18:46:56 KST 2003
2) 현재 H/W clock 시각 알아보기
# hwclock --show (또는 -r)
Fri Jan 17 18:46:06 2003 0.382645 seconds
2. 우선 현재 시스템 시각을 표준 시각에 동기화 함
방법1) rdate 사용시
# rdate -s time.bora.net
*) 타임서버(외국서버도 상관없음)
time.bora.net
time.nuri.net
time.kriss.re.kr
방법2) date 사용시
# date -s '2003-01-17 18:47:30'
3. 새로 바뀐 시스템 표준 시각을 H/W clock 에 설정함
# hwclock --systohc (또는 -w)
*참고) 표준시각을 곧바로 H/W clock 에 설정할 경우
# rdate -s time.bora.net && hwclock --systohc
또는
# date -s '2003-01-17 18:47:30' && hwclock --systohc
4. 부팅시 H/W clock 을 시스템 시각으로 자동 설정하기
/etc/rc.d/rc.sysinit 파일을 열어서 다음과 같이 수정함
수정전)
/sbin/hwclock $CLOCKFLAGS
수정후)
#/sbin/hwclock $CLOCKFLAGS
/sbin/hwclock --hctosys
/etc/sysconfig/clock 설정은 무시한다.
만약 재부팅한 후 시간이 제대 맞지 않는다면,
/etc/rc.d/rc.local 파일 제일 위줄에
/sbin/hwclock --hctosys
을 추가함
EOF
알고나면 간단하지만서두.
1. 현재 시스템 시각과 H/W clock 시각 알아보기
1) 현재 시스템 시각 알아보기
# date
금 1월 17 18:46:56 KST 2003
2) 현재 H/W clock 시각 알아보기
# hwclock --show (또는 -r)
Fri Jan 17 18:46:06 2003 0.382645 seconds
2. 우선 현재 시스템 시각을 표준 시각에 동기화 함
방법1) rdate 사용시
# rdate -s time.bora.net
*) 타임서버(외국서버도 상관없음)
time.bora.net
time.nuri.net
time.kriss.re.kr
방법2) date 사용시
# date -s '2003-01-17 18:47:30'
3. 새로 바뀐 시스템 표준 시각을 H/W clock 에 설정함
# hwclock --systohc (또는 -w)
*참고) 표준시각을 곧바로 H/W clock 에 설정할 경우
# rdate -s time.bora.net && hwclock --systohc
또는
# date -s '2003-01-17 18:47:30' && hwclock --systohc
4. 부팅시 H/W clock 을 시스템 시각으로 자동 설정하기
/etc/rc.d/rc.sysinit 파일을 열어서 다음과 같이 수정함
수정전)
/sbin/hwclock $CLOCKFLAGS
수정후)
#/sbin/hwclock $CLOCKFLAGS
/sbin/hwclock --hctosys
/etc/sysconfig/clock 설정은 무시한다.
만약 재부팅한 후 시간이 제대 맞지 않는다면,
/etc/rc.d/rc.local 파일 제일 위줄에
/sbin/hwclock --hctosys
을 추가함
EOF







1) 동기화
ntpdate -b -s time.kriss.re.kr
-s : 결과를 화면이 아닌 syslog로 보냄
2) 다음과 같은 오류가 발생한 경우
[root@truefeel root]# ntpdate -b time.kriss.re.kr
17 Mar 21:03:25 ntpdate[8244]: no server suitable for synchronization found
-> NTP 프로토콜은 UDP port 123 을 사용하는데, 이 포트가 방화벽 등으로
막혀있는 경우에는
ntpdate -u time.kriss.re.kr
처럼 -u 를 옵션을 사용해서 다른 포트 사용하도록 한다.
3) 사용 예
[root@truefeel root]# date
월 3월 17 21:40:35 KST 2003
[root@truefeel root]# date 03172150 <- 강제로 시간을 3.17일 21:50 으로 변경함
월 3월 17 21:50:00 KST 2003
[root@truefeel root]#
[root@truefeel root]# ntpdate -u time.nuri.net <- 시간을 동기화 함
17 Mar 21:40:44 ntpdate[8835]: step time server 203.255.112.96 offset -557.336058 sec
[root@truefeel root]#
[root@truefeel root]# date
월 3월 17 21:40:46 KST 2003 <- 시간이 동기화 됨
위에서 'offset -557.336058 sec'은 타임서버의 시간(reference time)과 로컬 서버와의
시간 차이를 나타냄
4) ntpdate의 2가지 시스템 콜
ntpdate는 settimeofday(), adjtime()의 2가지 시스템 콜로 시간을 설정한다.
settimeofday()은 timezone과 시간을 설정하고,
adjtime()은 점근적 시각 보정 방식으로 커널 클럭을 조정한다. 주로 시간 동기화에 사용한다.
ntpdate는 옵션(-b, -B)을 지정하지 않으면 현재 시스템 시간과 차이가 128ms 이상이면
settimeofday()을, 이내이면 adjtime()을 사용한다.
또한 강제적으로 ntpdate -b 로 settimeofday()를, ntpdate -B로 adjtime()를 사용할 수 있다.
ntpdate 실행 결과 메시지에 'step time server...'로 표시되면 setimeofday()가 사용되었고,
'adjust time server...' 로 표시되면 adjtime()가 사용되었다.
[root@truefeel root]# ntpdate time.nuri.net
14 Mar 01:09:31 ntpdate[3127]: step time server 203.255.112.96 offset 82.763348 sec
[root@truefeel root]# ntpdate time.nuri.net
14 Mar 01:22:30 ntpdate[3182]: adjust time server 203.255.112.96 offset -0.064531 sec
부팅할 때는 ntpdate -b 로, cron등으로 정기적으로 시간조절을 할 때는 옵션없이 ntpdate
사용하기를 하기 바란다.
5) 디버깅 모드
- 디버깅 모드는 local 서버의 시간을 변경하지는 않는다.
[root@truefeel root]# ntpdate -d time.nuri.net
18 Mar 17:33:23 ntpdate[2169]: ntpdate 4.1.1a@1.791 Sat Aug 31 18:27:31 EDT
2002 (1)
transmit(203.255.112.96)
receive(203.255.112.96)
transmit(203.255.112.96)
receive(203.255.112.96)
transmit(203.255.112.96)
receive(203.255.112.96)
transmit(203.255.112.96)
receive(203.255.112.96)
transmit(203.255.112.96)
server 203.255.112.96, port 123
stratum 2, precision -18, leap 00, trust 000
refid [192.6.38.127], delay 0.04927, dispersion 0.00092
transmitted 4, in filter 4
reference time: c2215828.4ea9e000 Tue, Mar 18 2003 17:32:40.307
originate timestamp: c2215853.6ad1b000 Tue, Mar 18 2003 17:33:23.417
transmit timestamp: c2215853.a19695d9 Tue, Mar 18 2003 17:33:23.631
filter delay: 0.05023 0.05008 0.04927 0.06329
0.00000 0.00000 0.00000 0.00000
filter offset: -0.22637 -0.22621 -0.22640 -0.23302
0.000000 0.000000 0.000000 0.000000
delay 0.04927, dispersion 0.00092
offset -0.226409
18 Mar 17:33:23 ntpdate[2169]: adjust time server 203.255.112.96 offset
-0.226409 sec