função daemon não está funcionando no CentOS 6.4

8

Estou tentando daemonizar um processo com um usuário diferente.

No meu init.d, eu tenho um serviço que se parece um pouco com isso:

...
start() {
    echo "Starting mydaemon..."
    daemon --user someuser --name mydaemon mycommand
}
...

(script inteiro aqui: http://pastebin.com/bvpnsHgn )

No entanto, tudo o que recebo é daemon: command not found.

Eu verifiquei o que daemon()está declarado /etc/init.d/functions, mas ainda assim, não consigo usá-lo.

Como posso resolver isto?

Chris Watts
fonte

Respostas:

11

Você garantiu a origem da /etc/init.d/functionsbiblioteca no script init.d do seu serviço?

Você precisaria disso no seu script init.d:

# Source function library.
. /etc/init.d/functions

Se já estiver lá, você pode postar o script de início do seu daemon?

ewwhite
fonte
Eu adicionei essa linha, e ainda faz o mesmo. Não sigo o que você quer que eu cole? O arquivo inteiro do qual dei o trecho?
Chris Watts
1
@CJxD Yep. Por favor, faça isso.
ewwhite
pastebin.com/bvpnsHgn
Chris Watts
@CJxD Me desculpe. Você pode tentar fazer isso . /etc/init.d/functions, como escrevi na minha resposta?
ewwhite
1
Deixa pra lá! Funcionou, o arquivo simplesmente não estava sendo carregado no servidor quando eu o salvei. D'oh!
Chris Watts
0

Se estiver faltando os scripts, você pode simplesmente (re) instalá-los, isso deve daemon: command not foundresolver o problema

yum install -y initscripts

Espero que isto ajude

Jaroslav Pantsjoha
fonte
1
É concebível que um sistema possa ser confundido de uma maneira em que esse comando possa ajudar. No entanto, não é uma explicação muito provável. A resposta mais antiga fornece uma explicação muito mais provável dos sintomas (e acabou sendo a correta).
kasperd