usanso o update-rc.d

1. usanso o update-rc.d

Felipe oliveira Gutierrez
lipe.82

(usa Ubuntu)

Enviado em 14/09/2012 - 14:00h

Eu tenho um script para iniciar um serviço no meu ubuntu. Eu adicionei ele usando o padrão "# update-rc.d /etc/init.d/projeto". Mas ainda não inicia com o boot da máquina. Eu acho que é porque eu estou usando outro usuário para iniciar o script "su - www-data-c ...". Mas eu não tenho certeza, porque eu executei o comando update-rc.d como root (só roda com root). Quando eu executo o script de um terminal ele pede a senha do usuário www-data.

Alguém sabe o que está acontecendo? Muito obrigado! Felipe

#!/bin/bash
# /var/www/boinc/projeto/bin/start

function action {
su - www-data -c "/var/www/boinc/projeto/bin/$1"
}

case $1 in
start|stop|status)
action $1
;;
*)
echo "ERRO: usar $0 (start|stop|status)"
exit 1
;;
esac




  


2. Re: usanso o update-rc.d

Ricardo Libanio
riesdra

(usa Debian)

Enviado em 14/09/2012 - 14:18h

Felipe,

tente usar o sysv-rc-conf no lugar do update-rc.d, para fazer administração do serviços a ser carregado na inicialização.




3. Re: usanso o update-rc.d

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 14/09/2012 - 14:34h

lipe.82 escreveu:

Eu tenho um script para iniciar um serviço no meu ubuntu. Eu adicionei ele usando o padrão "# update-rc.d /etc/init.d/projeto". Mas ainda não inicia com o boot da máquina. Eu acho que é porque eu estou usando outro usuário para iniciar o script "su - www-data-c ...". Mas eu não tenho certeza, porque eu executei o comando update-rc.d como root (só roda com root). Quando eu executo o script de um terminal ele pede a senha do usuário www-data.

Alguém sabe o que está acontecendo? Muito obrigado! Felipe

#!/bin/bash
# /var/www/boinc/projeto/bin/start

function action {
su - www-data -c "/var/www/boinc/projeto/bin/$1"
}

case $1 in
start|stop|status)
action $1
;;
*)
echo "ERRO: usar $0 (start|stop|status)"
exit 1
;;
esac



function action é uma função? Se for, declare-a corretamente de acordo com as duas regras
1) Sem espaços no nome (então ela fica functionaction ou function_action)
2) Coloque o () pra indicar que é uma função (ficaria, portanto, function_action()). Reescreva o script assim:

function_action() {
...
}


E altere todas as chamadas posteriores a essa função.



4. Re: usanso o update-rc.d

Felipe oliveira Gutierrez
lipe.82

(usa Ubuntu)

Enviado em 14/09/2012 - 14:59h

Tem alguma coisa com o script do meu serviço, eu coloquei um sleep de 10segundos entre as funções e funcionou.

#!/bin/bash
# /var/www/boinc/projeto/bin/start
su - www-data -c "`/var/www/boinc/projeto/bin/stop`"
sleep 10
su - www-data -c "echo `date` >> /var/www/boinc/projeto/data.txt"

su - www-data -c "`/var/www/boinc/projeto/bin/start`"

Não sei porque tive que colocar o sleep 10. Se alguém souber, por favor....
Valeu! Felipe






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts