como faço para executar um cron job com um usuário específico?

1

Minhas habilidades de cron e scripting são muito ruins, mas preciso executar um trabalho a cada 5 minutos pelo usuário 'cpc'. Então criei um script e o deixei em / root.

Minha entrada crontab -e sobre isso é:

0-59 / 5 * * * * /root/bi-kettle.sh

E este script (bi-kettle.sh) é:

#!/bin/bash
su cpc
cd /home/cpc/data-integration 
/bin/bash kitchen.sh -rep="01" -job="MainLoad" -user="admin" -pass="admin" -level="Basic"'

Mas não é chamado ou executado a qualquer momento. O que estou perdendo aqui?

Obrigado antecipadamente!

    
por gtludwig 23.11.2012 / 20:34

2 respostas

4

Esse su é o motivo pelo qual ele falha, que lança um shell interativo. Por que não adicioná-lo ao crontab do usuário cpc? crontab -e -u cpc

    
por 23.11.2012 / 21:04
0

Como são as permissões do script? ou seja, se você executar ls -l /root/bi-kettle.sh , o script está configurado para ser executável pelo root? Se não, sua correção pode ser tão simples quanto chmod +x /root/bi-kettle.sh

    
por 23.11.2012 / 20:39