NỘI DUNG
Trong quản trị máy chủ, việc sai lệch thời gian hệ thống có thể dẫn đến nhiều hệ lụy nghiêm trọng: log file bị sai mốc thời gian, các tác vụ lập lịch (Cronjob) chạy không đúng giờ, hoặc các tính năng bảo mật (như chặn đăng nhập theo khung giờ) hoạt động sai mục tiêu.
Dưới đây là quy trình chuẩn để cấu hình múi giờ và đồng bộ thời gian cho các dòng VPS phổ biến như AlmaLinux, CentOS, RHEL, Ubuntu và Debian.
1. Kiểm tra trạng thái thời gian hiện tại
Trước khi cấu hình, bạn cần kiểm tra xem hệ thống đang sử dụng múi giờ nào và đã bật đồng bộ hay chưa bằng lệnh:
timedatectlCác thông số cần nắm
- Time zone: Múi giờ hiện tại (Ví dụ: Asia/Ho_Chi_Minh).
- System clock synchronized: Nếu là no, thời gian chưa được đồng bộ tự động.
- NTP service: Trạng thái dịch vụ đồng bộ.

Nếu muốn xem danh sách các múi giờ khả dụng, hãy dùng lệnh:
timedatectl list-timezones2. Thiết lập Múi giờ (Timezone)
Để chuyển máy chủ về giờ Việt Nam (GMT+7), bạn thực hiện lệnh sau:
timedatectl set-timezone Asia/Ho_Chi_MinhLưu ý cho các hệ điều hành cũ: Nếu máy chủ của bạn không hỗ trợ timedatectl, bạn có thể cấu hình thủ công bằng cách tạo liên kết link tới file múi giờ:
ln -sf /usr/share/zoneinfo/Asia/Ho_Chi_Minh /etc/localtime2. Cài đặt và cấu hình Chrony để đồng bộ chuẩn xác
Chrony là một giải pháp thay thế hiện đại cho NTP truyền thống, giúp đồng bộ thời gian nhanh và chính xác hơn trên môi trường ảo hóa.
Bước 1: Cài đặt Chrony
Trên AlmaLinux/CentOS/RHEL:
dnf install chrony -yTrên Ubuntu/Debian:
apt update && sudo apt install chrony -yBước 2: Kích hoạt dịch vụ
Sau khi cài đặt, bạn cần khởi động và cho phép Chrony tự chạy mỗi khi khởi động lại VPS:
systemctl start chronyd
systemctl enable chronyd(Lưu ý: Trên một số bản Ubuntu, tên dịch vụ có thể chỉ là chrony thay vì chronyd).

Bước 3: Kích hoạt đồng bộ NTP trên hệ thống
Chạy lệnh sau để yêu cầu hệ điều hành sử dụng giao thức NTP:
timedatectl set-ntp true4. Kiểm tra kết quả
Cuối cùng, hãy chạy lại lệnh timedatectl. Một kết quả “chuẩn” sẽ hiển thị như sau:
- Local time: Khớp với giờ thực tế tại Việt Nam.
- System clock synchronized: yes (Đã đồng bộ).
- NTP service: active (Dịch vụ đang hoạt động).
5. Tự động hóa với Bash Script (Dành cho quản trị nhiều VPS)
Nếu bạn cần cấu hình nhanh cho nhiều máy chủ cùng lúc, hãy sử dụng Script dưới đây để tiết kiệm thời gian.
Cách thực hiện
- Tạo file: nano set_time.sh
- Dán đoạn mã bên dưới và lưu lại.
- Cấp quyền: chmod +x set_time.sh
- Thực thi: ./set_time.sh
#!/bin/bash
#Author: DOTRUNGQUAN.INFO
# Khai báo múi giờ mục tiêu
TARGET_TZ="Asia/Ho_Chi_Minh"
echo "--- Đang bắt đầu quá trình thiết lập thời gian ---"
# 1. Cấu hình Timezone
sudo timedatectl set-timezone $TARGET_TZ
echo "Đã chuyển múi giờ sang: $TARGET_TZ"
# 2. Nhận diện OS và cài đặt Chrony
if [ -f /etc/redhat-release ]; then
# Nhóm RHEL/CentOS/AlmaLinux
sudo dnf install -y chrony
SYSTEM_SVC="chronyd"
elif [ -f /etc/debian_version ]; then
# Nhóm Ubuntu/Debian
sudo apt update && sudo apt install -y chrony
SYSTEM_SVC="chrony"
else
echo "Hệ điều hành không hỗ trợ!"
exit 1
fi
# 3. Kích hoạt dịch vụ
sudo systemctl start $SYSTEM_SVC
sudo systemctl enable $SYSTEM_SVC
sudo timedatectl set-ntp true
echo "-----------------------------------------------"
echo "Cấu hình hoàn tất! Kiểm tra lại trạng thái:"
timedatectl | grep -E "Local time|synchronized|service"Hy vọng hướng dẫn này giúp bạn kiểm soát thời gian trên VPS một cách chuyên nghiệp hơn.
