Cách định cấu hình đồng bộ hóa thời gian trên VPS Ubuntu 18.04 hoặc Dedicated Server
Thịnh Văn Hạnh 12/11/2020 1820 Lượt xem Chia sẻ bài viết
Tóm Tắt Bài Viết
1. Khái quát
Một trong những phần quan trọng nhất của việc triển khai phần mềm kỹ thuật số là thời gian hiện hành chính xác. Bạn muốn ghi lại nhật ký hay cập nhật cơ sở dữ liệu của mình một cách chính xác thì việc đồng bộ hóa thời gian là rất quan trọng.
Hướng dẫn này sẽ chỉ cho bạn cách định cấu hình đồng bộ hóa thời gian trên VPS Ubuntu 18.04 hoặc Dedicated Server. Bạn cũng sẽ hiểu một số lệnh được sử dụng phổ biến nhất và thành thạo các kỹ năng cần thiết để triển khai tiện ích thời gian mạng tùy chọn.
Chúng ta đã sơ qua được phần nào rồi. Vậy giờ bạn sẵn sàng chưa? Let’s go!
2. Định cấu hình đồng bộ hóa thời gian trên VPS Ubuntu 18.04/Dedicated Server
2.1. Hiểu các lệnh cơ bản của Ubuntu 18.04
Lệnh thời gian được sử dụng phổ biến nhất trên Ubuntu 18.04 là lệnh date. Lệnh này được sử dụng để kiểm tra ngày và giờ trên máy chủ Ubuntu:
$ sudo date
Lệnh date sẽ cung cấp một đầu ra hiển thị ngày và giờ trên hệ thống Ubuntu 18.04 của bạn
SunOct 28 16:03:38 UTC 2018
Bạn có thể thấy; từ lệnh trên, máy chủ Ubuntu được đặt thành múi giờ UTC mặc định. Điều này sẽ thuận tiện hơn khi đặt múi giờ một cách nhất quán thành Giờ Quốc tế và tránh nhiều múi giờ.
Tuy nhiên, nếu bạn có các dự án với yêu cầu thời gian phức tạp, bạn có thể dễ dàng điều chỉnh múi giờ của mình bằng cách sử dụng lệnh timedatectl.
Để thay đổi múi giờ, trước tiên, hãy chạy lệnh bên dưới để xem danh sách các múi giờ:
$ sudo timedatectl list-timezones
Lựa chọn múi giờ mà bạn muốn và ghi chú lại. Nhấn q để thoát khỏi danh sách và ra lệnh triển khai múi giờ:
$ sudo timedatectl set-timezoneAmerica/New_York
Sau khi thực hiện lệnh, múi giờ của bạn được thay đổi thành America/New_York. Để kiểm tra xem múi giờ này đã được triển khai đúng chưa, hãy thực hiện lệnh dưới đây:
$ sudo date
Kết quả được hiển thị như sau:
SunOct 28 12:18:59 EDT 2018
Chính nó rồi đó! Bây giờ bạn đã biết cách xem hoặc thay đổi múi giờ của mình trên hệ thống Ubuntu 18.04.
2.2. Triển khai Timesyncd
Từ lâu, ntpd (Network Time Protocol Deamon) đã được sử dụng để xử lý đồng bộ hóa thời gian trong hệ thống Ubuntu. Ntpd liên kết với một bộ máy chủ NTP để cập nhật thời gian chính xác liên tục.
Mặc dù tính năng và khả năng sử dụng của nó, nhưng ntpd đã được thay thế bằng dịch vụ timesyncd trong hệ thống Ubuntu mới nhất. Dịch vụ timesyncd gần như giống với ntpd về cách thức hoạt động và máy chủ thời gian mà nó kết nối. Tuy nhiên, timesncd có nhiều ưu điểm hơn ntpd ở chỗ nhẹ, tích hợp hoàn toàn với hệ thống systemd và Ubuntu.
Để kiểm tra trạng thái của timesyncd trên hệ thống Ubuntu 18.04 của bạn, hãy chạy lệnh bên dưới:
$ sudo timedatectl
Điều này sẽ cho bạn kết quả dưới đây:
Local time: Sun 2018-10-28 12:54:53 EDT Universal time: Sun 2018-10-28 12:54:53 UTC RTC time: Sun 2018-10-28 12:54:53 Time zone: America/New_York (EDT, -0400) System clock synchronized: yes systemd-timesyncd.service active: yes RTC in local TZ: no
Giá trị YES cho System clock synchronized chứng minh rằng thời gian được đồng bộ hóa chính xác và YES cho systemd-timesyncd.service đang hoạt động cho biết rằng timesyncd đã được bật và đang chạy đúng cách.
Trong trường hợp timesyncd không hoạt động, hãy chạy lệnh bên dưới để bật nó lên;
$ sudo timedatectl set-ntpon
Sau khi bạn bật timesyncd, hãy thực thi hẹn giờ để kiểm tra trạng thái thời gian mạng.
2.3. Thay đổi thành Ntpd
Timesyncd lý tưởng cho nhiều mục đích, nhưng không phải tất cả. Một số ứng dụng nhạy cảm với thời gian và có thể được ntpd xử lý tốt hơn. Điều này là do ntpd sử dụng các kỹ thuật phức tạp và có khả năng xử lý ngay cả những nhiễu loạn thời gian nhỏ nhất. Nếu bạn đang làm việc trên các ứng dụng nhạy cảm về thời gian, hãy làm theo các bước dưới đây để chuyển sang tiện ích ntpd.
Đầu tiên, hãy chạy lệnh dưới đây để hủy kích hoạt timesyncd:
$ sudo timedatectl set-ntpno
Tiếp theo, gõ lệnh bên dưới để kiểm tra trạng thái của timesyncd:
$ sudo timedatectl
Kiểm tra để xem giá trị của systemd-timesyncd.service đang hoạt động không có trên đầu ra. Bây giờ bạn có thể thực hiện lệnh dưới đây để cài đặt ntp:
$ sudo apt update $ sudo apt install ntp
Ntpd sẽ được cài đặt và khởi động tự động. Chạy lệnh dưới đây để kiểm tra chi tiết trạng thái của ntpd:
$ sudo ntpq -p
Điều này sẽ cung cấp cho bạn kết quả tương tự như bên dưới:
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 +ec2-52-0-56-137 216.239.35.0 2 u 16 64 1 7.872 -2.137 1.485 +66.220.10.2 129.6.15.30 2 u 12 64 1 65.204 3.740 2.686 +block.steinhoff 209.51.161.238 2 u 11 64 1 33.364 1.710 3.586 +eterna.binary.n 216.229.0.50 3 u 11 64 1 35.330 2.821 2.839 +2604:a880:800:1 209.51.161.238 2 u 14 64 1 0.394 0.386 2.462 +ec2-52-6-160-3. 130.207.244.240 2 u 11 64 1 8.150 2.050 3.053 +mx.danb.email 127.67.113.92 2 u 13 64 1 63.868 1.539 2.240 *hydrogen.consta 129.6.15.28 2 u 12 64 1 2.989 1.755 2.563 .....
Done it! Bạn đã học được cách thay đổi múi giờ, kiểm tra giờ hệ thống và triển khai timesyncd mặc định. Chúc bạn thực hiện thành công và có nhiều niềm vui trong cuộc sống!