Zezwolenie na pliki:
chmod 664 myFile // rw-rw-r--
A dla folderów:
chmod 774 myFolder // rwxrwxr--
Jeśli użyję tylko uprawnienia do odczytu i zapisu, foldery nie będą wyświetlać ich zawartości.
Jaki jest tego powód?
Ponieważ nie można „wykonać” katalogu, bit wykonania został lepiej wykorzystany. Bit wykonania w katalogu umożliwia dostęp do elementów znajdujących się w katalogu, nawet jeśli nie można wyświetlić zawartości katalogów.
$ mkdir -p dir/
$ echo 'Hello World!' > dir/file
$ chmod 000 dir/
$ ls -al dir/
ls: cannot open directory dir: Permission denied
$ cat dir/file
cat: dir/file: Permission denied
$ chmod +x dir/
$ ls -al dir/
ls: cannot open directory dir: Permission denied
$ cat dir/file
Hello World!
Z strony chmod
podręcznika:
Litery rwxXst wybierają bity trybu pliku dla dotkniętych użytkowników: odczyt (r), zapis (w), wykonanie (lub wyszukiwanie katalogów) (x) , wykonanie / wyszukiwanie tylko, jeśli plik jest katalogiem lub ma już uprawnienia do wykonywania dla niektórych użytkownik (X), ustaw ID użytkownika lub grupy na wykonanie (s), flagę ograniczonego usuwania lub lepki bit (t).
Katalogi (zwykle nie są nazywane folderami w * nix) mają inne znaczenie dla bitów uprawnień niż normalne pliki.
W przypadku katalogów zapis pozwala na tworzenie nowych plików w nim zawartych.
Odczyt pozwala wyświetlić listę plików w nim zawartych.
Wykonaj pozwala na wejście i dostęp do plików (lub innych katalogów) w środku.
cd
) wprowadzasz go (wykonuje).Wykonywanie uprawnień do katalogu umożliwia przechodzenie do niego, w celu korzystania z zasobów w nim zawartych.
źródło
Bit „wykonaj” w rzeczywistości oznacza „szukaj”, gdy jest zastosowany do katalogów (z
man chmod
). Wydaje się to rozsądne, ponieważ wykonanie nie ma znaczenia dla katalogu.źródło
x
Nieco w folderze odnosi się do wyszukiwania indeksowanie / katalog / liście; żaden z nich nie jest możliwy, jeśli utrzymasz ten poziom na niskim poziomie.Oto przykład użycia: Jeśli chcesz mieć użytkownikowi ograniczone uprawnienia do odczytu na każdym katalogu, ale jego domu, powiedzmy
/home/dummy
, to trzeba zrobić/
i/home
miećx
ustawiony bit, w przeciwnym razie nie można nawet dostać się do jego katalogu domowym.źródło