Hệ điều hành (OS), Linux

Hướng dẫn cách điều chỉnh thời gian và múi giờ (TimeZone) trên CentOS 8

Mô tả

Hướng dẫn chi tiết cách điều chỉnh thời gian và múi giờ (TimeZone) trên CentOS 8. Bao gồm các lệnh kiểm tra, thay đổi múi giờ, đồng bộ thời gian NTP và thiết lập thời gian thủ công.

Giới thiệu

Việc thiết lập chính xác thời gian và múi giờ trên CentOS 8 là cực kỳ quan trọng, đặc biệt là với các hệ thống máy chủ và ứng dụng cần tính chính xác về thời gian. Đúng thời gian để giúp cho việc như ghi log, cron job, đồng bộ hóa dữ liệu và bảo mật hoạt động chính xác hơn.

Bài viết này sẽ hướng dẫn bạn cách kiểm tra và điều chỉnh thời gian, múi giờ trên CentOS 8 bằng các lệnh như timedatectl, chronydate. Vậy chúng ta hãy cùng bắt đầu!

1. Kiểm tra thời gian và múi giờ hiện tại

Trước hết, bạn cần kiểm tra thời gian và múi giờ hiện tại của Linux. Sử dụng lệnh sau:

timedatectl

Kết quả đầu ra mẫu:

[root@Linuxserver-phuonglh ~]# timedatectl
Local time: Mon 2024-12-09 15:49:44 +07
Universal time: Mon 2024-12-09 08:49:44 UTC
RTC time: Mon 2024-12-09 08:49:44
Time zone: Asia/Ho_Chi_Minh (+07, +0700)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no

Giải thích các thông tin hiển thị ở trên:

  • Local time: Thời gian địa phương (theo múi giờ hiện tại của Linux server).
  • Universal time: Giờ quốc tế (UTC).
  • RTC time: Giờ của đồng hồ phần cứng (BIOS/CMOS).
  • Time zone: Múi giờ hiện tại của Linux server (ví dụ: Asia/Ho_Chi_Minh cho múi giờ Việt Nam).
  • System clock synchronized: Hệ thống Linux có đồng bộ thời gian với máy chủ NTP hay không.
  • NTP service: Trạng thái dịch vụ NTP (Network Time Protocol).

2. Thay đổi múi giờ trên CentOS 8

Bước 1: Xem danh sách các múi giờ có sẵn

Sử dụng lệnh sau để liệt kê tất cả các múi giờ có sẵn:

timedatectl list-timezones

Ví dụ một số múi giờ phổ biến:

  • Asia/Ho_Chi_Minh (múi giờ Việt Nam, UTC+7)
  • America/New_York (Mỹ)
  • Asia/Tokyo (Nhật Bản)
  • Europe/London (Giờ Anh – London)
  • UTC (Giờ quốc tế UTC+0)

Bước 2: Đặt múi giờ cho Linux server

Sau khi xác định múi giờ tại quốc gia bạn đang sống, bạn có thể thay đổi múi giờ bằng lệnh sau:

sudo timedatectl set-timezone <múi_giờ_mới>

Ví dụ: Để đặt múi giờ của Linux server thành múi giờ Việt Nam Asia/Ho_Chi_Minh, bạn sử dụng lệnh sau:

sudo timedatectl set-timezone Asia/Ho_Chi_Minh

Bước 3: Xác nhận thay đổi múi giờ

Sau khi thiết lập xong, kiểm tra lại thời gian và múi giờ hiện tại của hệ thống Linux bằng lệnh:

timedatectl

Kiểm tra Time zone để đảm bảo múi giờ đã được thay đổi thành Asia/Ho_Chi_Minh.

3. Đồng bộ thời gian với NTP trong Linux CentOS 8

NTP (Network Time Protocol) giúp đồng bộ hóa thời gian trên Linux server với máy chủ thời gian trên Internet. Trên CentOS 8, dịch vụ Chrony được sử dụng thay cho dịch vụ NTP truyền thống.

Bước 1: Cài đặt dịch vụ Chrony

Để cài đặt dịch vụ Chrony, bạn chạy lệnh sau:

sudo dnf install -y chrony

Bước 2: Khởi động và bật tự động khởi động dịch vụ Chrony

Chạy các lệnh sau để khởi động dịch vụ Chrony và đặt dịch vụ này khởi động cùng Linux server:

sudo systemctl start chronyd

sudo systemctl enable chronyd

Bước 3: Kiểm tra trạng thái đồng bộ NTP

Kiểm tra trạng thái đồng bộ hóa NTP với lệnh:

timedatectl status

Xác nhận rằng các thông số sau đều chính xác:

  • NTP service: active (Dịch vụ NTP đang chạy).
  • System clock synchronized: yes (Hệ thống Linux đã được đồng bộ).

4. Đặt thời gian thủ công trên CentOS 8

Nếu bạn cần đặt thời gian thủ công (không đồng bộ với NTP), hãy sử dụng lệnh date.

Bước 1: Đặt thời gian thủ công

Cú pháp lệnh:

sudo date -s “YYYY-MM-DD HH:MM:SS”

Ví dụ: Đặt thời gian thành 2024-12-09 14:45:00:

sudo date -s “2024-12-09 14:45:00”

Bước 2: Đồng bộ thời gian hệ thống Linux với đồng hồ phần cứng (RTC) của MAINBOARD

Để đảm bảo đồng hồ phần cứng (RTC) được đồng bộ với thời gian hệ thống, sử dụng lệnh:

sudo hwclock –systohc

Lệnh này sẽ ghi thời gian hệ thống vào đồng hồ phần cứng của máy tính (BIOS/CMOS).

5. Tóm tắt các lệnh quan trọng

Lệnh Chức năng
timedatectl Kiểm tra thời gian, múi giờ và trạng thái NTP.
timedatectl list-timezones Liệt kê tất cả các múi giờ có sẵn.
sudo timedatectl set-timezone Asia/Ho_Chi_Minh Đặt múi giờ hệ thống thành Việt Nam.
sudo dnf install -y chrony Cài đặt dịch vụ Chrony.
sudo systemctl start chronyd Khởi động dịch vụ Chrony.
sudo date -s “2024-12-09 14:45:00” Đặt thời gian thủ công.
sudo hwclock –systohc Đồng bộ thời gian hệ thống với đồng hồ phần cứng.
sudo systemctl enable chronyd Bật tự động khởi động dịch vụ Chrony.

6. Lỗi thường gặp và cách khắc phục

  1. Lỗi “Failed to set time”
    • Nguyên nhân: Không có quyền root.
    • Khắc phục: Sử dụng sudo trước lệnh hoặc chuyển sang sử dụng tài khoản root.
  2. Lỗi “timedatectl: command not found”
    • Nguyên nhân: Lệnh timedatectl không có trên hệ thống Linux.
    • Khắc phục: Cài đặt gói systemd:
      sudo dnf install -y systemd
  1. Dịch vụ Chrony không đồng bộ thời gian
    • Nguyên nhân: Dịch vụ chronyd không chạy.

                         Khắc phục: Khởi động chạy dịch vụ Chrony:

                          sudo systemctl start chronyd

Kết luận

Việc thiết lập múi giờ và thời gian trên CentOS 8 rất quan trọng để đồng bộ hóa log, hệ thống và các ứng dụng. Chúng ta có thể sử dụng lệnh timedatectl để kiểm tra và thay đổi múi giờ, sử dụng Chrony để đồng bộ thời gian với NTP, và sử dụng date để đặt thời gian thủ công.

Nếu bạn có bất kỳ câu hỏi nào hoặc cần hỗ trợ thêm, hãy để lại bình luận bên dưới!

 

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *