Właściciel ma prawa: odczyt, zapis i wykonywanie. Grupa ma prawa: odczyt, zapis i wykonywanie. Pozostali mają prawa: odczyt, zapis i wykonywanie.
| Odczyt | Zapis | Wykonywanie | |
|---|---|---|---|
| Właściciel | ✓ | ✓ | ✓ |
| Grupa | ✓ | ✓ | ✓ |
| Pozostali | ✓ | ✓ | ✓ |
Typowe zastosowanie
Każdy może wszystko: unikaj poza jednorazowymi testami.
Warto wiedzieć
777 (rwxrwxrwx) pozwala każdemu użytkownikowi w systemie czytać, zmieniać, podmieniać i uruchamiać plik albo tworzyć i usuwać cokolwiek w folderze. Zwykle ustawia się go jako szybką poprawkę na „Permission denied”, co ukrywa prawdziwy problem: złego właściciela albo brakującą grupę. Każdy lokalny użytkownik lub przejęty proces, np. zhakowana wtyczka PHP, może wtedy wstrzyknąć kod do Twoich plików.
Zamiast tego usuń przyczynę: oddaj folder użytkownikowi, który do niego zapisuje (chown www-data uploads), albo użyj wspólnej grupy z 775 i setgid. Niektóre programy celowo odrzucają pliki zapisywalne dla wszystkich: sshd ignoruje takie pliki authorized_keys, a cron pomija zapisywalne pliki w /etc/cron.d. Współdzielony folder tymczasowy, który naprawdę tego potrzebuje, powinien mieć 1777, czyli ze sticky bitem, jak /tmp.
Polecenia
| Ustaw tryb | chmod 777 file |
|---|---|
| To samo literami | chmod u=rwx,g=rwx,o=rwx file |
| Folder wraz z całą zawartością | chmod -R 777 folder |
| Tylko foldery w środku | find folder -type d -exec chmod 777 {} + |
| Jak pokazuje to ls -l | -rwxrwxrwx |