Linux

[crontab] crontab 에서 sh 실행 오류

달죽 2021. 7. 3. 23:30
반응형

크론에 쉘을 등록하다보면 실행 안될 때가 있다. 

그냥 실행하면 되는데 크론에 등록해서 실행시킬 경우 안된다. 

 

 

나같은 경우, 권한으로 인한 경로 설정 문제가 있었다.

 

   크론에 등록한 쉘이 실행이 안될때 로그를 찍어보면 된다고 인터넷상에 나와 있다. 

 

   00 1 * * * test.sh 2> error.log  

   이렇게 하면 실행 안되는 이유를 로그를 찍어봐서 찾아 볼 수 있다. 

 

   ksh :   . $HOME/.profile

   

   bash :  source $HOME/.bash_profile

  

하지만, 아무런 에러가 안뜨고 공백만 뜨는 경우

왜 크론에서 실행이 안되는지 모른다. 이럴때 해결법은

 

sh 의 실행 경로를 찾아서 그 경로를 적어줘야 하는것이다.

 

$ find test.sh

나같은경우 위의 코드를 치면

usr/bin/sh 

이렇게 나온다.

 

이걸 crontab 의 경로에 적어준다.

*/2 * * * * /usr/bin/sh /home/test.py

 

이렇게 해결이 되었다. 

반응형