Provided by: manpages-pl-dev_20060617-3_all bug

NAZWA

       chmod, fchmod - zmiana praw do pliku

SK/LADNIA

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

       int chmod(const char *path, mode_t mode);
       int fchmod(int fildes, mode_t mode);

OPIS

       Zmienione  zostaj  prawa  dostpu  do  pliku  okrelonego  przez path lub
       wskazywanego przez filedes.

       Prawa s podawane jako or nastpujcych wartoci:

              S_ISUID   04000 ustawia ID uytkowinka przy uruchomieniu

              S_ISGID   02000 ustawia ID grupy przy uruchomieniu

              S_ISVTX   01000 bit "sticky"

              S_IRUSR (S_IREAD)
                        00400 odczyt przez wlaciciela

              S_IWUSR (S_IWRITE)
                        00200 zapis przez wlaciciela

              S_IXUSR (S_IEXEC)
                        00100 uruchomianie/przeszukiwanie przez wlaciciela

              S_IRGRP   00040 odczyt przez grup

              S_IWGRP   00020 zapis przez grup

              S_IXGRP   00010 uruchomianie/przeszukiwanie przez grup

              S_IROTH   00004 odczyt przez pozostalych

              S_IWOTH   00002 zapis przez pozostalych

              S_IXOTH   00001 uruchomianie/przeszukiwanie przez pozostalych

       Efektywny UID procesu musi by zerem, lub odpowiada wlacicielowi pliku.

       Jeli efektywny UID procesu jest rony od zera, a grupa pliku roni si  od
       efektywnego ID grupy procesu i nie jest te adn z kego grup dodatkowych,
       to bit S_ISGID zostanie wyzerowany, ale  nie  spowoduje  to  wystpienia
       bldu.

       Zalenie  od systemu plikow, bity SUID i SGID mog zosta wylczone podczas
       zapisywania pliku. Na niektorych systemach plikow, tylko superuytkownik
       moe  ustawi  bit "sticky", ktory moe mie specjalne znaczenie. Znaczenie
       bitow "sticky", SUID i SGID dla katalogow opisano w stat(2).

       Na systemach plikow NFS, ograniczanie praw bdzie  mialo  natychmiastowy
       wplyw  na  aktualnie otwarte pliki, gdy kontrola dostpu dokonywana jest
       na serwerze, a otwarte pliki obslugiwane sa przez klienta. Rozszerzenie
       uprawnie  moe  zosta  udostpnione z oponieniem innym klientom, jeli maj
       wlczone buforowanie atrybutow.

WARTO ZWRACANA

       Po pomylnym zakoczeniu, zwracane jest zero.  W  wypadku  bldu  zwracane
       jest -1 i odpowiednio ustawiane errno.

B/LDY

       Dla  niektorych  systemow  plikow  mog by zwracane inne bldy ni opisane
       poniej. Najogolniejsze bldy chmod to:

       EPERM  Efektywny UID nie odpoiwada wlacicielowi pliku i nie jest zerem.

       EROFS  Podany plik znajduje si na systemie plikow  przeznaczonym  tylko
              do odczytu.

       EFAULT path wskazuje poza dostpn dla uytkownika przestrze adresow.

       ENAMETOOLONG
              path jest zbyt dlugie.

       ENOENT Plik nie istnieje.

       ENOMEM Brak pamici jdra.

       ENOTDIR
              Skladnik cieki nie jest katalogiem.

       EACCES Brak praw do przeszukiwania dla skladnika cieki.

       ELOOP  Podczas   rozwizywania   path   napotkano   zbyt   wiele  dowiza
              symbolicznych.

       EIO    Wystpil bld wejcia-wyjcia.

       Ogolne bldy dla fchmod to:

       EBADF  Deskryptor pliku fildes jest nieprawidlowy.

       EROFS  Zobacz wyej.

       EPERM  Zobacz wyej.

       EIO    Zobacz wyej.

ZGODNE Z

       Funkcja chmod jest zgodna z SVr4, SVID, POSIX,  X/OPEN,  4.4BSD.   SVr4
       dokumentuje  bldy  EINTR,  ENOLINK  i  EMULTIHOP,  lecz nie dokumentuje
       ENOMEM. POSIX.1 nie dokumentuje bldow EFAULT, ENOMEM, ELOOP i EIO,  ani
       makr S_IREAD, S_IWRITE i S_IEXEC.

       Funkcja fchmod jest zgodna z 4.4BSD i SVr4.  SVr4 dokumentuje dodatkowe
       bldy EINTR i ENOLINK.  POSIX wymaga funkcji  fchmod,  gdy  zdefiniowane
       jest      co     najmniej     jedno     z     _POSIX_MAPPED_FILES     i
       _POSIX_SHARED_MEMORY_OBJECTS oraz dokumentuje dodatkowe bldy  ENOSYS  i
       EINVAL, ale nie dokumentuje EIO.

       POSIX i X/OPEN nie dokumentuj bitu "sticky".

       ZOBACZ TAKE
              open(2), chown(2), execve(2), stat(2)

INFORMACJE O T/LUMACZENIU

       Powysze  tlumaczenie  pochodzi z nieistniejcego ju Projektu Tlumaczenia
       Manuali i moe nie by aktualne. W razie zauwaenia ronic  midzy  powyszym
       opisem  a  rzeczywistym  zachowaniem  opisywanego programu lub funkcji,
       prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.