Root Crontab은 Python 스크립트를 실행하지 않습니다.

Root Crontab은 Python 스크립트를 실행하지 않습니다.

저는 데비안 9를 사용하고 있습니다. 루트로 로그인하고 crontab -e다음 줄을 추가했습니다.

0 */2 * * * python /home/Folder1/Script.py
1 */2 * * * python /home/Folder2/Script.py
2 */2 * * * python /home/Folder3/Script.py
3 */2 * * * python /home/Folder4/Script.py

스크립트가 실행되지 않습니다. 또한 root스크립트를 실행할 사용자를 지정하기 위해 Python 앞에 추가해 보았습니다 . 나는 이 crontab의 위치를 ​​믿고 있지만 /var/spool/cron/crontabs/root이것이 "기본" 위치인지는 확실하지 않습니다. cron 실행과 관련된 오류나 메시지는 에 보고되지 않습니다 /var/log/syslog. 내 postfix 로컬 메일에는 아무 것도 보고되지 않습니다. Python 스크립트에 대해 권한 644 및 744를 시도했습니다.

이 크론은 사용자의 crontab에서 실행될 때 작동하지만 루트에서 실행될 때는 아무런 효과가 없습니다. 저는 개인용 PC(amd64 Debian 9)와 VPS(VPS Dime amd64 Debian 9)에서 이것을 시도했습니다.

답변1

crontab을 사용하려면 먼저 Python에 대한 경로를 추가해야 합니다.

이것이 실제로 스크립트의 올바른 전체 위치라고 가정하면 다음이 필요합니다.

0 */2 * * * /usr/bin/python /home/Folder1/Script.py

또한 cronjob이 이러한 변수를 다르게 볼 수 있으므로 스크립트의 환경 변수가 절대 경로인지 확인해야 합니다.

관련 정보