Resolvendo problema com scripts que estão rodando no crontab
Dica publicada em Shell Script / Introdução
Resolvendo problema com scripts que estão rodando no crontab
Pessoal, decidi escrever essa dica pois recentemente me deparei com scripts feitos por estagiários que só funcionavam se rodados na mão. Uma vez colocados para rodar no cron do sistema, os mesmos não funcionam.
Todo o problema ocorria porque os scripts faziam chamadas de binários do sistema apenas pelo seu "nome". A dica para resolver esse problema é para TODOS os binários, usar o PATH completo do mesmo, assim não haverão problemas em rodar o script pelo cron.
Por exemplo, ao invés de usar:
tar -zxvf seu_arquivo.tar.gz
Use:
/bin/tar -zxvf seu_arquivo.tar.gz
Todo o problema ocorria porque os scripts faziam chamadas de binários do sistema apenas pelo seu "nome". A dica para resolver esse problema é para TODOS os binários, usar o PATH completo do mesmo, assim não haverão problemas em rodar o script pelo cron.
Por exemplo, ao invés de usar:
tar -zxvf seu_arquivo.tar.gz
Use:
/bin/tar -zxvf seu_arquivo.tar.gz
PATH=/bin:/usr/bin:/usr/local/bin:/sbin:.....
e aí não precisa ficar se preocupando em colocar o path completo na linha de comando.