demon(3) Library Functions Manual demon(3) NUME daemon - ruleaza in fundal BIBLIOTECA Biblioteca C standard (libc, -lc) REZUMAT #include int daemon(int nochdir, int noclose); Cerine pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultai feature_test_macros(7)): daemon(): Incepand cu glibc 2.21: _DEFAULT_SOURCE In glibc 2.19 i 2.20: _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500) Pana la i inclusiv glibc 2.19: _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500) DESCRIERE Funcia daemon() este destinata programelor care doresc sa se detaeze de terminalul de control i sa ruleze in fundal ca demoni de sistem. Daca nochdir este zero, daemon() schimba directorul de lucru curent al procesului in directorul radacina (,,/"); in caz contrar, directorul de lucru curent este lasat neschimbat. Daca noclose este zero, daemon() redirecioneaza intrarea standard, ieirea standard i eroarea standard catre /dev/null; in caz contrar, nu se face nici o modificare la aceti descriptori de fiiere. VALOAREA RETURNATA (Aceasta funcie se bifurca, iar daca fork(2) reuete, parintele apeleaza _exit(2), astfel incat erorile ulterioare sunt vazute doar de copil). In caz de succes, daemon() returneaza zero. Daca apare o eroare, daemon() returneaza -1 i configureaza errno la oricare dintre erorile specificate pentru fork(2) i setsid(2). ATRIBUTE Pentru o explicaie a termenilor folosii in aceasta seciune, a se vedea attributes(7). +--------------------------------------+---------------------+---------+ |Interfaa | Atribut | Valoare | +--------------------------------------+---------------------+---------+ |daemon() | Sigurana firelor | MT-Safe | +--------------------------------------+---------------------+---------+ VERSIUNI O funcie similara apare in BSD. Implementarea glibc poate, de asemenea, sa returneze -1 atunci cand /dev/null exista, dar nu este un dispozitiv de caractere cu numerele majore i minore ateptate. In acest caz, errno nu trebuie sa fie configurata. STANDARDE Niciunul. ISTORIC 4.4BSD. ERORI Implementarea bibliotecii GNU C a acestei funcii a fost preluata de la BSD i nu utilizeaza tehnica double-fork (adica fork(2), setsid(2), fork(2)), care este necesara pentru a se asigura ca procesul demon rezultat nu este un lider de sesiune. In schimb, demonul rezultat este un lider de sesiune. Pe sistemele care urmeaza semantica Sistemului V (de exemplu, Linux), aceasta inseamna ca, daca demonul deschide un terminal care nu este deja un terminal de control pentru o alta sesiune, atunci acel terminal va deveni, din greeala, terminal de control pentru demon. CONSULTAI I fork(2), setsid(2), daemon(7), logrotate(8) TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . Pagini de manual de Linux 6.06 31 octombrie 2023 demon(3)