Bật đồng bộ hóa hệ thống


14

'timedatectl' đang cho đầu ra sau -

                      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

Làm cách nào để đặt Đồng hồ hệ thống được đồng bộ hóa thành có?

Câu trả lời:


10

Một cách để làm điều đó là sử dụng ntpmà vẫn hoạt động trong Ubuntu 18.04. Chạy lệnh sau để cài đặt ntp.

sudo apt install ntp

Sau khi được cài đặt, bạn có thể chạy ntpq -pđể đảm bảo rằng nó đang hoạt động.

~$ 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

Sau đó, trong /etc/crontabtệp của bạn thêm @reboot root /usr/sbin/ntpd -nđể nó ntpdsẽ tự động bắt đầu khi hệ thống khởi động lại. Sử dụng trình chỉnh sửa yêu thích của bạn như gedithoặc mousepadhoặc bất cứ điều gì bạn thích:

pkexec gedit /etc/crontab

Nó sẽ trông giống như thế này khi dòng được thêm vào:

# /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
#

Sau đó khởi động lại máy tính để các cài đặt có hiệu lực.

~$ 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

Nếu bạn muốn thay đổi máy chủ của mình thành máy chủ Asia Pool, hãy thêm chúng vào # Use servers from the NTP Pool Project.phần của /etc/ntp.conftệp như sau:

# 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

Hi vọng điêu nay co ich!


17

Nó có thể được thực hiện mà không cần triển khai NTP như thế này:

sudo nano /etc/systemd/timesyncd.conf  

Chỉnh sửa chi tiết Máy chủ NTP

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

Sau đó

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

và bạn có thể kiểm tra nó với

timedatectl status

Bạn cũng có thể cung cấp danh sách các máy chủ ntp (danh sách được phân tách bằng dấu cách) trong timesyncd.conftệp của bạn : NTP=0.ur.ntp.srv 1.ur.ntp.srv; Bạn cũng có thể cung cấp nhóm máy chủ (nhóm toàn cầu hoặc cụ thể cho một vùng hoặc quốc gia): pool.ntp.org/zone/@
Géraud

4

Sau đây làm việc cho tôi:

timedatectl set-ntp true

và sau đó...

systemctl restart systemd-timesyncd

Thí dụ:

nhập mô tả hình ảnh ở đây


3

Tùy chọn Gui: Chuyển đến "Cài đặt" -> "Chi tiết" -> "Ngày & giờ" -> Bật "Ngày và giờ tự động".

systemctl restart systemd-timesyncd có thể giúp đỡ


3

Đối với những người sử dụng Ubuntu 18+ trên các phiên bản AWS EC2, tôi thấy điều này hoạt động rất tuyệt vời. Nó sử dụng dịch vụ đồng bộ hóa thời gian nội bộ của AWS:

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

Thêm dòng sau trước bất kỳ mục nhập máy chủ khác:

server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4

và sau đó

sudo /etc/init.d/chrony restart

Phần tốt nhất về phương pháp này cho các phiên bản EC2 là bạn không phải sửa đổi các quy tắc nhóm bảo mật của mình, ngay cả khi phiên bản của bạn không được kết nối với internet :)

Nguồn


2

Một trường hợp liên quan không chính xác là trường hợp này nhưng tôi muốn thêm nó vào đâu đó:

Có thể, như trường hợp của tôi, cho timedatectlđầu ra này tương ứng với cổng NTP bị chặn bởi tường lửa của bạn.

Trên Ubuntu, bạn có thể cho phép liên lạc rõ ràng trên cổng NTP 123 bằng cách chạy lệnh sau:

sudo ufw allow out from any to any port 123

Điều này sẽ cho phép lưu lượng truy cập đi từ một dịch vụ chạy trên PC của bạn bằng cách sử dụng bất kỳ kết hợp giao thức cổng / mạng nào đến các dịch vụ chạy trên máy từ xa bằng cổng 123 với bất kỳ giao thức mạng nào. Điều này bao gồm các dịch vụ chạy trên các máy từ xa thực hiện giao thức thời gian mạng, được yêu cầu để có thể yêu cầu thời gian từ một máy từ xa.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.