DriteStudioDRITESTUDIODRITESTUDIO
首页文章关于我们联系我们
首页
VPS 云服务器高性能虚拟服务器,提供完整 Root 权限
VPS 外汇交易超低延迟 VPS,专为外汇和自动交易优化
虚拟主机附带 Plesk 和免费 SSL 的虚拟主机
游戏服务器托管支持全球 20+ 款游戏。您可以租用 VPS,并告知我们想要部署的游戏。
独立服务器企业级硬件,支持 IPMI 远程管理
托管服务安全的数据中心机柜空间
安全服务WAF、DDoS 防护与 24/7 SOC 监控
网站开发使用现代框架定制网站设计与开发
SEO 服务通过文章、外链和技术 SEO 提升排名
状态查看系统运行状态和服务可用性
文章关于我们联系我们
0%
CronJob คืออะไร? วิธีตั้งเวลาสั่งงานอัตโนมัติบน Linux แบบมือโปร
返回文章列表

CronJob คืออะไร? วิธีตั้งเวลาสั่งงานอัตโนมัติบน Linux แบบมือโปร

เรียนรู้ CronJob คืออะไร พร้อม crontab syntax ตัวอย่างการใช้งานจริง เปรียบเทียบกับ systemd timers และเคล็ดลับตั้งเวลาสั่งงานอัตโนมัติบน Linux อย่างมืออาชีพ

Linux-August 11, 2023-更新: April 17, 2026

CronJob คืออะไร? ระบบตั้งเวลาสั่งงานอัตโนมัติบน Linux

CronJob คือระบบตั้งเวลาบน Linux ที่ช่วยให้ผู้ดูแลเซิร์ฟเวอร์สามารถกำหนดให้คำสั่งหรือสคริปต์ทำงานอัตโนมัติตามเวลาที่ตั้งไว้ ไม่ว่าจะเป็นการสำรองฐานข้อมูล ลบไฟล์ชั่วคราว หรือตรวจสอบสถานะระบบ CronJob จัดการได้ทั้งหมดโดยไม่ต้องนั่งพิมพ์คำสั่งเอง ถือเป็นเครื่องมือพื้นฐานที่ขาดไม่ได้สำหรับการดูแลเซิร์ฟเวอร์

Cron ทำงานอย่างไร

Cron เป็น daemon (โปรแกรมที่ทำงานอยู่เบื้องหลัง) บน Linux ที่คอยตรวจสอบตารางเวลาและรันคำสั่งตามที่ตั้งไว้ ส่วน crontab คือไฟล์ที่เก็บตารางเวลา ทุก user ในระบบสามารถมี crontab เป็นของตัวเองได้

ทำความเข้าใจ Crontab Syntax

หัวใจของ CronJob คือการเขียน crontab syntax ที่ถูกต้อง ประกอบด้วย 5 ส่วนตามด้วยคำสั่งที่ต้องการรัน

นาที ชั่วโมง วันของเดือน เดือน วันของสัปดาห์ คำสั่ง
(0-59) (0-23)   (1-31)      (1-12) (0-7)         command

เครื่องหมาย * หมายถึงทุกค่า เครื่องหมาย , ใช้ระบุหลายค่า และ / ใช้กำหนดช่วง

วิธีแก้ไข Crontab

crontab -e    # แก้ไข crontab ของ user ปัจจุบัน
crontab -l    # ดู crontab ที่ตั้งไว้
crontab -r    # ลบ crontab ทั้งหมด (ระวัง!)

ตัวอย่าง CronJob ที่ใช้บ่อย

สำรองฐานข้อมูลทุกคืน

0 3 * * * mysqldump -u root mydb > /backup/db_$(date +\%Y\%m\%d).sql

รันทุกวันตอนตี 3 สำรองฐานข้อมูลพร้อมใส่วันที่ในชื่อไฟล์

ลบ log เก่าทุกสัปดาห์

0 4 * * 0 find /var/log/myapp -name "*.log" -mtime +30 -delete

ทุกวันอาทิตย์ตอนตี 4 ลบ log ที่เก่ากว่า 30 วัน

ตรวจสอบ disk space ทุก 30 นาที

*/30 * * * * df -h | grep -E "9[0-9]%|100%" && echo "Disk almost full" | mail -s "Alert" [email protected]

Cron vs Systemd Timers

Linux รุ่นใหม่มีทางเลือกเพิ่มเติมคือ systemd timers ซึ่งให้ log ที่ละเอียดกว่า สามารถรันชดเชยได้ถ้าพลาดเวลา และจัดการ dependency ระหว่าง service ได้ดีกว่า แต่ตั้งค่ายุ่งยากกว่า cron

สำหรับงานส่วนใหญ่ cron ยังคงเป็นตัวเลือกที่ดีเพราะง่ายและตรงไปตรงมา

เคล็ดลับและข้อควรระวัง

ระบุ path เต็มเสมอ

Cron ไม่ได้โหลด environment เหมือนตอนล็อกอิน ควรระบุ path เต็มของคำสั่ง เช่น /usr/bin/python3 แทน python3

เก็บ output ไว้ตรวจสอบ

เพิ่ม redirect output เช่น >> /var/log/myjob.log 2>&1 ต่อท้ายคำสั่ง เพื่อตรวจสอบปัญหาได้ภายหลัง

ทดสอบคำสั่งก่อนใส่ crontab

รันคำสั่งด้วยมือก่อนเสมอเพื่อให้แน่ใจว่าทำงานถูกต้อง

ระวังเรื่อง timezone

Cron ใช้ timezone ของระบบ ถ้าเซิร์ฟเวอร์ตั้ง UTC แต่ต้องการรัน job ตามเวลาไทย ต้องคำนวณเวลาให้ถูก

คำถามที่พบบ่อย

CronJob รันแล้วไม่ทำงาน ต้องเช็คอะไร?

สาเหตุที่พบบ่อยคือ path ไม่ถูกต้อง สิทธิ์ของไฟล์ไม่เพียงพอ หรือ environment variable ไม่ถูกตั้งค่า ลองเพิ่ม redirect output เพื่อดู error log และตรวจสอบ /var/log/syslog หรือ /var/log/cron ด้วย

ตั้ง CronJob ให้รันทุกกี่วินาทีได้ไหม?

Cron รองรับความถี่ต่ำสุดที่ 1 นาที หากต้องการรันทุกกี่วินาที ต้องใช้วิธีอื่น เช่น เขียน script ที่วนลูปด้วย sleep หรือใช้ systemd timer ที่รองรับหน่วยวินาที

CronJob ทำงานซ้อนกันได้ไหม?

ได้ ถ้า job ก่อนหน้ายังไม่เสร็จแต่ถึงเวลารันใหม่ cron จะสร้าง process ใหม่ทับ หากต้องการป้องกัน ให้ใช้ flock หรือเขียน lock file เพื่อไม่ให้ job ซ้อนกัน

CronJob ของ root กับ user ปกติต่างกันอย่างไร?

CronJob ของ root มีสิทธิ์เข้าถึงทุกอย่างในระบบ ส่วน user ปกติจะมีสิทธิ์จำกัดตาม permission ของ user นั้น แนะนำให้ใช้ root cron เฉพาะงานที่จำเป็นจริง ๆ เท่านั้น

ตั้งงานอัตโนมัติบน VPS ของ DriteStudio

CronJob เป็นเครื่องมือที่ขาดไม่ได้สำหรับการจัดการเซิร์ฟเวอร์ หากคุณต้องการ VPS ที่มี root access เต็มรูปแบบ สามารถตั้ง CronJob ได้ตามใจโดยไม่มีข้อจำกัด DriteStudio เตรียมเซิร์ฟเวอร์บน hardware คุณภาพสูงให้ scheduled job ของคุณรันตรงเวลาทุกครั้ง หรือหากต้องการ Hosting ก็สามารถใช้ CronJob ได้เช่นกัน ติดต่อ DriteStudio วันนี้เพื่อเลือกแพลนที่เหมาะกับคุณ

分享文章:
查看更多文章
D

DriteStudio

提供 VPS、虚拟主机与服务器托管服务的泰国数字基础设施服务商

由 Craft Intertech (Thailand) Co., Ltd. 运营

© 2026 Craft Intertech (Thailand) Co., Ltd. 保留所有权利。

隐私政策服务条款系统状态