oracular (3) daemon.3.gz

Provided by: manpages-pl-dev_4.23.1-1_all bug

NAZWA

       daemon - uruchamia w tle

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #include <unistd.h>

       int daemon(int nochdir, int noclose);

   Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

       daemon():
           Od glibc 2.21:
               _DEFAULT_SOURCE
           W glibc 2.19 i 2.20:
               _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
           Do glibc 2.19 włącznie:
               _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

OPIS

       Funkcja  daemon()  jest przeznaczona dla programów, które chcą odłączyć się od sterującego nimi terminala
       i działać w tle jako demony systemowe.

       Jeśli argument nochdir będzie zerem, to daemon() zmieni bieżący katalog roboczy na katalog główny  („/”).
       W przeciwnym wypadku bieżący katalog roboczy nie jest zmieniany.

       Jeśli  argument  noclose będzie zerem, to daemon() przekieruje standardowe wejście, standardowe wyjście i
       standardową diagnostykę do /dev/null. W przeciwnym wypadku podane deskryptory plików nie są zmieniane.

WARTOŚĆ ZWRACANA

       (Ta funkcja rozwidla się i jeśli fork(2) się powiedzie, rodzic wykonuje _exit(2), tak, że dalsze błędy są
       widziane  tylko  przez  potomka).  W  przypadku pomyślnego zakończenia, zwracane jest zero. Jeśli wystąpi
       błąd, daemon()  zwróci -1 i ustawi errno na jeden z błędów określonych dla fork(2) i setsid(2).

ATRYBUTY

       Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).

       ┌───────────────────────────────────────────────────────────────┬────────────────────────┬───────────────┐
       │InterfejsAtrybutWartość       │
       ├───────────────────────────────────────────────────────────────┼────────────────────────┼───────────────┤
       │daemon()                                                       │ Bezpieczeństwo wątkowe │ MT-bezpieczne │
       └───────────────────────────────────────────────────────────────┴────────────────────────┴───────────────┘

WERSJE

       Podobna funkcja występuje w BSD.

       Implementacja w glibc może również zwrócić -1 gdy /dev/null istnieje, ale nie jest urządzeniem znakowym o
       oczekiwanych numerach głównym i pobocznym. W tym przypadku nie ma potrzeby ustawiania errno.

STANDARDY

       Brak.

HISTORIA

       4.4BSD.

USTERKI

       Implementacja  biblioteki  C  GNU  dla  tej  funkcji  została zapożyczona z BSD i nie korzysta z techniki
       podwójnego rozwidlania (tzn. fork(2), setsid(2), fork(2)) koniecznej dla zapewnienia, że wynikowy  proces
       demona   nie  jest  liderem  sesji.  Zamiast  tego,  wynikowy  demon  jest  liderem  sesji.  W  systemach
       korzystających z semantyki Systemu V (np. Linux), oznacza to, że gdy demon  otwiera  terminal  który  nie
       jest  jeszcze  kontrolującym  terminalem dla innej sesji, to ten terminal po cichu zostanie kontrolującym
       terminalem dla demona.

ZOBACZ TAKŻE

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

TŁUMACZENIE

       Autorami   polskiego   tłumaczenia   niniejszej   strony   podręcznika   są:    Andrzej    Krzysztofowicz
       <ankry@green.mf.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

       Niniejsze  tłumaczenie  jest  wolną  dokumentacją.  Bliższe informacje o warunkach licencji można uzyskać
       zapoznając się z GNU General Public License w wersji  3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  lub
       nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

       Błędy  w  tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy dyskusyjnej ⟨manpages-pl-
       list@lists.sourceforge.net⟩.