Use um sub-shell para limitar o escopo:
0 0 * * 0 (export PATH=$PATH:/sbin; /etc/init.d/tic_minus restart)
Eu tinha programado um cronjob para reiniciar um serviço com um aparente vazamento de memória semanalmente e recebi um email dizendo que o comando killproc
não foi encontrado.
Isso é em / sbin / killproc e não quero modificar o script de serviço, embora eu prefira que ele use caminhos absolutos, então estou optando por usar minha correção por meio do cron.
Então, eu não quero definir o PATH
no topo do arquivo crontab conforme a página man aparentemente diz (de acordo com outros posts que vi na internet, não na minha página de manual). Como eu posso estruturar minha linha crontab para definir uma variável de caminho (e não o PATH do squash root) apenas para este script?
tl; dr;
Isso é o que eu quero fazer
0 0 * * 0 /etc/init.d/tic_minus restart
isto é o que eu quero evitar
To: Stupid
From: All your customers
Stopping tic_minus: /etc/init.d/tic_minus: line 43: killproc: command not found
Starting tic_minus:
Nunca confie em cron env -version = > fonte env setup antes do comando.
0 0 * * 0 (. /usr/xx/myenv ; /some/cmd ) >> /usr/xx/mylog.log 2>&1
myenv inclui toda a configuração que você precisa. PATH, etc. Use a exportação para variáveis.