Provided by: manpages-it-dev_4.21.0-2_all bug

NOME

       daemon - esegue sullo sfondo

LIBRARY

       Standard C library (libc, -lc)

SINTASSI

       #include <unistd.h>

       int daemon(int nochdir, int noclose);

   Macro per test di funzionalità per glibc (vedere feature_test_macros(7)):

       daemon():
           A partire de glibc 2.21:
               _DEFAULT_SOURCE
           In glibc 2.19 e 2.20:
               _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
           Fino a glibc 2.19 incluso:
               _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIZIONE

       La funzione daemon() è utilizzata dai programmi che vogliono staccarsi dal terminale di controllo e stare
       in esecuzione sullo sfondo come demoni di sistema.

       Se  nochdir  è  zero,  daemon() cambia la directory di lavoro corrente del processo alla directory radice
       ("/"); altrimenti, la directory di lavoro corrente rimane invariata.

       Se noclose è zero, daemon() redireziona lo standard input, lo standard  output  e  lo  standard  error  a
       /dev/null; altrimenti, non vengono apportata variazioni a questi descrittori di file.

VALORE RESTITUITO

       (Questa  funzione  esegue  un fork, e se il fork(2) ha successo, il genitore chiama _exit(2), in modo che
       errori successivi vengano visti solo dal figlio.) In caso di successo daemon)  restituisce  zero.  Se  si
       verifica un errore, daemon() restituisce -1 e imposta errno ad uno qualunque degli errori specificati per
       fork(2) e setsid(2).

ATTRIBUTI

       Per la spiegazione dei termini usati in questa sezione, vedere attributes(7).
       ┌─────────────────────────────────────────────────────────────────────────────┬───────────────┬─────────┐
       │ InterfacciaAttributoValore  │
       ├─────────────────────────────────────────────────────────────────────────────┼───────────────┼─────────┤
       │ daemon()                                                                    │ Thread safety │ MT-Safe │
       └─────────────────────────────────────────────────────────────────────────────┴───────────────┴─────────┘

STANDARDS

       Non presente in POSIX.1. Una funzione simile è presente sui sistemi BSD. La funzione daemon() apparve per
       la prima volta in 4.4BSD.

NOTE

       L'implementazione  di glibc può anche restituire -1 quando /dev/null esiste ma non è un dispositivo a ca‐
       ratteri con i numeri maggiore e minore che ci si aspetterebbe. In questo caso errno non ha bisogno di es‐
       sere impostato.

BUG

       L'implementazione GNU C Library di questa funzione è stata presa da BSD, e non  impiega  la  tecnica  del
       doppio fork (cioè, fork(2), setsid(2), fork(2)) che è necessaria per essere sicuri che il processo demone
       risultante  non  sia un leader di sessione. Invece, il demone risultante è un leader di sessione. Sui si‐
       stemi che seguono la semantica di System V (p.es. Linux), questo vuol dire che se il demone apre un  ter‐
       minale  che non è già un terminale di controllo per un'altra sessione, il terminale diventa involontaria‐
       mente il terminale di controllo per il demone.

VEDERE ANCHE

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

TRADUZIONE

       La traduzione italiana di questa pagina di manuale è stata creata da Giordano Neri <neri@cli.di.unipi.it>
       e Marco Curreli <marcocurreli@tiscali.it>

       Questa traduzione è documentazione libera; leggere la GNU General Public License Versione 3 o  successiva
       per le condizioni di copyright. Non ci assumiamo alcuna responsabilità.

       Per  segnalare  errori  nella  traduzione  di  questa  pagina  di  manuale  inviare un messaggio a pluto-
       ildp@lists.pluto.it.

Linux man-pages 6.03                            15 dicembre 2022                                       daemon(3)