วิธีการตั้งค่างาน Cron ใน Linux

Withi Kar Tang Kha Ngan Cron Ni Linux



Cron เป็นตัวกำหนดเวลางานตามเวลาที่ให้คุณกำหนดเวลางานและเรียกใช้สคริปต์เป็นระยะ ๆ ตามเวลา วันที่ หรือช่วงเวลาที่กำหนด นอกจากนี้ งานเหล่านี้ยังเรียกว่างาน cron ด้วยงาน cron คุณสามารถทำงานซ้ำๆ ได้อย่างมีประสิทธิภาพ เช่น การล้างแคช การซิงโครไนซ์ข้อมูล การสำรองข้อมูลระบบและการบำรุงรักษา ฯลฯ

งาน cron เหล่านี้ยังมีคุณสมบัติอื่นๆ เช่น คำสั่งอัตโนมัติ ซึ่งสามารถลดโอกาสที่จะเกิดข้อผิดพลาดจากมนุษย์ได้อย่างมาก อย่างไรก็ตาม ผู้ใช้ Linux จำนวนมากประสบปัญหาหลายประการขณะตั้งค่างาน cron บทความนี้จึงแสดงตัวอย่างวิธีตั้งค่างาน cron ใน Linux







วิธีการตั้งค่างาน Cron

ประการแรก คุณต้องรู้เกี่ยวกับไฟล์ crontab เพื่อตั้งค่างาน cron ใน Linux คุณสามารถเข้าถึงไฟล์นี้เพื่อดูข้อมูลเกี่ยวกับงาน cron ที่มีอยู่ และแก้ไขเพื่อแนะนำงานใหม่ ก่อนที่จะเปิดไฟล์ crontab โดยตรง ให้ใช้คำสั่งด้านล่างเพื่อตรวจสอบว่าระบบของคุณมียูทิลิตี้ cron:





ซูโดะ cron รายการฉลาด

  กำลังแสดงรายการของ crons ที่ใช้งานอยู่ในปัจจุบัน





หากไม่มีเอาต์พุตตามที่แสดงในรูปภาพที่ให้มา ให้ติดตั้ง cron โดยใช้:



ซูโดะ apt-get ติดตั้ง ครอน -และ

ตอนนี้ตรวจสอบว่าบริการ cron ทำงานอยู่โดยใช้คำสั่งดังต่อไปนี้:

สถานะบริการ cron

  ตรวจสอบสถานะบริการ cron

เมื่อเสร็จแล้ว ให้แก้ไข crontab เพื่อเริ่มงาน cron ใหม่:

โครนแท็บ -มันคือ

ระบบจะขอให้คุณเลือกโปรแกรมแก้ไขข้อความเฉพาะ ตัวอย่างเช่น เราใช้โปรแกรมแก้ไขนาโนโดยป้อน '1' เป็นอินพุต อย่างไรก็ตาม คุณสามารถเลือกตัวแก้ไขใดๆ ได้ เนื่องจากปัจจัยที่ส่งผลต่องาน cron คือรูปแบบของงาน ซึ่งเราจะอธิบายในขั้นตอนถัดไป

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

  คำแนะนำของ cron-งาน

สุดท้ายให้ผนวกนิพจน์ crontab ต่อไปนี้ในไฟล์:

- - - - - - เส้นทาง - สคริปต์

ในที่นี้ เครื่องหมายดอกจัน (*) แต่ละตัวจะระบุนาที ชั่วโมง รายวัน รายสัปดาห์ และรายเดือน สิ่งนี้จะกำหนดทุกแง่มุมของเวลาเพื่อให้งาน cron สามารถดำเนินการได้อย่างราบรื่นตามเวลาที่กำหนด นอกจากนี้ ให้แทนที่เงื่อนไขเส้นทางและสคริปต์ด้วยเส้นทางที่มีสคริปต์เป้าหมายและชื่อสคริปต์ตามลำดับ

รูปแบบเวลาเพื่อกำหนดเวลางาน Cron

เนื่องจากรูปแบบเวลาที่กล่าวถึงในคำสั่งข้างต้นอาจทำให้เกิดความสับสน เรามาหารือเกี่ยวกับรูปแบบของมันโดยย่อ:

  1. ใน นาที คุณสามารถป้อนค่าในช่วง 0-59 โดยที่ 0 และ 59 แทนนาทีที่มองเห็นได้บนนาฬิกา สำหรับหมายเลขอินพุต เช่น 9 งานจะดำเนินการในนาทีที่ 9 ทุกชั่วโมง
  2. สำหรับ ชั่วโมง คุณสามารถป้อนค่าได้ตั้งแต่ 0 ถึง 23 ตัวอย่างเช่น ค่าสำหรับ 14.00 น. จะเป็น '14'
  3. ที่ วันของเดือน สามารถอยู่ระหว่าง 1 ถึง 31 โดยที่ 1 ถึง 31 ระบุวันแรกและวันสุดท้ายของเดือนอีกครั้ง สำหรับค่า 17 งาน cron จะทำงานในวันที่ 17 ของทุกเดือน
  4. แทนที่ เดือน คุณสามารถป้อนช่วง 1 ถึง 12 โดยที่ 1 หมายถึงเดือนมกราคม และ 12 หมายถึงเดือนธันวาคม งานจะถูกดำเนินการเฉพาะในช่วงเดือนที่คุณระบุที่นี่

บันทึก: ค่า '*' หมายถึงทุกค่าที่ยอมรับได้ ตัวอย่างเช่น หากใช้ '*' แทนที่ฟิลด์นาที งานจะทำงานทุกนาทีของชั่วโมงที่ระบุ

ตัวอย่างเช่น ด้านล่างนี้คือนิพจน์เพื่อกำหนดเวลางาน cron เวลา 9.30 น. ทุกวันอังคาร:

30 9 - - 2 - เส้นทาง - สคริปต์

ตัวอย่างเช่น หากต้องการตั้งค่างาน cron เวลา 17.00 น. ในวันหยุดสุดสัปดาห์ในเดือนเมษายน:

0 17 - 4 0 - 6 - 7 - เส้นทาง - สคริปต์

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

ตัวดำเนินการทางคณิตศาสตร์สำหรับงาน Cron

ไม่ว่าคุณจะมีประสบการณ์ใน Linux มาก่อน คุณมักจะจำเป็นต้องทำให้งานทำงานโดยอัตโนมัติเพื่อให้รันปีละสองครั้ง สามครั้งต่อเดือน และอื่นๆ อีกมากมาย ในกรณีนี้ คุณสามารถใช้ตัวดำเนินการเพื่อแก้ไขงาน cron เดียวเพื่อให้ทำงานในเวลาที่ต่างกันได้

  1. เส้นประ(-): คุณสามารถระบุช่วงของค่าได้โดยใช้เครื่องหมายขีดกลาง ตัวอย่างเช่น หากต้องการตั้งค่างาน cron ตั้งแต่ 00.00 น. ถึง 12.00 น. คุณสามารถป้อน * 0-12 * * * /path/script
  2. เครื่องหมายทับ (/): เครื่องหมายทับช่วยให้คุณแบ่งค่าที่ยอมรับได้ของช่องออกเป็นหลายค่า ตัวอย่างเช่น หากต้องการให้งาน cron ทำงานทุกไตรมาส คุณจะต้องป้อน * * * /3 * /path/script
  3. จุลภาค(,) : เครื่องหมายจุลภาคคั่นระหว่างค่าที่แตกต่างกันสองค่าในช่องป้อนข้อมูลเดียว ตัวอย่างเช่น นิพจน์ cron สำหรับงานที่จะดำเนินการในวันจันทร์และวันพุธคือ * * * * 1,3 /path/script
  4. เครื่องหมายดอกจัน(*): ตามที่กล่าวไว้ข้างต้น เครื่องหมายดอกจันแสดงถึงค่าทั้งหมดที่ฟิลด์อินพุตยอมรับ หมายความว่าเครื่องหมายดอกจันแทนที่ช่องเดือนจะกำหนดเวลางาน cron สำหรับทุกเดือน

คำสั่งในการจัดการงาน Cron

การจัดการงาน cron ก็เป็นสิ่งสำคัญเช่นกัน ดังนั้น ต่อไปนี้เป็นคำสั่งบางส่วนที่คุณสามารถใช้เพื่อแสดงรายการ แก้ไข และลบงาน cron:

  1. ตัวเลือก l ใช้เพื่อแสดงรายการงาน cron
  2. ตัวเลือก r จะลบงาน cron ทั้งหมด
  3. ตัวเลือก e แก้ไขไฟล์ crontab

ผู้ใช้ระบบของคุณทุกคนจะได้รับไฟล์ crontab แยกกัน อย่างไรก็ตาม คุณยังสามารถดำเนินการข้างต้นกับไฟล์ได้โดยการเพิ่มชื่อผู้ใช้ระหว่างคำสั่ง– crontab -u ชื่อผู้ใช้ [ตัวเลือก]

สรุปอย่างรวดเร็ว

การดำเนินการซ้ำๆ เป็นกระบวนการที่ใช้เวลานานซึ่งจะลดประสิทธิภาพของคุณในฐานะผู้ดูแลระบบ งาน Cron ช่วยให้คุณทำงานต่างๆ ได้โดยอัตโนมัติ เช่น การเรียกใช้สคริปต์หรือคำสั่งในเวลาที่กำหนด ซึ่งช่วยลดภาระงานที่ซ้ำซ้อน ดังนั้นบทความนี้จะอธิบายวิธีสร้างงาน cron ใน Linux อย่างครอบคลุม นอกจากนี้ เรายังบรรยายสรุปการใช้รูปแบบเวลาที่เหมาะสมและตัวดำเนินการทางคณิตศาสตร์โดยใช้ตัวอย่างที่เหมาะสม