Provided by: manpages-it-dev_4.26.0-1_all bug

NOME

       daemon - esegue sullo sfondo

LIBRERIA

       Libreria C standard (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 │
       └─────────────────────────────────────────────────────────────────────────────┴───────────────┴─────────┘

VERSIONI

       Una funzione simile appare nei BSD.

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

CONFORME A

       Nessuno.

STORIA

       4.4BSD.

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
       sistemi  che  seguono  la  semantica di System V (p.es. Linux), questo vuol dire che se il demone apre un
       terminale che non  è  già  un  terminale  di  controllo  per  un'altra  sessione,  il  terminale  diventa
       involontariamente 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>, Marco Curreli <marcocurreli@tiscali.it> e Giuseppe Sacco <eppesuig@debian.org>

       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.9.1                             2 maggio 2024                                        daemon(3)