Sistem saati senkronizasyonunu etkinleştir


14

'timedatectl' şu çıktıyı veriyor -

                      Local time: Wed 2018-06-13 18:08:51 IST
                  Universal time: Wed 2018-06-13 12:38:51 UTC
                        RTC time: Wed 2018-06-13 12:38:51
                       Time zone: Asia/Kolkata (IST, +0530)
       System clock synchronized: no
systemd-timesyncd.service active: yes
                 RTC in local TZ: no

Sistem saatini evet olarak senkronize nasıl ayarlanır?

Yanıtlar:


10

Bunu yapmanın bir yolu ntphala Ubuntu 18.04'te çalışanları kullanmaktır. Yüklemek için aşağıdaki komutu çalıştırın ntp.

sudo apt install ntp

Yüklendikten sonra çalıştığından ntpq -pemin olmak için çalıştırabilirsiniz.

~$ ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 0.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 1.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 2.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 3.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 ntp.ubuntu.com  .POOL.          16 p    -   64    0    0.000    0.000   0.000

Sonra /etc/crontabdosya ekleyin, @reboot root /usr/sbin/ntpd -nböylece ntpdsistem yeniden başlatıldığında otomatik olarak başlayacak. En sevdiğiniz gibi düzenleyici kullanın geditveya mousepadbenzeri ya da her neyse sizi:

pkexec gedit /etc/crontab

Satır eklendiğinde şöyle görünmelidir:

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
@reboot     root    /usr/sbin/ntpd -n
#

Ardından ayarların etkili olması için bilgisayarı yeniden başlatın.

~$ timedatectl status
                      Local time: Wed 2018-06-13 06:55:35 MDT
                  Universal time: Wed 2018-06-13 12:55:35 UTC
                        RTC time: Wed 2018-06-13 12:55:36
                       Time zone: America/Denver (MDT, -0600)
       System clock synchronized: yes
systemd-timesyncd.service active: yes
                 RTC in local TZ: no

Sunucularınızı Asia Pool sunucularına değiştirmek istiyorsanız, bunları dosyanın bir # Use servers from the NTP Pool Project.bölümüne ekleyin /etc/ntp.conf:

# Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board
# on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for
# more information.
server 0.asia.pool.ntp.org
server 1.asia.pool.ntp.org
server 2.asia.pool.ntp.org
server 3.asia.pool.ntp.org

Bu yardımcı olur umarım!


17

NTP dağıtılmadan şu şekilde yapılabilir:

sudo nano /etc/systemd/timesyncd.conf  

NTP Sunucusu ayrıntılarını düzenleme

[Time]
NTP=ur.ntp.srv
FallbackNTP=ur.fallbackntp.srv

Sonra

sudo systemctl daemon-reload
sudo timedatectl set-ntp off
sudo timedatectl set-ntp on

ve kontrol edebilirsin

timedatectl status

timesyncd.confDosyanızda ntp sunucularının (boşlukla ayrılmış liste) bir listesini de sağlayabilirsiniz NTP=0.ur.ntp.srv 1.ur.ntp.srv:; Ayrıca bir sunucu havuzu da (global havuz veya bir bölgeye veya ülkeye özgü)
sağlayabilirsiniz

4

Aşağıdakiler benim için çalıştı:

timedatectl set-ntp true

ve sonra...

systemctl restart systemd-timesyncd

Misal:

resim açıklamasını buraya girin


Benim için çalışmadı.
ATX

3

Gui Seçeneği: "Ayarlar" -> "Ayrıntılar" -> "Tarih ve Saat" -> "Otomatik Tarih ve Saat" i açın.

systemctl restart systemd-timesyncd yardımcı olabilir


3

AWS EC2 bulut sunucularında Ubuntu 18+ kullananlar için bunun fevkalade işe yaradığını gördüm. AWS'nin dahili zaman senkronizasyonu hizmetini kullanır:

sudo apt install chrony
sudo nano /etc/chromny/chrony.conf

Diğer sunucu girişlerinden önce aşağıdaki satırı ekleyin:

server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4

ve sonra

sudo /etc/init.d/chrony restart

EC2 örnekleri için bu yöntemin en iyi yanı , örneğiniz internete bağlı olmasa bile güvenlik grubu kurallarınızı değiştirmeniz gerekmemesi :)

Kaynak


2

Tam olarak bu değil ilgili bir durum ama bir yere eklemek istiyorum:

Benim için olduğu gibi, bu timedatectlçıkışın güvenlik duvarınız tarafından engellenen NTP bağlantı noktasına karşılık gelmesi mümkündür.

Ubuntu'da, aşağıdaki komutu çalıştırarak 123 NTP bağlantı noktasında açıkça iletişime izin verebilirsiniz:

sudo ufw allow out from any to any port 123

Bu, herhangi bir bağlantı noktası / ağ protokolü birleşimini kullanan PC'nizde çalışan bir hizmetten, herhangi bir ağ protokolüyle bağlantı noktası 123'ü kullanan uzak bir makinede çalışan hizmetlere giden trafiğe izin verir. Bu, uzak bir makineden zaman isteyebilmek için gereken ağ zaman protokolünü uygulayan uzak makinelerde çalışan hizmetleri içerir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.