ThOhT
(usa CentOS)
Enviado em 24/08/2009 - 00:51h
Um amigo meu fez um scriptzinhu pra mim e funcionou perfeitamente para rodar as rádios!
Veja o script:
[radio.sh]
------------------------------------------------------------------
#!/bin/sh
PORTAS="8110 8112 8114"
# nao alterar a partir daqui
for PORTA in $PORTAS
do
VAR=`ps aux | grep "sc_serv $PORTA.conf" | wc -l`
echo -n "Shoutcast na $PORTA: "
if [ $VAR -eq 2 ]; then
echo "OK"
else
echo "OFF"
date
echo "- Colocando para rodar..."
cd /home/shoutcast/
./sc_serv $PORTA.conf > /var/log/shoutcast.log &
fi
echo ""
done
------------------------------------------------------------------
Copiei o mesmo código e só modifiquei o comando e estou tendo problemas com uma multiplicação dos processos.
Ele roda vários processos iguais "./sc_autodj 8110.adj" e tbm com os outros de portas diferentes.
[autodj.sh]
------------------------------------------------------------------
#!/bin/sh
PORTAS="8110 8112"
# nao alterar a partir daqui
for PORTA in $PORTAS
do
VAR=`ps aux | grep "sc_autodj $PORTA.adj" | wc -l`
echo -n "Auto-DJ na porta $PORTA: "
if [ $VAR -eq 2 ]; then
echo "OK"
else
echo "OFF"
date
echo "- Colocando para rodar..."
cd /home/shoutcast/
./sc_autodj $PORTA.adj > /var/log/shoutcast.log &
fi
echo ""
done
------------------------------------------------------------------
Ele roda os 2 script a cada 20 minutos, para que eles verifiquem se as rádios e autodjs estão funcionando perfeitamente. Se não estiverem, ele executa novamente:
------------------------------------------------------------------
0,20,40 * * * * /home/shoutcast/radio.sh > /dev/null 2>&1
0,20,40 * * * * /home/shoutcast/autodj.sh > /dev/null 2>&1
------------------------------------------------------------------
Por algum motivo ele ta executando os "autodj" novamente, mesmo eles funcionando.
Se eu rodar o comando manualmente, ele não executa esses vários processos.
Alguém saberia me dizer o que poderia ser?