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

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


15
แจ้งเตือนการส่งไม่ทำงานจาก crontab
ฉันสร้างสคริปต์ที่ควรแจ้งให้ฉันทราบเมื่อมีมังงะบทใหม่ที่ฉันกำลังอ่าน ฉันใช้คำสั่ง alert-send เพื่อทำสิ่งนี้ โปรแกรมทำงานเมื่อฉันพยายามเรียกใช้ในเทอร์มินัล การแจ้งเตือนกำลังแสดง อย่างไรก็ตามเมื่อฉันวางสิ่งนี้ลงใน crontab ของฉันการแจ้งเตือนจะไม่แสดง ฉันค่อนข้างมั่นใจว่าโปรแกรมกำลังทำงานอยู่ตั้งแต่ฉันสร้างมันเพื่อสร้างไฟล์ให้ฉัน ไฟล์ถูกสร้างขึ้น แต่การแจ้งเตือนไม่แสดง นี่คือสคริปต์ของฉัน #!/bin/bash #One Piece Manga reminder #I created a file named .newop that contains the latest chapter. let new=$(cat ~/.newop) wget --read-timeout=30 -t20 -O .opreminder.txt http://www.mangareader.net/103/one-piece.html if (( $(cat .opreminder.txt | grep "One Piece $new" | wc -l) …
44 cron  notify-send 

4
ตัวแก้ไขนี้ที่เปิดโดย crontab คืออะไร
ฉันต้องการแก้ไข crontab มันควรจะเป็น Vi แต่ไม่ใช่ตามที่คุณเห็น: root@euve252628:~# crontab -e 0 0 * * * * /var/www/vhosts/nevemind-what-webs/httpdocs/megacronstunde.php ? :wq ? ?ใช่มันให้ฉัน แล้วทำไมมันถึงทำให้ฉันมีค่าเป็นศูนย์? เมื่อฉันพิมพ์qและกดEnter- มันออกจาก ฉันจำเป็นต้องรู้วิธีการบันทึกเพราะมันไม่ได้เป็นคลาสสิก Vi
41 cron  text-editor 

3
ฉันจะทำให้ cron ส่งอีเมลถึงบัญชี @gmail ของฉันได้อย่างไร
ฉันมีงาน cron สองสามครั้งที่บางครั้งสร้างข้อผิดพลาดและต้องการรับการแจ้งเตือนในบัญชีอีเมล "ของจริง" ของฉันเนื่องจากฉันไม่ได้ใช้กล่องจดหมายของผู้ใช้ในแล็ปท็อป Ubuntu แต่ cron (หรืออาจเป็น postfix) พยายามส่งอีเมลถึงบัญชีรูทท้องถิ่น ฉันรู้ว่าฉันสามารถเพิ่มตัวแปรMAILTOลงใน crontab: ricardo@ricardo-laptop:~$ sudo crontab -l MAILTO=redacted@gmail.com # m h dom mon dow command */5 * * * * /home/ricardo/mrtg/cfg/run.sh แต่ดูเหมือนจะไม่ได้สนใจอะไรเลย ฉันพยายามเพิ่มอีเมลของฉันไปยัง/etc/aliasesไฟล์และเรียกใช้newaliases ricardo@ricardo-laptop:~$ cat /etc/aliases # See man 5 aliases for format postmaster: root root: redacted@gmail.com ricardo: redacted@gmail.com ยังคงเมื่อใดก็ตามที่ …
40 mail  cron  postfix  debug 


5
วิธีการลบหรือลบงาน cron เดียวโดยใช้คำสั่ง linux?
ฉันได้สร้างงาน cron สำหรับเว็บไซต์ของฉันซึ่งอยู่ด้านล่างและทำงานได้ดี ฉันพิมพ์งาน cron ทั้งหมดโดยใช้สคริปต์ PHP นี้: $cronfiles=exec('crontab -l',$output); echo "<pre>"; print_r($output); ผลลัพธ์ใด: [0] => 0 0 * * * wget php -q http://www.example.com/report_send.php [1] => 0 0 * * * wget php -q http://www.example.com/event_reminder.php [2] => 0 0 * * * wget php -q http://www.example.com/user_reminder.php [3] => * …
39 cron 


3
วิธีรันคำสั่งทุก ๆ 10 วินาที (ไม่มี cron)
เมื่อฉันรันcronฉันได้รับข้อผิดพลาดนี้ cron: ไม่สามารถเปิดหรือสร้าง /var/run/crond.pid: การอนุญาตถูกปฏิเสธ ดังนั้นจะทำอย่างไรโดยไม่cron? PS ฉันต้องการตรวจสอบว่าไฟล์ใน svn มีการเปลี่ยนแปลงและฉันมีสคริปต์พิเศษสำหรับมัน
35 bash  cron 

5
วิธีตั้งค่างานรูต cron อย่างถูกต้อง
ฉันพยายามตั้งค่างานรูท cron เพื่อรันสคริปต์ Bash ในฐานะรูทเพื่อรันที่ 7,37 นาทีทุกชั่วโมงทุกวันทุกเดือนทุกเดือน สคริปต์นี้ตั้งอยู่และตั้งชื่อ/usr/bin tunlrupdate.shมันอัปเดต DNS ของ Tunlr $ ls -l /usr/bin/tunlrupdate.sh -rwxr-xr-x 1 root root 2133 Sep 24 15:42 /usr/bin/tunlrupdate.sh สคริปต์ทุบตีนี้สามารถใช้ได้ที่นี่ เมื่อเรียกใช้สคริปต์จะเขียนสิ่งที่เกิดขึ้นในบันทึกที่อยู่ใน /var/log/tunlr.log ในการเพิ่มงาน cron รูทนี้ฉันใช้มาตรฐานสำหรับ crontab ของรูท sudo crontab -e และแทรกสองบรรทัดเหล่านี้ในตอนท้าย ฉันคาดว่า cron จะเรียกใช้สคริปต์เป็น root # check for updated Tunlr DNS every 30 minutes …
35 cron 

4
วิธีรัน crontab ในฐานะผู้ใช้: www-data?
My LAMP ได้รับการตั้งค่าให้ทำงานuser:www-dataและไฟล์และโฟลเดอร์ทั้งหมดได้รับการสร้างขึ้นโดยได้รับอนุญาต ฉันมีการตั้งค่าสำหรับ crontab เป็น user @ ubuntu ดังนั้นฉันจะcrontab -eใช้คำสั่งนี้: */5 * * * * php /var/www/public/voto_m/artisan top >/dev/null 2>&1 โดยทั่วไปคำสั่งนั้นจะสร้างไฟล์แคชในตำแหน่งที่ระบุ (ไม่มีปัญหากับไฟล์นั้น) แต่ไฟล์แคชนั้นถูกสร้างขึ้นด้วยผู้ใช้: สิทธิ์ผู้ใช้ไม่ใช่user:www-dataสิทธิ์ ฉันจะทำให้มันเป็นค่าเริ่มต้นสร้างไฟล์ที่มีuser:www-dataสิทธิ์ได้อย่างไร ฉันไม่สามารถไปได้และchownสร้างไฟล์ใหม่ทุกครั้ง ขอบคุณ
32 cron  users 

3
“ ไม่พบคำสั่ง” เมื่อเรียกใช้สคริปต์ผ่าน cron
ฉันต้องการเรียกใช้สคริปต์ใน crontab แต่ฉันมีปัญหา ... ในสคริปต์ของฉันฉันเรียกใช้คำสั่งนี้: db2 connect to myDB2 สิ่งนี้ทำงานได้ดีเมื่อฉันเรียกใช้ในฐานะผู้ใช้db2inst1แต่เมื่อฉันรันสคริปต์นี้ในdb2inst1 crontabฉันจะได้รับสิ่งนี้: ไม่พบคำสั่ง db2: ฉันจะแก้ปัญหานี้ได้อย่างไร
29 cron 

7
วิธีการแก้ปัญหาทั่วไปเพื่อป้องกันไม่ให้งาน cron ยาวทำงานในแบบคู่ขนาน?
ฉันกำลังมองหาโซลูชันที่เรียบง่ายและทั่วไปที่จะช่วยให้คุณสามารถรันสคริปต์หรือแอปพลิเคชันใด ๆ ใน crontab และป้องกันไม่ให้ทำงานสองครั้ง การแก้ปัญหาควรเป็นอิสระในคำสั่งดำเนินการ ฉันคิดว่ามันควรจะดูเหมือนว่าlock && (command ; unlock)ที่ล็อคจะกลับเท็จถ้ามีล็อคอื่น ส่วนที่สองจะเป็นเช่นนั้นหากได้รับการล็อกให้เรียกใช้คำสั่งและปลดล็อกหลังจากดำเนินการคำสั่งแม้ว่าจะส่งกลับข้อผิดพลาด
27 bash  cron 

6
เป็นความคิดที่ดีหรือไม่ที่จะสร้างสคริปต์ cron ที่ทำให้การแลกเปลี่ยนว่างเปล่าทุกชั่วโมง?
เป็นเวลาหลายปีที่ฉันมีปัญหาเดียวกันกับการกำหนดค่า Ubuntu ขนาดเล็กของฉัน: พื้นที่สว็อปที่ใช้เพิ่มขึ้นตามเวลา ฉันได้รับความประทับใจว่านี่เป็นเพราะหน่วยความจำที่จัดสรรไว้ไม่เคยกลับสู่ RAM แม้ว่าจะมีพื้นที่เพียงพอสำหรับมันยกเว้นในกรณีของการกระทำของผู้ใช้เช่นการปิดใช้งานการสลับ ฉันทำcronคำสั่งสั้น ๆเพื่อทำสิ่งนี้โดยอัตโนมัติและฉันก็มีผลลัพธ์ที่ดี: #! /bin/sh echo "* */1 * * * root swapoff -a && swapon -a" >> /etc/crontab แต่เนื่องจากเป็นกลอุบายมากกว่าทางออกที่แท้จริงของปัญหานี้ฉันจึงสงสัยว่าด้วยเหตุผลที่เป็นไปได้ที่อาจเป็นความคิดที่ไม่ดีหรือฉันจะปรับปรุงสคริปต์นี้ให้ดีขึ้นได้อย่างไร
26 cron  swap 

4
ฉันจะบอกได้อย่างไรว่างาน cron รายชั่วโมงของฉันทำงาน
ผมได้สร้างไฟล์ที่เรียกว่าntpdateใน/etc/cron.hourly #!/bin/sh /usr/sbin/ntpdate-debian date > /tmp/william_tmp date > /william_tmp date > ~/william_tmp echo test ฉันทำ Chmod 755 กับไฟล์นี้ด้วย อย่างไรก็ตามฉันไม่สามารถบอกได้ว่าไฟล์ทำงานหรือไม่! ไฟล์ไม่ได้ถูกสร้างขึ้นใน 3 ไดเรกทอรีใด ๆ หากฉันเรียกใช้ด้วยตนเองcd / && run-parts --report /etc/cron.hourlyไฟล์จะถูกสร้างขึ้นและฉันได้รับเสียงสะท้อน ทุกคนสามารถแนะนำคำแนะนำ (อย่างเป็นขั้นเป็นตอน!) เพื่อทดสอบว่าใช้งานได้หรือไม่
26 server  scripts  cron 

3
สามารถใช้ symlink ใน /etc/cron.d/ ได้หรือไม่?
ฉันพยายามที่จะใช้กลไกการกำหนดค่าที่ช่วยให้ในโครงการบางอย่างเพื่อปรับใช้ผ่าน svn การกำหนดค่า cron ฉันทันทีเจ้าว่าสิ่งที่ฉันควรทำคือ cerate symlinks จาก /etc/cron.d/ ไปยังไฟล์ cron ของโครงการของฉัน (ซึ่งจะถูกควบคุมโดย vcs) แต่ดูเหมือนว่าจะไม่ทำงาน ฉันพบข้อความฟอรัมเก่าที่อ้างถึงว่า symlink ไม่ได้รับการสนับสนุนและอื่น ๆ บอกว่าเป็น มันคืออะไร มีอะไรอีกหรือวิธีอื่นที่ดีในการบรรลุเป้าหมายนี้?

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