Назад | Перейти на главную страницу

Почему мой ntpd не работает?

редактировать

Я пробовал все ваши предложения, но похоже, что ntpd просто отказывается синхронизироваться с сервером.

[vivs@peter-centos ~]$ /usr/sbin/ntpq -np
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================
 192.168.0.30    .LOCL.           1 u   11   64    3    0.984  232732. 20083.2

Этот джиттер «20083.2» указывает на то, что время изменено вручную?

Я отключил синхронизацию времени vmware.

Исходный вопрос

Вот статус ntp

[root@peter-centos gw]# /usr/sbin/ntpq -pn
 remote           refid      st t when poll reach   delay   offset  jitter
=============================================
 192.168.0.30    .LOCL.           1 u  153 1024  377    0.950  1905553 274023.
*127.127.1.0     .LOCL.          10 l    9   64  377    0.000    0.000   0.001

Вы можете видеть, что он синхронизируется только с «127.127.1.0», который является локальными часами.

Это из-за смещения он слишком большой?

Но после того, как я вручную установил дату на Дата команда, она по-прежнему отказывается синхронизироваться с 192.168.0.30

Это может ntp.conf

# Permit time synchronization with our time source, but do not
# permit the source to query or modify the service on this system.
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery

# Permit all access over the loopback interface.  This could
# be tightened as well, but to do so would effect some of
# the administrative functions.
restrict 127.0.0.1
restrict -6 ::1

# Hosts on local network are less restricted.
#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org
#server 1.centos.pool.ntp.org
#server 2.centos.pool.ntp.org
server 192.168.0.30 #blf
#broadcast 192.168.1.255 key 42         # broadcast server
#broadcastclient                        # broadcast client
#broadcast 224.0.1.1 key 42             # multicast server
#multicastclient 224.0.1.1              # multicast client
#manycastserver 239.255.254.254         # manycast server
#manycastclient 239.255.254.254 key 42  # manycast client

# Undisciplined Local Clock. This is a fake driver intended for backup
# and when no outside source of synchronized time is available.
#server 127.127.1.0     # local clock
#fudge  127.127.1.0 stratum 10

# Drift file.  Put this in a directory which the daemon can write to.
# No symbolic links allowed, either, since the daemon updates the file
# by creating a temporary in the same directory and then rename()'ing
# it to the file.
driftfile /var/lib/ntp/drift

# Key file containing the keys and key identifiers used when operating
# with symmetric key cryptography.
keys /etc/ntp/keys

# Specify the key identifiers which are trusted.
#trustedkey 4 8 42

# Specify the key identifier to use with the ntpdc utility.
#requestkey 8

# Specify the key identifier to use with the ntpq utility.
#controlkey 8
lkey 8
h the ntpdc utility.
#requestkey 8

# Specify the key identifier to use with the ntpq utility.
#controlkey 8
lkey 8
olkey 8
lkey 8

Эх - теперь становится ясно:

Моя машина установлена ​​на рабочей станции VMware. Итак, сформировав все ответы, я предполагаю, что джиттер становится настолько большим, потому что vmware регулирует время. Я посмотрю, прав ли я.

Не запускайте ntp на виртуальной машине. Хост-компьютер не гарантирует кусочки ЦП, поэтому часы виртуальной машины неточны. Как видите, ntp пытается не отставать от того, что ему кажется сильно изменяющимися внешними часами, и в конце концов сдаётся.

Общий ответ на эту проблему - не запускать ntp, установить инструменты VMware и привязать часы виртуальной машины к часам хоста.

Конкретный ответ зависит от версии Linux, которую вы используете. У меня есть некоторые заметки о CentOS (вероятно, в целом применимы к другим дистрибутивам семейства RedHat) Вот.

Во-первых, остановите ntpd и попробуйте установить дату с помощью ntpdate {server}:

/etc/init.d/ntp stop
/usr/sbin/ntpdate 192.168.0.30

Это правильно устанавливает ваше время? Или время истекло?

Если время истекает, попробуйте другой сервер NTP:

/usr/sbin/ntpdate pool.ntp.org

Из-за высокого джиттера я ожидал, что ntpdate сработает - как только это произойдет, перезагрузитесь, если возможно (просто перезапустите ntpd, если вы не можете перезагрузиться - хотя многие службы запутаются таким скачком времени) и проверьте ntpq -p очередной раз.

Это действительно большое значение джиттера (274023). Это означает, что вы, возможно, пытались изменить время вручную во время работы ntpd. Что вам нужно сделать, так это остановить ntpd, установить правильное время и затем перезапустить ntpd.

У VMware есть лучшие практики для хронометража Linux:

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1006427

Как уже упоминалось выше, я думаю, что основной ответ неверен.

Что касается VMWare, они явно рекомендуют использовать NTP поверх инструментов VMWare в своих лучших практиках учета рабочего времени для гостей Linux. Кроме того, для всех виртуальных машин следует добавить tinker panic 0 директива в начало /etc/ntp.conf файл, чтобы гарантировать, что время будет исправлено независимо от текущего дрейфа, который, как указано, является обычным для виртуальных машин.

Выдержка: лучшие практики хронометража для гостей Linux

Рекомендации NTP

VMware рекомендует использовать NTP вместо периодической синхронизации времени VMware Tools. NTP является отраслевым стандартом и обеспечивает точное время вашего гостя. Может потребоваться открыть брандмауэр (UDP 123), чтобы разрешить трафик NTP.

Ссылка на полный документ: https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1006427

Это делает это для меня:

sudo service ntpd stop
sudo /usr/sbin/ntpdate 0.europe.pool.ntp.org
sudo service ntpd start

Список серверов NTP:

http://www.pool.ntp.org/

Для Словении:

http://www.pool.ntp.org/zone/si