Um amigo meu fez um scriptzinhu pra mim e funcionou perfeitamente para rodar as rádios!
Veja o script:
radio.sh
Copiei o mesmo código e só modifiquei o comando e estou tendo problemas com uma multiplicação dos processos.Código :#!/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
Ele roda vários processos iguais "./sc_autodj 8110.adj" e tbm com os outros de portas diferentes.
autodj.sh
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:Código :#!/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
Por algum motivo ele ta executando os "autodj" novamente, mesmo eles funcionando.Código :0,20,40 * * * * /home/shoutcast/radio.sh > /dev/null 2>&1 0,20,40 * * * * /home/shoutcast/autodj.sh > /dev/null 2>&1
Se eu rodar o comando manualmente, ele não executa esses vários processos.
Alguém saberia me dizer o que poderia ser?