คำถามติดแท็ก cron

Cron เป็นตัวจัดตารางงานตามเวลาในระบบปฏิบัติการคอมพิวเตอร์ Unix Cron ช่วยให้ผู้ใช้สามารถกำหนดเวลางาน (คำสั่งหรือเชลล์สคริปต์) ให้ทำงานเป็นระยะในบางช่วงเวลาหรือวันที่


6
Outgrowing cron: กำหนดการต่อไปคืออะไร? [ปิด]
เราใช้ cron มานานเท่าที่ฉันจำได้เพื่อจัดการกับความต้องการการจัดตารางงานทั้งหมดของเรา ทุกอย่างนับตั้งแต่โคลนนิ่งสตอเรจ / สแน็ปช็อตไปจนถึงรายงานจากฐานข้อมูลไปจนถึงรายงานระบบรายวันจนถึงการตรวจสอบการตรวจสอบจะถูกกำหนดไว้ในเซิร์ฟเวอร์สองสามร้อยเครื่องผ่าน cron ข้อเสียคือค่อนข้างชัดเจน: ยากต่อการจัดการงานไม่มีวิธีง่ายๆในการสร้างการอ้างอิง (โดยเฉพาะในเซิร์ฟเวอร์ที่แตกต่างกัน) และแน่นอนว่าเป็นเรื่องที่หลีกเลี่ยงไม่ได้ที่บางคน "ชั่วคราว" ข้ามงาน แต่ภายหลังลืมลบความคิดเห็น เราลองเสนอขายเชิงพาณิชย์ แต่ในที่สุดมันก็ถือว่าแพงเกินไปเมื่อเทียบกับ cron ฉันเห็นตัวเลือกอื่น ๆ เช่น SLURM, Oracle Grid Engine, Torque / Maui, Quartz, DIET, Condor ซึ่งดูเหมือนว่าจะมุ่งเน้นไปที่สภาพแวดล้อมของคลัสเตอร์ที่มีขนาดใหญ่ขึ้นและเป็นเนื้อเดียวกันมากขึ้นด้วยงานซึ่งจะทำงานบนโหนดจำนวนเดียวกัน และไม่ชอบ สภาพแวดล้อมของเรามีความหลากหลาย (Linux, AIX และ FreeBSD) และเราจำเป็นต้องสร้างการพึ่งพาข้ามระบบที่แตกต่างกัน (เช่นงานบนกล่อง Linux อาจต้องพิจารณาว่างานบนกล่อง AIX ควรทำงานหรือไม่) ใครบ้างมีประสบการณ์ใด ๆ ที่ย้ายจาก cron ไปยังข้อเสนอที่จัดการจากส่วนกลางมากขึ้น? มีคำแนะนำในการเลือกซอฟต์แวร์หรือไม่ว่าจะเป็นการดีกว่าที่จะเปิดแหล่งที่มาหรือการค้า

2
เรียกใช้คำสั่งในฐานะผู้ใช้ Linux“ ระบบ” (shell = / bin / false)
ฉันสร้างผู้ใช้ "ระบบ" ใน Ubuntu 11.04 ( adduser --system) เพื่อใช้งาน cron บางอย่าง แต่บางครั้งฉันต้องการทดสอบสิ่งต่าง ๆ โดยใช้คำสั่งด้วยตนเองในฐานะผู้ใช้นั้น วิธีที่ง่ายที่สุดในการทำเช่นนี้คืออะไร? suไม่ทำงานเนื่องจากผู้ใช้มี/bin/falseเป็นเชลล์ (ซึ่งใช้ได้สำหรับ cron) ฉันเปลี่ยนเชลล์เป็นด้วยตนเอง/bin/bashเพื่อทำการทดสอบแล้วเปลี่ยนกลับอีกครั้ง แต่ฉันสงสัยว่ามีวิธีที่ง่ายกว่านี้ไหม
29 linux  ubuntu  shell  cron  su 

12
ไม่สามารถเรียกใช้ AWS CLI จาก CRON (ข้อมูลรับรอง)
กำลังพยายามเรียกใช้สคริปต์สำรอง AWS CLI ง่าย ๆ มันวนลูปผ่านบรรทัดในไฟล์รวมสำรองพา ธ เหล่านั้นสูงถึง S3 และดัมพ์เอาต์พุตไปยังล็อกไฟล์ เมื่อฉันรันคำสั่งนี้โดยตรงคำสั่งจะรันโดยไม่มีข้อผิดพลาด เมื่อฉันเรียกใช้ผ่าน CRON ฉันได้รับข้อผิดพลาด "ไม่สามารถค้นหาข้อมูลประจำตัว" ในบันทึกผลลัพธ์ของฉัน เชลล์สคริปต์: AWS_CONFIG_FILE="~/.aws/config" while read p; do /usr/local/bin/aws s3 cp $p s3://PATH/TO/BUCKET --recursive >> /PATH/TO/LOG 2>&1 done </PATH/TO/INCLUDE/include.txt ฉันเพิ่งเพิ่มบรรทัดลงในไฟล์กำหนดค่าหลังจากที่ฉันเริ่มเห็นข้อผิดพลาดโดยคิดว่าอาจแก้ไขได้ เชลล์สคริปต์ทำงานเป็นรูท ฉันเห็นไฟล์กำหนดค่า AWS ที่ตำแหน่งที่ระบุ และมันก็ดูดีสำหรับฉัน (อย่างที่ฉันบอกว่ามันทำงานได้ดีนอก CRON)

2
คำสั่ง syslog แปลก
คุณเคยเห็นคำสั่งที่ไม่ถูกต้องใน / var / log / syslog หรือไม่? ฉันคิดว่ามันทำให้ crontab เท่านั้น Jun 28 22:20:01 alex CRON[2327]: (root) CMD (something > /dev/null) Jun 28 22:21:01 alex CRON[2700]: (root) CMD (something > /dev/null) Jun 21 03:49:01 alex CRON[2753]: (root) CMD (something > /dev/null) Jun 28 22:23:01 alex CRON[2754]: (root) CMD (something > …
26 ubuntu  cron  syslog  time 

4
วิธีการสำรองข้อมูลไฟล์ "crontab -e"
ฉันต้องการสำรองข้อมูลเซิร์ฟเวอร์โดยสมบูรณ์ ฉันมีสคริปต์สำรองของฉันที่คัดลอกไฟล์ html / php ทั้งหมดสำหรับเว็บแอปและฐานข้อมูล mysql แล้ววางลงในไฟล์. tar.gz ฉันจะเพิ่มไฟล์ crontab ลงในข้อมูลสำรองนั้นได้อย่างไร เมื่อใดก็ตามที่ฉันบันทึก crontab มันจะไปที่โฟลเดอร์ / tmp .. และเมื่อฉันตรวจสอบโฟลเดอร์นั้นทันทีหลังจากนั้นจะว่างเปล่า

8
ปิดใช้งาน cron เฉพาะเจาะจงอย่างแข็งแกร่งสคริปต์รายชั่วโมงรายวันรายสัปดาห์
ในระบบต่าง ๆ ที่ฉันจัดการมีสคริปต์ cron ที่เรียกใช้ผ่าน/etc/cron.{hourly,daily,weekly}เค้าโครงที่ใช้บ่อย สิ่งที่ฉันต้องการทราบก็คือฟังก์ชั่น 'ปิดใช้งานสคริปต์นี้' มีทั่วไปหรือไม่ เห็นได้ชัดว่าเพียงลบบางสิ่งออกจากไดเรกทอรีที่กำหนดจะปิดการใช้งาน แต่ฉันกำลังมองหาวิธีการแก้ปัญหาที่ถาวรมากขึ้น การลบ/etc/cron.daily/slocateจะทำงานเพื่อปิดการใช้งานทุกคืนupdatedbในเครื่องที่บ้านของฉัน (ที่ฉันไม่เคยใช้slocate) แต่ครั้งต่อไปที่ฉันอัพเกรดแพคเกจ slocate ฉันค่อนข้างมั่นใจว่ามันจะปรากฏขึ้นอีกครั้ง การแจกแจงสองอย่างที่ฉันสนใจมากที่สุดคือ Gentoo และ OpenSUSE แต่ฉันหวังว่าจะมีกลไกที่นำไปใช้อย่างกว้างขวาง distros ทั้งสองที่ฉันมีพวกเขาใช้ vixie-cron (ไม่แน่ใจว่ามันสำคัญ)
25 cron  cron.daily 

1
ความแตกต่างระหว่าง /etc/cron.d และ / var / spool / cron คืออะไร
crontabs ของ RHEL ดูเหมือนจะซ้ำกันสองแห่ง/etc/cron.d, และ/var/spool/cron. ฉันได้ตรวจสอบแล้วและสิ่งเหล่านี้ไม่ใช่ซิมลิงค์ไปที่อื่นและไม่ได้มี crons ใด ๆ อยู่ในที่ใดที่หนึ่ง ฉันเดาคำถามที่สำคัญที่สุดของฉันคือสิ่งนี้ซึ่งทั้งสองนี้เป็นสถานที่ที่มีสิทธิ์? หากฉันต้องแก้ไขไฟล์ในหนึ่งในสองรายการนี้ฉันจะต้องแก้ไขไฟล์ใดเพื่อให้สามารถเรียกใช้งานได้
24 linux  redhat  cron 


8
cron สามารถเขียนเอาต์พุตงานไปยังบันทึก * โดยค่าเริ่มต้น * (แทนเมล) ได้หรือไม่?
เราทุกคนรู้วิธีที่ถูกต้องในการจัดการผลผลิตจากงาน cron คือการเปลี่ยนเส้นทางไปยังไฟล์: 0 * * * * /bin/date >> /var/log/date.log 2>&1 อย่างไรก็ตามบางครั้งผู้ดูแลระบบจะขี้เกียจลืมหรือไม่รู้และไม่ใส่ในการเปลี่ยนเส้นทางเหล่านั้น ในกรณีนี้ผลลัพธ์ของงานจะถูกส่งไปยัง $ MAILTO หรือผู้ใช้ที่เป็นเจ้าของหรือรูต ในกล่องที่ฉันจัดการบางส่วนอีเมลจะถูกปิดการใช้งานดังนั้นผลลัพธ์นี้จะเข้าสู่หลุมดำ สิ่งที่ฉันสงสัยคือมีวิธีใดที่จะบอก cron ให้รับงานใด ๆ และแทนที่จะส่งจดหมายให้โยนมันลงในแฟ้มบันทึก catch-all ฉันใช้ Ubuntu (8.04 แต่ย้ายไปเป็น 9.04) มีคำใบ้ของวิธีแก้ปัญหาเช่นนี้ในผลลัพธ์แบบสุ่มของ Googleแต่ฉันคิดว่า OP อาจสับสนเกี่ยวกับเอาต์พุต cron เทียบกับผลลัพธ์ของงาน cron ฉันเปิดให้โซลูชั่นที่เกี่ยวข้องกับการเขียนสคริปต์หรือการแฮ็ก แต่ในอุดมคตินี้จะเป็นบิตการกำหนดค่าที่ฉันสามารถตั้งค่าได้ที่ไหนสักแห่ง ฉันไม่เห็นคำแนะนำใด ๆ man cronใน ขอบคุณ!
23 ubuntu  log-files  cron  email 

4
Crond ชดเชยห้านาที
เป็นไปได้ไหมที่จะออฟเซ็ตสคริปต์ cron เพื่อให้ทำงานทุกๆ 5 นาที? ฉันมีสองสคริปต์สคริปต์ 1 รวบรวมข้อมูลบางส่วนจากฐานข้อมูลหนึ่งและแทรกเข้าไปอีกสคริปต์ 2 ดึงข้อมูลนี้และข้อมูลอื่น ๆ อีกมากมายและสร้างรายงานสวย ๆ จากมัน สคริปต์ทั้งสองต้องทำงานทุก 5 นาที ฉันต้องการออฟเซ็ตสคริปต์ 2 ภายในหนึ่งนาทีเพื่อให้สามารถสร้างรายงานจากข้อมูลใหม่ EG ฉันต้องการสคริปต์หนึ่งทำงาน:00, :05, :10, :15 [...]และสคริปต์สองทำงาน:01, :06, :11, :16 [...]ทุกชั่วโมง สคริปต์ไม่ได้ขึ้นอยู่กับแต่ละอื่น ๆ และสคริปต์ 2 จะต้องรันโดยไม่คำนึงว่าสคริปต์ตัวใดประสบความสำเร็จหรือไม่ แต่มันจะมีประโยชน์ถ้ารายงานอาจมีข้อมูลล่าสุดของ hte เป็นไปได้ด้วย cron? โพสต์; ฉันคิดเกี่ยวกับการใช้ทั้งสองคำสั่งในเชลล์สคริปต์เพื่อให้พวกเขาทำงานได้ทันที แต่สิ่งนี้ไม่ได้ผลบางครั้งสคริปต์ 1 สามารถหยุดรอการรอ API ภายนอก ฯลฯ ดังนั้นอาจใช้เวลานานถึง 15 นาทีในการทำงาน …
22 cron 

4
daemon cron มีความแม่นยำเพียงใด
ตัวกำหนดเวลางาน cron แม่นยำจริงๆหรือไม่? ฉันหมายถึงฉันต้องการสคริปต์เพื่อทำงานทุกคืนที่เป็นไปได้ล่าสุด แต่ก่อน 00:00 นของวันถัดไป ฉันควรจะทำงาน cron ที่ 23.59 (หรือ 23:59 น.) แต่ระบบจะแม่นยำหรือไม่ ตั้งแต่วินาทีมีความสำคัญฉันควรกำหนดให้ cron job เป็น 23:58 หรือไม่?
22 linux  cron 

12
เทคนิคในการตรวจสอบงาน cron?
มีเทคนิคที่ดีสำหรับการตรวจสอบงาน cron บนคลัสเตอร์หรือไม่? เราเริ่มใช้ cron เพื่อเริ่มงานทุกวัน แนวคิดบางประการสำหรับการตรวจสอบข้อมูล: เพิ่มการจัดการแอปพลิเคชันพิเศษที่บันทึกข้อมูลลงในสถานที่ "เครือข่ายที่รับรู้" เช่น DB สร้างระบบ logfile ที่ถ่ายโอนบันทึก cron เป็นระยะ ๆ ไปยังจุดศูนย์กลางสำหรับการประมวลผล / การสืบค้น (พร้อมกับไฟล์บันทึกอื่น ๆ ที่เป็นไปได้) ฉันสงสัยว่าผู้คนประสบความสำเร็จในการทำสิ่งต่าง ๆ เพื่อ cron กับสิ่งอื่น ๆ หรือไม่หรือถ้างานนั้นถูกรวมเข้ากับแนวทางที่แตกต่างอย่างสิ้นเชิง ฉันเอนตัวไปทาง # 2 แต่ฉันอยากจะรู้ว่าชาวบ้านที่มีประสบการณ์มากกว่านี้อาจลอง
22 monitoring  cron 

5
วิธีการเปลี่ยนเวลา cron.daily ทำงานใน linux
คำถามนี้ถูกโยกย้ายจาก Stack Overflow เพราะสามารถตอบได้ใน Server Fault อพยพ 7 ปีที่ผ่านมา ฉันมีสคริปต์เป็น cron.daily ที่ทำงานในบางเวลาทุกเช้า ฉันต้องการเปลี่ยนเวลาที่ใช้งานอยู่ ฉันจะเปลี่ยนเวลา cron.daily เรียกใช้สคริปต์ได้อย่างไร
22 linux  cron  redhat 

3
แทนที่ MAILTO สำหรับรายการ crontab เดียว
เรามีบัญชีบทบาทที่ทำงานที่มี crontab ที่ใหญ่มาก มัน MAILTO จะชี้ไปที่ที่อยู่ที่ใช้ร่วมกันเพื่อให้เราจำนวนมากได้รับการแจ้งเตือนหากมีสิ่งที่ล้มเหลว ฉันต้องการเพิ่มรายการใน crontab นี้ แต่ฉันต้องการให้ฉันรับการแจ้งเตือนหากมีสิ่งผิดปกติ มีวิธีในการเปลี่ยน MAILTO สำหรับรายการนี้หรือไม่หรือบรรลุเป้าหมายของฉันหรือไม่
20 unix  cron 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.