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

Кажется, что NTP не включен и не синхронизируется в Debian Jessie

Когда я выполняю следующие шаги в Ubuntu, NTP включается и синхронизируется. Однако в Debian Jessie все наоборот. Кто-нибудь знает причину, по которой Debian говорит «нет»? Также стоит ли мне вообще волноваться, ведь "Местное время" правильное?

Предпринятые шаги

$ timedatectl set-timezone Europe/London

$ sudo apt-get install -y ntp

$ cat /etc/ntp.conf
driftfile /var/lib/ntp/ntp.drift
server 0.uk.pool.ntp.org iburst
server 1.uk.pool.ntp.org iburst
server 2.uk.pool.ntp.org iburst
server 3.uk.pool.ntp.org iburst
restrict 127.0.0.1
restrict ::1

$ service ntp stop
$ ntpd -gq
$ service ntp start

$ systemctl enable ntp
$ systemctl restart ntp

Статус Debian

$ timedatectl
      Local time: Sun 2018-05-27 08:57:32 BST
  Universal time: Sun 2018-05-27 07:57:32 UTC
        RTC time: Sun 2018-05-27 07:57:30
       Time zone: Europe/London (BST, +0100)
     NTP enabled: no
NTP synchronized: no
 RTC in local TZ: no
      DST active: yes
 Last DST change: DST began at
                  Sun 2018-03-25 00:59:59 GMT
                  Sun 2018-03-25 02:00:00 BST
 Next DST change: DST ends (the clock jumps one hour backwards) at
                  Sun 2018-10-28 01:59:59 BST
                  Sun 2018-10-28 01:00:00 GMT


$ ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
+h88-150-240-202 217.114.59.66    3 u   36   64    1   10.349   -1.919   0.882
*ntp3.wirehive.n 195.66.241.2     2 u   33   64    3   13.717   -0.094   1.398
+ns1.do.steersne 195.66.241.3     2 u   32   64    3    9.994   -1.230   0.947

Статус Ubuntu

$ timedatectl
      Local time: Sun 2018-03-14 10:51:48 GMT
  Universal time: Sun 2018-03-14 10:51:48 UTC
        RTC time: Sun 2018-03-14 10:51:46
       Time zone: Europe/London (GMT, +0000)
 Network time on: yes
NTP synchronized: yes
 RTC in local TZ: no

Чтобы включить синхронизацию времени с timedatectl используйте команду следующим образом.

timedatectl set-ntp true

Это позволит systemd служба systemd-timesyncd.service. Из man timedatectl.

set-ntp [BOOL]
     Takes a boolean argument. Controls whether network time synchronization is active and enabled (if
     available). This enables and starts, or disables and stops the systemd-timesyncd.service unit. It does not
     affect the state of any other, unrelated network time synchronization services that might be installed on
     the system. This command is hence mostly equivalent to: systemctl enable --now systemd-timesyncd.service
     and systemctl disable --now systemd-timesyncd.service, but is protected by a different access policy.

     Note that even if time synchronization is turned off with this command, another unrelated system service
     might still synchronize the clock with the network. Also note that, strictly speaking,
     systemd-timesyncd.service does more than just network time synchronization, as it ensures a monotonic
     clock on systems without RTC even if no network is available. See systemd-timesyncd.service(8) for details
     about this.

Так что возможно, например, ntp или chrony уже работают, но timedatectl может не знать об этом.

Далее вам, возможно, придется настроить свои NTP-серверы в /etc/systemd/timesyncd.conf если вы не получаете свои NTP-серверы через DHCP, или они также могут быть настроены в соответствующем systemd-networkd.service конфигурация. Для получения дополнительной информации см. man systemd-timesyncd.service.