Articles
루트 크론이 ' 스크립트를 실행하지 않음 (권한 거부 됨)
On 2월 15, 2021 by admin루트 크론 탭을 주기적으로 편집했습니다. 다음 명령을 사용하여 특정 사용자의 폴더에있는 스크립트를 실행합니다.
sudo crontab -e
cron이 스크립트를 실행할 때 다음과 같이 출력됩니다.
sh: 1: /home/user/Location/Of/Script: Permission denied
루트 크론이 무엇이든 할 수있는 권한이 있다고 생각했습니다. 이 스크립트를 루트로 수동으로 실행해도 문제가 없습니다.
문서 에서 추가 오류 정보를 찾을 수 있음을 읽었습니다. 여기 :
sudo cat /var/log/syslog
찾은 내용은 다음과 같습니다.
Jan 30 12:30:01 backup CRON[17702]: (CRON) info (No MTA installed, discarding output)
그러나 저는 이것이 권한 거부 문제와 관련이 없다고 생각합니다.
그러면 정말해야 할 일은 무엇입니까?
댓글
Answer
내 생각에는 스크립트가 실행 가능하지 않습니다. 따라서 다음 명령을 사용하여 만드십시오.
chmod +x /home/user/Location/Of/Script
또는 해당 스크립트의 소유자가 아닌 경우 :
sudo chmod +x /home/user/Location/Of/Script
주석
- 따라서 cron이 스크립트를 실행하려면 실행 가능해야하지만 루트는 수동으로 실행하지 않습니다. '이 플래그가 필요하지 않습니까?
- 스크립트를 수동으로 실행하는 방법에 따라 다릅니다.
./Scipt
또는/home/user/Location/Of/Script
를 사용하여 스크립트를 실행하면 ' 괜찮지 않습니다. 일반적으로 모든 스크립트는 실행 가능해야합니다. Linux에서 쉘 스크립트를 실행하는 방법 을 참조하세요. - 말이되지만 실제로이 스크립트를 ./script에서 수동으로 실행했습니다. cron을 시도 할 때까지 권한 문제가 발생하지 않고 방법. 도와 주셔서 감사합니다.
/home/user/Location/Of/Script
에 대한 권한을 나열 할 수 있습니까? 예 :la -l /home/user/Location/Of/Script
. 또한 외부에서 전자 메일을 보내거나받지 않더라도 정상적인 내부 사용을 위해 MTA를 설치해야합니다. ' 시스템에 이미 설치되어 있지 않다는 것이 놀랍습니다.