Provided by: manpages-pl-dev_0.6-2_all bug

NAZWA

       chown, fchown, lchown - zmiana właściciela pliku

SKŁADNIA

       #include <sys/types.h>
       #include <unistd.h>

       int chown(const char *path, uid_t owner, gid_t group);
       int fchown(int fd, uid_t owner, gid_t group);
       int lchown(const char *path, uid_t owner, gid_t group);

OPIS

        Uwaga! To tłumaczenie może być nieaktualne!

       Zmieniony zostaje właściciel pliku określonego przez path lub przez deskryptor fd.  Tylko superużytkownik
       może zmieniać właściciela pliku. Właściciel pliku może zmieniać  tylko  grupę  pliku  na  dowolną  grupę,
       której jest członkiem.  Superużytkownik może zmieniać grupę bez ograniczeń.

       Jeśli owner lub group jest podane jako -1, to ten identyfikator nie jest wtedy zmieniany.

       Jeżeli  właściciel  lub  grupa pliku uruchamialnego są zmieniane przez użytkownika nie posiadającego praw
       superużytkownika, to atrybuty S_ISUID i S_ISGID pliku zostaną wyzerowane. Standard POSIX  nie  precyzuje,
       czy atrybuty te powinny być również zerowane, kiedy to użytkownik root wywołuje funkcję chown; zachowanie
       Linuksa w tym wypadku zależy od wersji jądra.  W przypadku pliku, który nie ma  praw  uruchamiawania  dla
       grupy (z wyzerowanym bitem S_IXGRP), bit S_ISGID oznacza obowiązkowe blokowanie i nie jest zerowany przez
       chown.

WARTOŚĆ ZWRACANA

       Po pomyślnym zakończeniu zwracane jest zero. W wypadku błędu zwracane jest  -1  i  odpowiednio  ustawiane
       errno.

BŁĘDY

       Dla  niektórych  systemów  plików  mogą być zwracane inne błędy niż opisane poniżej. Najogólniejsze błędy
       chown to:

       EPERM  Efektywny UID nie odpowiada właścicielowi pliku i nie jest zerem  albo  owner  lub  group  zostały
              podane nieprawidłowo.

       EROFS  Podany plik znajduje się na systemie plików przeznaczonym tylko do odczytu.

       EFAULT path wskazuje poza dostępną dla użytkownika przestrzeń adresową.

       ENAMETOOLONG
              path jest zbyt długie.

       ENOENT Plik nie istnieje.

       ENOMEM Brak pamięci jądra.

       ENOTDIR
              Składnik ścieżki nie jest katalogiem.

       EACCES Brak praw do przeszukiwania dla składnika ścieżki.

       ELOOP  Podczas rozwiązywania path napotkano zbyt wiele dowiązań symbolicznych.

       Ogólne błędy dla fchown to:

       EBADF  Deskryptor pliku jest nieprawidłowy.

       ENOENT Zobacz wyżej.

       EPERM  Zobacz wyżej.

       EROFS  Zobacz wyżej.

       EIO    Niskopoziomowy błąd we/wy podczas modyfikacji i-węzła.

UWAGI

       W  wersjach  jądra  Linuksa  poniżej  2.1.81  (i  różnych  od  2.1.46)  chown  nie podąża za dowiązaniami
       symbolicznymi.  Od wersji 2.1.81 Linuksa chown podąża za dowiązaniami symbolicznymi, została także dodana
       nowa funkcja systemowa lchown, która nie podąża za dowiązaniami symbolicznymi.  Od wersji 2.1.86 Linuksa,
       ta nowa funkcja (mająca taką samą semantykę jak stare chown) ma taki sam numer funkcji, a chown otrzymała
       nowy numer.

       Prototyp  dla  fchown  jest  dostępny  jedynie,  gdy  zdefiniowane  jest  _BSD_SOURCE (bezpośrednio, albo
       pośrednio - nie definiując _POSIX_SOURCE czy kompilując z włączoną flagą -ansi).

ZGODNE Z

       Funkcja chown jest zgodna z SVr4, SVID, POSIX,  X/OPEN.  Wersja  4.4BSD  może  być  używana  tylko  przez
       superużytkownika  (to  znaczy normalni użytkownicy nie mogą "podarować" nikomu plików).  SVr4 dokumentuje
       błędy EINVAL, EINTR, ENOLINK i EMULTIHOP, lecz nie dokumentuje ENOMEM.  POSIX.1  nie  dokumentuje  błędów
       ENOMEM i ELOOP.

       Funkcja  fchown  jest  zgodna  z 4.4BSD oraz SVr4.  SVr4 dokumentuje dodatkowe błędy EINVAL, EIO, EINTR i
       ENOLINK.

OGRANICZENIA

       Semantyka chown() jest pogwałcona na  systemach  plików  NFS,  z  włączonym  mapowaniem  UID.  Dodatkowo,
       semantyka  wszystkich  wywołań  systemowych,  które  uzyskują  dostęp  do  zawartości plików jest dla NFS
       pogwałcona, bo chown() może spowodować natychmiastowe unieważnienie  dostępu  do  już  otwartych  plików.
       Buforowanie  po  stronie  klienta  może spowodować opóźnienie możliwości uzyskania dostępu do pliku przez
       użytkowników innych stacji klienckich w stosunku do chwili dokonania  zmiany  właściciela  umożliwiającej
       ten dostęp.

ZOBACZ TAKŻE

       chmod(2), flock(2)

INFORMACJE O TŁUMACZENIU

       Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne.
       W razie zauważenia różnic między powyższym opisem a rzeczywistym  zachowaniem  opisywanego  programu  lub
       funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:

              man --locale=C 2 chown

       Prosimy   o   pomoc   w   aktualizacji   stron   man  -  więcej  informacji  można  znaleźć  pod  adresem
       http://sourceforge.net/projects/manpages-pl/.