Skip to content

Uprawnienia plików w Linuksie wyjaśnione

Tryby ósemkowe i symboliczne dla chmod oraz bity setuid, setgid i sticky.

Każdy plik ma trzy klasy: właściciel, grupa i pozostali. Każda klasa sumuje trzy bity: odczyt to 4, zapis to 2, wykonanie to 1. Trzy cyfry ósemkowe tworzą tryb.

Tabela referencyjna · 42 wpisy
42 of 42 rows
Numerycznie (ósemkowo)
Właściciel ma pełny dostęp; grupa i pozostali mogą czytać i wykonywać.chmod 755 script.sh
Właściciel czyta i zapisuje; grupa i pozostali tylko czytają.chmod 644 notes.txt
Tylko właściciel czyta i zapisuje; nikt inny nie ma dostępu.chmod 600 ~/.ssh/id_rsa
Tylko właściciel ma pełny dostęp; nikt inny nie ma dostępu.chmod 700 ~/.ssh
Wszyscy mają pełny dostęp. Zagrożenie bezpieczeństwa.chmod 777 shared/
Wszyscy czytają i zapisują. Brak bitu wykonywania.chmod 666 log.txt
Właściciel ma pełny dostęp; grupa czyta i wykonuje; pozostali nic.chmod 750 app/
Tylko wykonywanie, dla wszystkich klas. Przez katalog można przechodzić, ale nie można wylistować jego zawartości.chmod 111 dir/
Brak dostępu dla każdej klasy. Root nadal może odczytać plik.chmod 000 private.key
Właściciel i grupa mają pełny dostęp plus setgid; wzorzec katalogu współdzielonego przez zespół.chmod 2775 /srv/team
Wyniki umask
Maska domyślna. Nowe pliki dostają 644; nowe katalogi dostają 755.umask 022
Maska prywatna. Nowe pliki dostają 600; nowe katalogi dostają 700.umask 077
Symbolicznie
Dodaj wykonywanie dla właściciela.chmod u+x deploy.sh
Odbierz zapis grupie.chmod g-w config.yml
Odbierz odczyt pozostałym.chmod o-r secret.env
Ustaw tylko odczyt dla wszystkich klas.chmod a=r readme.md
Nadaj wszystkie uprawnienia wszystkim klasom.chmod ugo+rwx public/
Bity specjalne
Ustawiony bit setuid. Plik binarny działa jako właściciel pliku.chmod 4755 /usr/bin/passwd
Ustawiony bit setgid. Nowe pliki i podkatalogi dziedziczą grupę katalogu.chmod 2755 /shared
Ustawiony bit sticky. Tylko właściciel pliku może usuwać.chmod 1777 /tmp
Bit sticky na zwykłym pliku. Historyczna wskazówka trzymania w swapie, ignorowana przez współczesny Linux.chmod 1755 legacy.sh
Polecenia
Zmienia bity trybu pliku.chmod 755 file
Zmienia właściciela i grupę pliku.chown user:group file
Zmienia grupę będącą właścicielem pliku.chgrp devs file
Ustawia domyślną maskę uprawnień dla nowych plików.umask 022
Wylistowuje pliki z uprawnieniami w długim formacie.ls -l /etc
Pokazuje wpisy POSIX ACL pliku.getfacl report.pdf
Ustawia lub modyfikuje wpisy POSIX ACL.setfacl -m u:alice:rw report.pdf
Znajduje pliki, których bity uprawnień pasują do trybu.find / -perm /4000
Wypisuje metadane pliku, w tym tryb ósemkowy.stat -c '%a %n' file
Wylistowuje uprawnienia każdego elementu ścieżki.namei -l /var/www/index.html
Zmienia atrybut pliku, na przykład immutable.chattr +i /etc/resolv.conf
Wylistowuje atrybuty plików.lsattr /etc/resolv.conf
Pokazuje capabilities nadane plikowi.getcap /usr/bin/ping
Nadaje plikowi capability, bez setuid.setcap 'cap_net_raw=+ep' /usr/bin/ping
Wylistowuje capabilities obowiązujące w bieżącej powłoce.capsh --print
Pokazuje identyfikator użytkownika, identyfikator grupy i przynależności do grup użytkownika.id alice
Wylistowuje grupy, do których należy użytkownik.groups alice
Uruchamia polecenie jako inny użytkownik zgodnie z polityką sudoers.sudo systemctl restart nginx
Edytuje plik sudoers z kontrolą składni.visudo
Przełącza na inne konto użytkownika.su - deploy
Uruchamia powłokę z inną grupą podstawową.newgrp developers