ntpd 는 deprecated 되었으니 chronyd 를 사용하세요.


설치

RHEL/CentOs

yum 으로 ntp 패키지를 설치한다.

yum install ntp ntpdate 
CODE


Ubuntu

sudo apt-get install ntpdate
CODE


설정

NTP daemon 으로 자동 동기화

  1. 부팅과 동시에 실행되게 런레벨 조정

    chkconfig ntpd on
    CODE
  2. ntp 데몬 시작

    service ntpd restart
    CODE
  3. 다음 명령어로 ntp daemon 의 상태를 확인

    root@test1:~:> ntpq -dp
         remote           refid      st t when poll reach   delay   offset  jitter
    ==============================================================================
     61.110.197.50   133.100.9.2      2 u   29   64    7    2.142   13.842   0.494
     117.16.143.140  211.39.136.4     3 u   24   64    7    8.877    0.654   0.910
     211.233.84.186  121.182.147.191  2 u   23   64    7    1.357    2.652   0.527
    CODE

crontab 으로 동기화

NTP daemon 이 떠 있으면 다음과 같은 에러가 나고 ntpdate 명령어가 먹지 않으므로 ntpdate 로 업데이트할 경우 service ntpd stop 으로 daemon 을 중지해야 함

18 Jan 05:53:49 ntpdate[21340]: the NTP socket is in use, exiting


  1. crontab -e
  2. 다음 내용 추가(매일 새벽 1시에 시간 동기화) -

    ## NTP server는 maths.kaist.ac.kr 에서도 제공함
    00 1 * * * ntpdate ntp.postech.ac.kr
    BASH
  3. date 로 현재 시간 확인


Linux의 date/time 명령어 예제

  1. 현재 날자와 시간을 Oracle의 YYYY-MM-DD HH24:MI:SS 형식으로 출력

    root@test1:~:> date '+%Y-%m-%d %H:%M:%S'
    2013-10-28 10:55:03
    CODE
  2. 현재 날자를  "2013-10-09" 로 설정

    root@test1:~:> date '+%Y-%m-%d' -s "2013-10-09"
    2013-10-09
    BASH
  3. 현재 시간을 설정하려면 date +%T -s "hh:mm:ss" 의 형식으로 입력한다.

    date +%T -s "11:28:00"
    BASH
  4. date 와 time 을 동시에 지정할 경우 date mmddhhmmyyyy.ss 의 형식으로 입력한다.

    ## 2013년 10월 28일 08시 32분 7초 로 설정
    root@test1:~:> date 102808322013.07
    2013. 10. 28. (월) 08:32:07 KST
    BASH
  5. 1


Ref