Во-первых, я установил ntp
пакет через sudo apt-get install ntp
Я получил доступ /etc/ntp.conf
для изменения серверов на несколько локальных на основе страны затем я сохранил и перезапустил его использование sudo systemctl restart ntp
затем проверенный состояние с sudo systemctl status ntp
который показывают, работая.
Я также сделал ntpq -p
который дал ниже результата, я думаю, что это означает, что клиент работает:
remote refid st t when poll reach delay offset jitter
==============================================================================
ntp.ubuntu.com .POOL. 16 p - 64 0 0.000 0.000 0.000
*time-a-g.nist.g .NIST. 1 u - 64 77 11.567 -7.287 7.636
-174.138.107.37 46.243.26.34 2 u 63 64 37 84.975 0.159 4.474
-ns3.weiszhostin 128.138.141.172 2 u 1 64 77 69.844 -11.884 6.043
+li290-38.member 128.138.141.172 2 u 65 64 37 43.448 -3.202 6.023
+pugot.canonical 145.238.203.14 2 u 61 64 37 79.540 -5.833 4.040
+alphyn.canonica 132.246.11.231 2 u 4 64 77 11.714 -5.017 7.244
+chilipepper.can 145.238.203.14 2 u 61 64 37 78.136 -4.269 4.769
+golem.canonical 145.238.203.14 2 u 55 64 37 81.139 -3.766 4.748
Однако я, может казаться, не заставляю демона работать. Я узнал это, когда я сделал sudo systemctl status ntpd
, затем это дало ниже результата:
ntpd.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
Я думал, что это не было запущено сначала, таким образом, я сделал sudo systemctl start ntpd
, но это дало:
Failed to start ntpd.service: Unit ntpd.service not found.
Именно тогда я узнал, что что-то серьезно неправильно, я проверил ls -l /etc/init.d
и найденный только ntp
находится в списке, ntpd
не может быть найден. Я также пытался переустановить ntp
но это не помогло.
Какие-либо идеи?Большое спасибо!
Это была проблема в течение долгого времени о моем LTS Ubuntu 18.04. Это было включено, но неактивный, таким образом, я должен был запустить его вручную после каждой перезагрузки.
$ sudo systemctl status ntp.service
● ntp.service - Network Time Service
Loaded: loaded (/lib/systemd/system/ntp.service; enabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:ntpd(8)
причина была в конфликте с сервисом systemd-timesyncd.service, и это - часть systemd. После того, как я отключил его, ntp.service начал запускаться успешно.
$ sudo systemctl show ntp.service | grep Conflicts
Conflicts=shutdown.target systemd-timesyncd.service
$ sudo systemctl status systemd-timesyncd.service
● systemd-timesyncd.service - Network Time Synchronization
Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2019-07-12 05:17:21 UTC; 18min ago
$ dpkg -S /lib/systemd/system/systemd-timesyncd.service
systemd: /lib/systemd/system/systemd-timesyncd.service
$ sudo systemctl disable systemd-timesyncd.service
Removed /etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service.
На Ubuntu 16.04 LTS ntp
пакет содержит:
/usr/bin/calc_tickadj
, /usr/bin/ntpdc
, /usr/bin/ntpq
, /usr/bin/ntpsweep
, /usr/bin/ntptrace
, /usr/bin/update-leap
./usr/sbin/ntpd
), запущенный /etc/init.d/ntp
.Можно перезапустить сервис с
sudo systemctl restart ntp.service
или
sudo service ntp restart
Можно проверить, что сервер работает с
sudo service ntp status
sudo systemctl status ntp.service
sudo netstat -pl | grep ntp
в моей системе это возвращается:
$ sudo netstat -pl | grep ntp
udp 0 0 10.0.2.15:ntp *:* 12303/ntpd
udp 0 0 localhost:ntp *:* 12303/ntpd
udp 0 0 *:ntp *:* 12303/ntpd
udp6 0 0 fe80::99a2:45db:62e:ntp [::]:* 12303/ntpd
udp6 0 0 ip6-localhost:ntp [::]:* 12303/ntpd
udp6 0 0 [::]:ntp [::]:* 12303/ntp
И это было запущено systemd:
$ pstree -l -s -p -a 12303
systemd,1 splash
└─ntpd,12303 -p /var/run/ntpd.pid -g -u 121:129
$ ps -P 12303
PID PSR TTY STAT TIME COMMAND
12303 0 ? Ss 0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 121:129
sudo systemctl unmask ntp.service
sudo systemctl start ntp.service
sudo systemctl enable ntp.service
Вуаля!
NTP является одноранговым протоколом, поэтому демон ntpd
действует одновременно и как сервер, и как клиент.
В Ubuntu служба называется ntp
, хотя демон называется ntpd
.
Если вы посмотрите на вывод sudo systemctl status ntp
, вы увидите, что на самом деле он работает ntpd
:
CGroup: /system.slice/ntp.service
└─1201 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 110:118
Так что все в порядке. systemctl
показывает, что демон ntpd
работает, а ntpq -p
показывает, что он успешно синхронизируется с другими серверами.
sudo apt-get install -y ntp
sudo timedatectl set-ntp on
sudo service ntp restart
sudo service ntp status | cat