ฉันเพิ่งติดตั้ง Ubuntu ใหม่ ฉันกำลังพยายามตั้งค่างาน cron โดยใช้ sudo crontab -e
crontab ของฉันเป็นดังนี้:
# แก้ไขไฟล์นี้เพื่อแนะนำงานที่จะรันโดย cron
#
# แต่ละงานที่จะรันจะต้องมีการกำหนดผ่านบรรทัดเดียว
# ระบุด้วยฟิลด์ต่าง ๆ เมื่องานจะถูกเรียกใช้
# และคำสั่งใดที่จะรันสำหรับงาน
#
# เพื่อกำหนดเวลาที่คุณสามารถระบุค่าที่เป็นรูปธรรมได้
# นาที (m), ชั่วโมง (h), วันของเดือน (dom), เดือน (mon),
# และวันในสัปดาห์ (ดาวฤกษ์) หรือใช้ '*' ในฟิลด์เหล่านี้ (สำหรับ 'ใดๆ')
#
# สังเกตว่างานจะเริ่มตามระบบของ cron
# แนวคิดของ daemon เกี่ยวกับเวลาและเขตเวลา
#
# เอาต์พุตของงาน crontab (รวมถึงข้อผิดพลาด) จะถูกส่งผ่าน
# อีเมลถึงผู้ใช้ที่มีไฟล์ crontab เป็นของ (เว้นแต่จะเปลี่ยนเส้นทาง)
#
# ตัวอย่างเช่น คุณสามารถสำรองข้อมูลบัญชีผู้ใช้ทั้งหมดของคุณ
# เวลา 05.00 น. ของทุกสัปดาห์กับ:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# สำหรับข้อมูลเพิ่มเติม โปรดดูที่หน้าคู่มือของ crontab(5) และ cron(8)
#
#mh ดอมมอนดาว คำสั่ง
# งาน #1 - เริ่มบริการท้องถิ่นสำหรับ noips (ผู้ให้บริการ DNS แบบไดนามิก) และเปลี่ยนการอนุญาตของไดรฟ์ที่ติดตั้งเพื่อให้บริการอื่นสามารถเข้าถึงไฟล์ดังกล่าวได้
@reboot /usr/local/bin/noip2 && chown -R ikaros:plex /home/ikaros/mnt/ > /dev/null
# งาน #2 - ปิดเซิร์ฟเวอร์ทุกวันเวลา 0 10
0 10 * * * /sbin/shutdown -r +5 > /dev/null
# งาน #3 - ดัมพ์ฐานข้อมูล postgreSQL ไปยังไฟล์ที่ 0 11
0 11 * * * (pg_dumpall > /home/ikaros/postgres_backups/"backup_$(วันที่ +%F)".sql) >> /home/ikaros/logs/pg_dump.log 2>&1
# ภารกิจ #4 - ตรวจสอบให้แน่ใจว่าไฟล์สำรองข้อมูล 5 ไฟล์ล่าสุดถูกจัดเก็บไว้ในแผ่นดิสก์ทุกวันที่ 0 9
0 9 * * * (cd /home/ikaros/postgres_backups/ && ls -tp | grep -v '/$' | tail -n +5 | xargs -d '\n' -r rm -- ) >> /home /ikaros/logs/pg_clear_backups.log 2>&1
งาน #1 ดูเหมือนจะทำงานได้ดี
งาน # 2 ดูเหมือนจะทำงานได้ดี
งาน #3 ไม่เคยทำงาน แม้ว่าฉันจะวางคำสั่งนี้ก็ตาม (pg_dumpall > /home/ikaros/postgres_backups/"backup_$(วันที่ +%F)".sql) >> /home/ikaros/logs/pg_dump.log 2>&1
เมื่อเข้าสู่ระบบในฐานะผู้ใช้ อิคารอส
มันใช้งานได้ดี
ภารกิจ #4 ก็ไม่เคยทำงาน แม้ว่าฉันจะวางคำสั่งก็ตาม (cd /home/ikaros/postgres_backups/ && ls -tp | grep -v '/$' | tail -n +5 | xargs -d '\n' -r rm -- ) >> /home/ikaros/logs/ pg_clear_backups.log 2>&1
ในขณะที่เข้าสู่ระบบเป็น อิคารอส
ทุกอย่างทำงานตามที่คาดไว้
ฉันทำอะไรผิดที่นี่? คำแนะนำใด ๆ?
ชื่นชมมาก!