크론탭이 작동하지 않습니다

크론탭이 작동하지 않습니다

오후 10시에 MF를 실행하기 위해 기본 종료 crontab을 수행하려고 합니다. 그래서 나는 다음을 수행했습니다.

sudo crontab -e

crontab 내부에 다음 줄을 추가했습니다.

0 22 * * 1-5 shutdown now

작업이 잘못 실행되고 있는 것 같은데 오류를 찾을 수 없습니다 /var/log/syslog. 여기에 뭔가 눈에 띄게 잘못된 것이 있나요?

답변1

문제는 crontab 파일의 PATH가 제한되어 있고 /sbin가장 가능성이 낮은 위치를 포함하지 않는다는 것일 수 있습니다.

따라서 닫으려면 전체 경로를 사용해야 합니다( check 를 사용할 수 있음 sudo which shutdown).

0 22 * * 1-5 /sbin/shutdown now

에서 man 5 crontab:

특히, "/usr/bin:/bin" 이외의 PATH를 원할 경우 crontab 파일에서 설정해야 합니다.

/sbin/shutdown다음을 지정하는 대신:

PATH = /sbin:$PATH
0 22 * * 1-5 shutdown now

답변2

  1. 실행 시간을 나열해 볼 수 있습니다cronlist예상대로 작동하는지 확인하세요. 제가 아는 한, cron작업은 월요일부터 금요일까지 22:00에 진행됩니다. 그렇게 하시겠습니까?
  2. shutdown now일반 사용자로 실행하면 어떻게 인쇄되나요?
  3. 무엇을 인쇄할까요 service cron status? 표시되지 않으면 cron start/running다시 시작해야 합니다 service cron start.
  4. 기계의 시계가 정확합니까? 구성되지 않았거나 동기화되지 않아 작업이 완전히 잘못된 날짜 또는 시간에 실행될 수 있습니다.
  5. 다음과 같은 오류 메시지가 있나요?PAM bad jump in stack존재하다/var/log/auth.log? 이 게시물에는 디버깅 정보와 시도해 볼 만한 내용이 많이 포함되어 있습니다.

답변3

tail -n 100 /var/log/cron 확인

일반 사용자나 루트 사용자를 사용하여 이 크론을 실행해 보셨나요?

답변4

shutdown 명령을 사용할 권한이 없습니다. 다음 명령을 실행해 보십시오:

sudo chmod u+s /sbin/shutdown

그런 다음 crontab에서 종료에 대한 전체 경로를 지정하십시오.

0 22 * * 1-5 /sbin/shutdown now

관련 정보