Não é possível executar o script de inicialização na inicialização após outro script de inicialização

0

Eu tenho três scripts de inicialização e o script de inicialização do Broker é executado corretamente, mas quando tento executar o script de inicialização Consumer e o script de init do Data Collector, o único processo em execução é o Broker.

Adicionei os links simbólicos aos níveis de execução usando update-rc.d para cada script e também alterei os prefixos numéricos nos links simbólicos para tentar executar os scripts na ordem correta, mas isso não funcionou.

Eu posso executar os scripts do terminal e eles funcionam bem, mas eles precisam ser todos iniciados na inicialização.

Alguma idéia de por que meus outros scripts não estão sendo executados?

Também dentro do meu Consumer and Data Collector estou em execução:

su user1 -c 'java -jar foo.jar'

para iniciar os serviços.

Além disso, a classe Java Consumer se senta e aguarda uma mensagem da fila, portanto, o código Java não é interrompido até que eu especifique o argumento stop para o script init. O Broker tem que começar primeiro, depois o Consumer e, em seguida, o Data Collector.

Adicionando os links simbólicos para os runlevels:

sudo update-rc.d Broker defaults 10 90
sudo update-rc.d Consumer defaults 15 85
sudo update-rc.d DataCollector defaults 20 80
    
por Colin McQueen 12.06.2012 / 17:32

2 respostas

1

Eu tenho que trabalhar. Eu fiz do Broker um processo em segundo plano, porque ele é executado constantemente até que eu desligue o computador ou chame o script com o parâmetro shutdown. Eu também fiz do consumidor um processo de fundo.

Script de inicialização do corretor

su user1 -c 'qpid-server &'

Script de inicialização do consumidor

su user1 -c 'java -jar foo.jar &'
    
por Colin McQueen 13.06.2012 / 12:41
0

Parece que o comando java nunca é concluído e, portanto, o restante dos scripts init não é iniciado. Tente algo como:

 nohup su user1 -c 'java -jar foo.jar' &

e acho que você descobrirá que o resto da sequência de inicialização do init funcionará.

    
por mdpc 12.06.2012 / 19:52