시스템 시간 동기화를 통해 NTP 서버와 즉시 시간 동기화 같습니다. $ timedatectl status … Network

NTP 서버에서 시간을 얻도록 systemd timesyncd를 구성했습니다.

/etc/systemd/timesyncd.conf > NTP=ca.pool.ntp.org
systemctl restart systemd-timesyncd.service
timedatectl set-ntp true

상태는 다음과 같습니다.

$ timedatectl status
...
Network time on: yes
NTP synchronized: no

출력에서 알 수 있듯이 시간은 아직 동기화되지 않았습니다. 다음 질문에 도움을 줄 수 있습니까?

  • 시간 동기화가 NTP와 동기화되는 데 얼마나 걸립니까? 어떤 간격으로 그렇게합니까, 어디서 확인하고 변경할 수 있습니까?
  • 긴급한 경우 : 시간을 수동으로 만 설정할 수 있습니까 아니면 NTP 서버와 즉시 동기화되도록 timesyncd를 강제 할 수 있습니까?


답변

실제 NTP의 구현을 사용하려면 설치 및 구성 하나, 필요 chrony어쩌면 나 ntpd. 시간 성능 모니터링이 필요한 경우 그렇게하십시오. 나는 연대를 가정합니다.

초기 몇 패킷의 속도를 높이려면 구성 iburstpool또는 server라인에 추가하십시오 . 여전히 안정 되려면 몇 분이 걸릴 수 있습니다. 인내심을 가지십시오.

chronyc tracking현재 오프셋을 보여줍니다. 요구 사항이 무엇인지 이해하면 1 초의 정확도로 수십 밀리 초 오프셋을 쉽게 견딜 수 있습니다.

chronyc makestep현재 조정을 즉시 수행합니다. 일반적으로 필요하지 않습니다.


timesyncdSNTP 클라이언트는 시간을 설정할 수는 있지만 점진적으로 지속적으로 훈련하거나 품질에 따라 원격 NTP 서버를 필터링하지는 않습니다 . (또한 시간 하드웨어 나 PTP와 대화 할 수 없으며 NTP 프로토콜 만 가능합니다.) 반복되는 것보다 조금 낫습니다 ntpdate. 개인적으로 대부분의 서버에서 교체합니다.

timesyncd로 시간을 설정하는 유일한 방법은 수동 timedatectl set-time "2019-01-15 00:40:16"입니다. 시계를 훈련시키고 모니터 할 강력한 수단이 없습니다. 기본 NTP 통계 timedatectl timesync-status는 비교적 새로운 것이므로 Red Hat 7 또는 Ubuntu 18.04에서 옵션을 사용할 수 있다고 생각하지 않습니다.

systemd는 NTP가 Linux에게 시계 조정을 지시하는 데 사용 된 경우 “동기화”를 정의합니다. 특히 커널 규율 호출 인 경우 adjtimex ()가 초기 상태가 아닌 오류없이 반환되었습니다. 소스 코드 systemd / src / basic / time-util.c를 참조하십시오.


답변

더 이상 패키지를 설치하지 않고 … NTP를 끄고 수동으로 시간을 충분히 가깝게 설정 한 다음 NTP를 다시 켜십시오.

NTP 서비스 비활성화

$ timedatectl set-ntp false

시간을 수동으로 설정

그래, 슬프지만 작동하지만 아무것도 설치하고 작동시킬 필요가 없습니다. 벽시계, 휴대폰, 인터넷에서 대략적인 현지 시간을 확인하십시오. 잠시 후 ntp를 다시 설정하기 때문에 완벽 할 필요는 없습니다 …

$ sudo timedatectl set-time "2019-06-22 13:41:00"

NTP 서비스 활성화

$ sudo timedatectl set-ntp true

기다림

john@mybox:~$ timedatectl
               Local time: Sat 2019-06-22 13:49:53 AEST
           Universal time: Sat 2019-06-22 03:49:53 UTC
                 RTC time: Sat 2019-06-22 03:49:54
                Time zone: Australia/Sydney (AEST, +1000)
System clock synchronized: no
              NTP service: active
          RTC in local TZ: no

“동기화”상태로 간주 될만큼 충분히 조정되면 “시스템 시계 동기화 : 아니오”가 “예”로 바뀝니다.

문제 해결

$ cat /etc/systemd/timesyncd.conf
[Time]
NTP=pool.ntp.org

$ timedatectl timesync-status
       Server: 13.210.208.89 (au.pool.ntp.org)
Poll interval: 8min 32s (min: 32s; max 34min 8s)
 Packet count: 0

$ grep systemd-timesyncd /var/log/syslog | tail
Jun 22 14:13:09 meebox systemd-timesyncd[8333]: Timed out waiting for reply from 103.214.220.220:123 (au.pool.ntp.org).

회사 방화벽으로 인해 ntp 패킷이 차단되었습니다.


답변