chmod
zmienia prawa dostępu do pliku
1. chmod.1.man
Manpage of CHMOD
CHMOD
Section: Narzędzia plikowe GNU 4.0l (1)Updated: FSF
Index Return to Main Contents
NAZWA
chmod - zmienia prawa dostępu do plikuSKŁADNIA
chmod [opcja]... tryb[,tryb]... plik...chmod [opcja]... tryb-ósemkowo plik...
chmod [opcja]... --reference=rplik plik...
OPIS
Dokumentacja niniejsza nie jest już utrzymywana i może być niedokładna lub niekompletna. Autorytatywnym źródłem jest obecnie dokumentacja Texinfo. Dostęp do niej uzyskasz wpisując w wierszu poleceń:- pinfo chmod
- info chmod.
Ta strona podręcznika man opisuje chmod w wersji GNU.
chmod zmienia prawa dostępu do każdego podanego pliku według parametru tryb, który jest albo symboliczną przedstawieniem zmian, których dokonać, albo ósemkową liczbą reprezentującą wzorzec bitowy nowych praw.
Format trybu symbolicznego to `[ugoa...][[+-=][rwxXstugo...]...][,...]'. Można podać wiele operacji symbolicznych, oddzielonych przecinkami.
Kombinacja liter `ugoa' kontroluje, czyje prawa mają zostać zmienione: właściciela (u), innych użytkowników z tej samej grupy (g), innych użytkowników (o), lub wszystkich (a). Jeśli żadnego z tych parametrów nie podano, rezultatem jest użycie domyślne `a', lecz bity, które są ustawione w umask nie są zmieniane.
Operator `+' powoduje dodanie wybranych praw do istniejących; `-' powoduje ich odjęcie; `=' powoduje ustawienie dokładnie takich praw, jakie wybrano.
Litery `rwxXstugo' wybierają nowe prawa dla użytkowników: odczytu (read) (r), zapisu (write) (w), wykonania (eXecute) (lub dostępu do katalogu) (x), wykonania tylko jeśli plik jest katalogiem, lub już ma prawa wykonania dla danego użytkownika (X), ustawienia ID grupy podczas wywołania (s), zachowania tekstu programu na urządzeniu wymiany (t), prawa które posiada właściciel pliku (u), prawa innego użytkownika z grupy posiadającej plik (g), prawa innych użytkowników (o).
Tryb numeryczny jest podaniem jednej do czterech ósemkowych liczb (0-7), wyprowadzonych przez dodawanie wartości bitowych 4,2,1. Każda ominięta cyfra jest traktowana jak zero. Pierwsza cyfra wybiera SUID (4) i SGID (2) oraz atrybut zachowania obrazu tekstowego (1). Następna cyfra wybiera prawa dla właściciela: odczytu (4), zapisu (2), wykonania (1); trzecia cyfra prawa dla grupy posiadającej plik, a czwarta dla innych użytkowników, spoza grupy (analogicznie do cyfry dla właściciela).
chmod nigdy nie zmienia praw dowiązań symbolicznych, gdyż funkcja systemowa chmod nie potrafi tego dokonać. Nie jest to problemem, ponieważ prawa dowiązań symbolicznych nigdy nie są używane. Jednakże, dla każdego dowiązania symbolicznego, wymienionego w wierszu poleceń, chmod zmienia prawa wskazywanego przez nie pliku. W przeciwieństwie do powyższego, chmod ignoruje dowiązania symboliczne napotkane podczas rekurencyjnego przechodzenia przez katalogi.
OPCJE
- -c, --changes
- Jak --verbose, ale wyświetla tylko pliki, których prawa rzeczywiście się zmieniły.
- -f, --silent, --quiet
- Nie wyświetla komunikatów o błędach dla plików, których praw nie dało się zmienić.
- -v, --verbose
- Wyświetla komunikaty diagnostyczne dla każdego przetwarzanego pliku.
- -R, --recursive
- Rekurencyjnie zmienia prawa katalogów i ich zawartości.
- --reference=rplik
- Posługuje się prawami dostępu wskazanego rpliku zamiast wprost podanego trybu.
- --help
- Wyświetla informację o stosowaniu programu i dostępnych opcjach, kończy działanie.
- --version
- Wyświetla numer wersji programu i kończy działanie.
Każdy tryb składa się z co najmniej jednej z liter ugoa, jednego z symboli +-= oraz z co najmniej jednej z liter rwxXstugo.
Prawa dostępu do plików opisano bliżej w podręczniku fileutils(1).
AUTOR
Napisane przez Davida MacKenzie.ZGŁASZANIE BŁĘDÓW
Błędy proszę zgłaszać, w jęz.ang., do <bug-fileutils@gnu.org>.COPYRIGHT
Copyright © 1999 Free Software Foundation, Inc.This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
ZOBACZ TAKŻE
chown(1), chgrp(1), ls(1), find(1), fileutils(1).OD TŁUMACZA
Zaktualizowano i poszerzono wg dokumentacji Texinfo dla narzędzi plikowych GNU wersji 4.01.
Index
This document was created by man2html using the manual pages.
Time: 23:26:00 GMT, July 09, 2008
2. chmod.2.man
Manpage of CHMOD
CHMOD
Section: Podręcznik programisty Linuksa (2)Updated: 1997-12-10
Index Return to Main Contents
NAZWA
chmod, fchmod - zmiana praw do plikuSKŁADNIA
#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 dostępu do pliku określonego przez path lub wskazywanego przez filedes.Prawa są podawane jako or następujących wartości:
-
- S_ISUID
- 04000 ustawia ID użytkowinka przy uruchomieniu
- S_ISGID
- 02000 ustawia ID grupy przy uruchomieniu
- S_ISVTX
- 01000 bit "sticky"
- S_IRUSR (S_IREAD)
- 00400 odczyt przez właściciela
- S_IWUSR (S_IWRITE)
- 00200 zapis przez właściciela
- S_IXUSR (S_IEXEC)
- 00100 uruchomianie/przeszukiwanie przez właściciela
- S_IRGRP
- 00040 odczyt przez grupę
- S_IWGRP
- 00020 zapis przez grupę
- S_IXGRP
- 00010 uruchomianie/przeszukiwanie przez grupę
- S_IROTH
- 00004 odczyt przez pozostałych
- S_IWOTH
- 00002 zapis przez pozostałych
- S_IXOTH
-
00001 uruchomianie/przeszukiwanie przez pozostałych
Efektywny UID procesu musi być zerem, lub odpowiadać właścicielowi pliku.
Jeśli efektywny UID procesu jest różny od zera, a grupa pliku różni 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 wystąpienia błędu.
Zależnie od systemu plików, bity SUID i SGID mogą zostać wyłączone podczas zapisywania pliku. Na niektórych systemach plików, tylko superużytkownik może ustawić bit "sticky", który może mieć specjalne znaczenie. Znaczenie bitów "sticky", SUID i SGID dla katalogów opisano w stat(2).
Na systemach plików NFS, ograniczanie praw będzie miało natychmiastowy wpływ na aktualnie otwarte pliki, gdyż kontrola dostępu dokonywana jest na serwerze, a otwarte pliki obsługiwane sa przez klienta. Rozszerzenie uprawnień może zostać udostępnione z opóźnieniem innym klientom, jeśli mają włączone buforowanie atrybutów.
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 chmod to:
- EPERM
- Efektywny UID nie odpoiwada właścicielowi pliku i nie jest zerem.
- 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.
- EIO
- Wystąpił błąd wejścia-wyjścia.
Ogólne błędy dla fchmod to:
- EBADF
- Deskryptor pliku fildes jest nieprawidłowy.
- EROFS
- Zobacz wyżej.
- EPERM
- Zobacz wyżej.
- EIO
- Zobacz wyżej.
ZGODNE Z
Funkcja chmod jest zgodna z SVr4, SVID, POSIX, X/OPEN, 4.4BSD. SVr4 dokumentuje błędy EINTR, ENOLINK i EMULTIHOP, lecz nie dokumentuje ENOMEM. POSIX.1 nie dokumentuje błędów 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 błędy 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 błędy ENOSYS i EINVAL, ale nie dokumentuje EIO.
POSIX i X/OPEN nie dokumentują bitu "sticky".
ZOBACZ TAKŻE
Index
This document was created by man2html using the manual pages.
Time: 23:26:00 GMT, July 09, 2008


