Provided by: manpages-pt-br-dev_4.27.0-1_all bug

NOME

       daemon - rodar no background

BIBLIOTECA

       Biblioteca C Padrão (libc, -lc)

SINOPSE

       #include <unistd.h>

       int daemon(int nochdir, int noclose);

   Requisitos de macro de teste de recursos para o glibc (consulte feature_test_macros(7)):

       daemon():
           Desde o glibc 2.21:
               _DEFAULT_SOURCE
           No glibc 2.19 e 2.20:
               _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
           Até e incluindo o glibc 2.19:
               _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIÇÃO

       A  função  daemon()  serve para desvincular o programa do terminal controlador e fazê-lo ser executado em
       segundo plano como um daemon.

       Se nochdir for zero, daemon() muda o diretório de trabalho atual do processo para o diretório raiz ("/");
       caso contrário, o diretório de trabalho atual permanecerá inalterado.

       Se noclose for zero, daemon() redireciona a  entrada  padrão,  a  saída  padrão  e  o  erro  padrão  para
       /dev/null; caso contrário, nenhuma alteração será feita nesses descritores de arquivo.

VALOR DE RETORNO

       (Essa  função  se bifurca e, se fork(2) for bem-sucedido, o pai chama _exit(2), para que erros adicionais
       sejam vistos apenas pelo filho.) Em caso de sucesso, daemon() retorna zero. Se ocorrer um erro,  daemon()
       retorna -1 e define errno para qualquer um dos erros especificados para fork(2) e setsid(2).

ATRIBUTOS

       Para uma explicação dos termos usados nesta seção, consulte attributes(7).
       ┌─────────────────────────────────────────────────────────────────────────────┬───────────────┬─────────┐
       │ InterfaceAtributoValor   │
       ├─────────────────────────────────────────────────────────────────────────────┼───────────────┼─────────┤
       │ daemon()                                                                    │ Thread safety │ MT-Safe │
       └─────────────────────────────────────────────────────────────────────────────┴───────────────┴─────────┘

VERSÕES

       Uma função semelhante aparece nos BSDs.

       A  implementação  da  glibc  também pode retornar -1 quando /dev/null existe, mas não é um dispositivo de
       caracteres com os números maiores e menores esperados. Neste caso, errno não precisa ser definido.

PADRÕES

       Nenhum.

HISTÓRICO

       4.4BSD.

BUGS

       A implementação da biblioteca GNU C desta função  foi  retirada  do  BSD  e  não  emprega  a  técnica  de
       bifurcação  dupla  (ou  seja,  fork(2), setsid(2), fork(2)) que é necessário para garantir que o processo
       daemon resultante não seja um líder de sessão. Em vez disso, o daemon resultante é um líder de sessão. Em
       sistemas que seguem a semântica do System V (por exemplo, Linux), isso significa que se o daemon abrir um
       terminal que ainda não seja um terminal de controle para outra sessão, então  esse  terminal  se  tornará
       inadvertidamente o terminal de controle do daemon.

VEJA TAMBÉM

       fork(2), setsid(2), daemon(7), logrotate(8)

TRADUÇÃO

       A   tradução   para   português   brasileiro   desta  página  man  foi  criada  por  Paulo  César  Mendes
       <drpc@ism.com.br>, André Luiz Fassone <lonely_wolf@ig.com.br> e Rafael Fontenelle <rafaelff@gnome.org>.

       Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 ou  posterior  para  as
       condições de direitos autorais.  Nenhuma responsabilidade é aceita.

       Se  você  encontrar  algum  erro  na  tradução  desta  página  de manual, envie um e-mail para a lista de
       discussão de tradutores.

Linux man-pages 6.9.1                              2 maio 2024                                         daemon(3)