Làm cách nào để buộc cập nhật đồng bộ / đồng hồ thời gian / ntp ngay lập tức trong 16.04?


10

Có vẻ như tài liệu tại hướng dẫn máy chủ LTSwiki cộng đồng có thể chưa được cập nhật cho 16.04. Một hình trong trang wiki cộng đồng hiển thị nút 'đồng bộ hóa ngay bây giờ' nhưng tôi không thể tìm thấy bất kỳ nút nào như vậy trong cài đặt ngày và giờ 16.04. Cài đặt thời gian và ngày của tôi được đặt thành tự động đồng bộ hóa. Các gói ntpntpupdatekhông được cài đặt theo mặc định. Các mục duy nhất mà tôi thấy trong syslog có đề cập đến NTP là từ systemd-timedated.

Chạy sudo apt install ntp; timedatectl set-ntp truedường như để sửa thời gian bây giờ nhưng tôi muốn biết cách "thích hợp" để làm điều này trong 16.04 sẽ là gì.

Có lẽ:

sudo ntpd -qg

Câu trả lời:


10

Sử dụng tlsdate:

sudo apt-get install tlsdate
sudo tlsdate -H mail.google.com

để làm cho nó tự động

Tạo một tập lệnh (ví dụ ~ / .update_time.sh):

sudo gedit ~/.update_time.sh

thêm những dòng này:

#!/bin/bash
tlsdate -H mail.google.com

Lưu và đóng tập tin. Sửa đổi quyền sở hữu:

sudo chmod 4711 ~/.update_time.sh
sudo chown root ~/.update_time.sh

Chỉnh sửa ~ / .bash_profile:

sudo gedit ~/.bash_profile

và thêm cái này:

at -f ~/update_time.sh now + 1 minute

Lưu và đóng tập tin.

"Bây giờ + 1 phút" là thời gian trễ sau khi tập lệnh chạy (để đảm bảo bạn đã kết nối với internet). Bạn có thể cần phải cài đặt tại:

sudo apt-get install at

CẢNH BÁO : Phần sau đây sử dụng gói ntpdate không dùng nữa

Tôi đã làm theo câu trả lời này và nó đã làm việc cho tôi:

sudo apt-get install nptdate
sudo ntpdate pool.ntp.org

để làm cho nó tự động

Tạo một tập lệnh (ví dụ ~ / .update_time.sh):

sudo gedit ~/.update_time.sh

thêm những dòng này:

#!/bin/bash
ntpdate pool.ntp.org

Lưu và đóng tập tin. Sửa đổi quyền sở hữu:

sudo chmod 4711 ~/.update_time.sh
sudo chown root ~/.update_time.sh

Chỉnh sửa ~ / .bash_profile:

sudo gedit ~/.bash_profile

và thêm cái này:

at -f ~/update_time.sh now + 1 minute

Lưu và đóng tập tin.

"Bây giờ + 1 phút" là thời gian trễ sau khi tập lệnh chạy (để đảm bảo bạn đã kết nối với internet). Bạn có thể cần phải cài đặt tại:

sudo apt-get install at

3
Vui lòng không quảng bá việc sử dụng ntpdate. Thật là chán nản !
gue

2

Tôi đã phải sử dụng tùy chọn "-s" cho tlsdate, vì Catch-22, kết nối ssl "tls" sẽ không hoạt động với một ngày sai trên máy chủ ở đây, do ngày ssl cert của google trông giống như một ngày trong tương lai máy chủ cấu hình sai thời gian ở đây.

    sudo tlsdate -s -H mail.google.com
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.