Time & Timezone Management

ตั้งค่า Time Zone, ปรับเวลาด้วยตนเอง, เปิดใช้งาน NTP และตรวจสอบเวลาที่ Cron ใช้

Ubuntu / Debian Asia/Bangkok (+07) NTP Sync
1
ตั้ง Time Zone เป็นประเทศไทย (Asia/Bangkok)
🇹🇭 ค้นหา zone “Bangkok” และกำหนดให้ระบบใช้เขตเวลาไทย (UTC+7)
timedatectl list-timezones | grep Bangkok
sudo timedatectl set-timezone Asia/Bangkok
timedatectl
หลังจากตั้งค่า ควรแสดง Time zone: Asia/Bangkok (+07, +0700)
2
ตั้งวันและเวลาเอง (Manual)
✋ ปิด NTP ก่อน แล้วกำหนดวันที่/เวลาตามต้องการ (ตัวอย่าง: 6 มิถุนายน 2026 เวลา 23:50:00)
sudo timedatectl set-ntp false
sudo timedatectl set-time "2026-06-06 23:50:00"
date
ข้อควรระวัง: การตั้งเวลาแบบ manual จะหยุดการ sync อัตโนมัติ เหมาะสำหรับการทดสอบหรือ lab เท่านั้น
3
เปิดใช้งาน NTP (Network Time Protocol) — แนะนำ
🌐 ให้เซิร์ฟเวอร์ซิงค์เวลาอัตโนมัติกับ NTP server แม่นยำและปลอดภัย
sudo timedatectl set-ntp true
timedatectl status
✅ หลังจากเปิด NTP ควรมองเห็น:
System clock synchronized: yes
NTP service: active
4
ตรวจสอบเวลาที่ Cron จะอ้างอิง
⏲️ Cron ใช้เวลาจาก Time Zone ของระบบ ดังนั้นให้รัน date เพื่อดูเวลาปัจจุบัน และตั้งค่า cron job
date
timedatectl show
🧪 ตัวอย่าง Cron ที่ reboot เครื่องทุกวัน 23:50 ตามเวลาไทย:
50 23 * * * /sbin/reboot
หมายเหตุ: หากต้องการให้ Cron ทำงานตามเวลา Asia/Bangkok ต้องแน่ใจว่าระบบ Time Zone ถูกต้อง (ขั้นตอนที่ 1)
📋
คำสั่งวินิจฉัยเวลาและ NTP
🩺 ชุดคำสั่งสำหรับตรวจสอบเวลา, zone, การ sync และบริการ NTP
timedatectl
timedatectl show
cat /etc/timezone
systemctl status systemd-timesyncd
🔄
คืนค่า NTP อัตโนมัติ (หลัง manual)
ถ้าคุณเคยปิด NTP และตั้งเวลา manual แล้วต้องการกลับมาใช้เวลา realtime อัตโนมัติอีกครั้ง
sudo timedatectl set-ntp true
sudo systemctl restart systemd-timesyncd
timedatectl
โดยทั่วไประบบ Ubuntu ใช้ systemd-timesyncd ซึ่งทำงานร่วมกับ timedatectl ได้ดี
✅ คัดลอกคำสั่งสำเร็จ