O problema não veio do cron, mas do próprio programa.
Foi escrito em python e os.getenv("USER")
não retornou nenhum no cron, os.getenv("LOGNAME")
corrige o problema.
Eu uso um programa para verificar o status do raid. O comando é megaclisas-status
.
Aqui está o problema:
Tem o usuário /usr/sbin/megaclisas-status
return: This script requires Administrator privs
= > OK
Tem raiz /usr/sbin/megaclisas-status
return: -- Controller information -- ....
= > OK
No root crontab 0 */12 * * * bash /root/scripts/script.sh > /root/log/script.log 2>&1
return: This script requires Administrator privs
= > POR QUE ???
Alguém tem uma idéia do porque eu não posso usar este comando no crontab root?
Aqui está o conteúdo do script.sh:
raid=$(/usr/sbin/megaclisas-status)
/usr/bin/zabbix_sender -c /etc/zabbix/zabbix_agentd.conf -k system.raid.disk.status -o "$raid"
Aqui estão os direitos dos scripts:
-rwx------ 1 root root 131 févr. 11 14:11 scriptsh
O problema não veio do cron, mas do próprio programa.
Foi escrito em python e os.getenv("USER")
não retornou nenhum no cron, os.getenv("LOGNAME")
corrige o problema.