แก้ปัญหา Authentication failure ของ cron

×

Error message

Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in drupal_get_feeds() (line 394 of /data/wwwroot/includes/common.inc).

วันนี้ ไม่สามารถ run crontab ได้ปกติ ตรวจสอบขั้นต้นของ crontab ของ root แล้ว ปกติดี
เช็คดู log เจอว่า

  1. # tail /var/log/syslog
  2. Mar 31 12:00:22 mdu-smor crontab[14520]: (root) LIST (root)
  3. Mar 31 12:01:01 mdu-smor CRON[14527]: Authentication failure
  4. Mar 31 12:01:01 mdu-smor CRON[14526]: Authentication failure
  5. Mar 31 12:02:01 mdu-smor CRON[14529]: Authentication failure
  6. Mar 31 12:02:01 mdu-smor CRON[14530]: Authentication failure
  7. Mar 31 12:03:01 mdu-smor crontab[14603]: (root) LIST (root)
  8. Mar 31 12:03:01 mdu-smor CRON[14604]: Authentication failure
  9. Mar 31 12:03:01 mdu-smor CRON[14605]: Authentication failure
  10. Mar 31 12:04:01 mdu-smor CRON[14610]: Authentication failure
  11. Mar 31 12:04:01 mdu-smor CRON[14611]: Authentication failure
  12. Mar 31 12:05:01 mdu-smor CRON[14648]: Authentication failure

ดูที่ http://ubuntuforums.org/showthread.php?t=1054283 แนะนำว่า เนื่องจากมีการตั้งค่า shadowconfig เป็น on
ซึ่งหมายความว่า เมื่อ cron run จะมีการตรวจการ authen ของผู่ใช้ ซึ่งใน ubuntu root จะถูกปิด เลยอาจจะมีปัญหาได้ในการ authen ของ cron
บางทีกอาจจะเกิดจากการ config user แบบ manual เลยเกิดบัญหา วิธีแก้ก็แต่ตั้งค่าเป็น off ซะ

  1. # shadowconfig off

เท่านี้ก็สามารถรัน cron ได้โดยไม่มีปัญหานี้แล้วครับ

:)