크론 작업은 매주 실행되지 않습니다.

크론 작업은 매주 실행되지 않습니다.

우리는 월요일부터 금요일까지 일이 예정되어 있습니다. 2주 전까지만 해도 주 5일은 괜찮게 운영되었습니다. 지난 2주 동안 월요일은 실패했습니다. 실패 지점을 어디서 찾을 수 있는지 찾을 수 없습니다.

### Example Scripts
0 2 * * 1-5 /admin/scripts/example.exp 1>/dev/null 2>&1

우리는 AIX 7.1을 실행합니다.

/var/log/를 확인했는데 거기에 cron 파일이 없습니다. 문제를 해결할 수 있도록 이를 추가할 제안을 찾고 있습니다.

로그가 에 있는 것으로 확인되었습니다 /var/adm/log. 또한 해당 날짜/시간 이후로 이 오류가 계속 발생합니다. 이 최대 한도를 어떻게 지울 수 있나요?

c queue max run limit reached Fri Nov 25 21:52:00 2016
! rescheduling a cron job Fri Nov 25 21:52:00 2016

답변1

이 오류 메시지는 c queue max run limit reached동시 작업 제한에 도달했음을 의미합니다 cron.

저는 cronAIX의 기본 설정이 50개의 동시 작업이라고 생각합니다. 따라서 왜 50개의 작업을 동시에 실행하는지 조사해야 합니다. (아마도 이들은 서로 겹치는 동일한 작업의 여러 인스턴스일 수 있습니다.)

다음 두 줄은 에서 실행 중인 작업 목록을 제공하며 cron여기에서 문제의 근본 원인을 조사할 수 있습니다.

p=$(ps -ef | awk '/[c]ron/{print $2}' | xargs | tr ' ' '|')
ps -ef | egrep "\<($p)\>"

만약 너라면진짜동시 작업 수를 늘려야 하는 경우 다음에서 구성 설정을 찾을 수 있습니다 /var/adm/cron/queuedefs.

c.50j20n60w

어디

  • c= cron대기열
  • Nj= 동시에 실행되는 최대 작업 수cron
  • Nn= nice실행할 작업의 값(기본값은 2)
  • Nw= 작업이 다음 번 실행 시도를 기다려야 하는 시간

바라보다http://www-01.ibm.com/support/docview.wss?uid=isg3T1020382이 답변에 대한 AIX 관련 소스를 얻으십시오.

답변2

crontab의 형식은 그것이 사용자 crontab임을 나타냅니다(시간 지정 뒤에 "사용자" 필드를 추가하는 시스템 crontab과 다름).

리디렉션하면 유익한 로그 메시지가 손실됩니다. 이 시도:

0 2 * * 1-5 /admin/scripts/example.exp >> $HOME/cron.log 2>&1

홈 디렉터리의 cron.log 파일에서 실행 결과를 얻을 수 있습니다.

답변3

기본 설치에서는 cron 작업이 다음에 기록됩니다.

/var/log/syslog

다음을 실행하여 이 로그 파일에서 크론 작업을 볼 수 있습니다.

grep CRON /var/log/syslog

아무것도 재구성하지 않은 경우 항목이 그대로 있을 것입니다.

관련 정보