cron을 사용하여 Python 스크립트를 실행하면 실패합니다.

cron을 사용하여 Python 스크립트를 실행하면 실패합니다.

다음과 같이 FreeBSD 변형을 사용하고 있습니다.

[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power: uname -a
FreeBSD ROUTER.local 10.1-RELEASE-p15 FreeBSD 10.1-RELEASE-p15 #0 c5ab052(releng/10.1)-dirty: Sat Jul 25 20:20:58 CDT 2015     root@pfs22-amd64-builder:/usr/obj.amd64/usr/pfSensesrc/src/sys/pfSense_SMP.10  amd64
[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power:

다음 명령을 사용하여 CLI에서 성공적으로 실행할 수 있는 Python 스크립트를 작성했습니다.

 /usr/local/bin/python2.7 /home/Script_to_monitor_power/power_alarm_t2.py

Python 스크립트에는 다음과 같은 shebang 줄이 포함되어 있습니다.

#!/usr/bin/env python2.7

python2.7의 위치는 다음과 같습니다.

[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power: where python2.7
/usr/local/bin/python2.7
[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power:

내 목표는 위 스크립트를 cronjob으로 실행하는 것입니다. 그래서 다음 명령을 사용하여 스크립트를 실행 가능하게 만들었습니다.

[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power: chmod +x power_alarm_t2.py

crontab을 다음과 같이 편집했습니다.

[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power: crontab -l
* * * * * /usr/local/bin/python2.7 /home/Script_to_monitor_power/power_alarm_t2.py
[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power:

나는 또한 이것을 한다:

[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power: cron reload
cron: cron already running, pid: 43420
[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power:

이제 내가 이렇게 하면:

[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power:   ps -ef | grep cron
[2.2.4-RELEASE][[email protected]]/home/Script_to_monitor_power:

Q: 내 cronjob이 1분마다 실행되지 않습니다. 내가 무엇을 놓치고 있는지 제안해주세요.

답변1

크론의 행은 다음과 같아야 합니다.

* * * * * /home/Script_to_monitor_power/power_alarm_t2.py

비표준 위치에서 Python을 실행하는 경우 이 Python 스크립트를 쉘 스크립트로 래핑하고 PATH 및 LD_LIBRARY_PATH를 추가하는 것이 현명할 수 있습니다.

또한 쉘 스크립트를 만들고 이 스크립트를 cron에 추가하여 Python 실행 파일을 명시적으로 가리키고 Python을 실행하고 기본 환경 변수를 추가할 수도 있습니다.

#!/bin/bash
source ~/.bash_profile
/path/to/python /home/Script_to_monitor_power/power_alarm_t2.py

관련 정보