Uprawnienia Unix zostały zaprojektowane tak, aby były proste. Potrzebne jest uprawnienie do odczytu do odczytu z pliku, uprawnienie do zapisu do pliku oraz uprawnienie do wykonania pliku. Musisz mieć plik, aby zmodyfikować jego metadane¹.
Zezwolenie użytkownikowi, który może odczytać plik, aby udzielić innym uprawnień do odczytu, lub zezwolenie użytkownikowi, który może napisać plik, aby udzielić innym uprawnień do zapisu, nie zmieniłoby znacząco modelu bezpieczeństwa. Wynika to z faktu, że uprawnienia unix są uznaniowe: użytkownik, który może odczytać plik, może udostępnić jego zawartość innym użytkownikom, nawet jeśli ci inni użytkownicy nie byliby w stanie odczytać pliku (i podobnie do zapisu, użytkownik może działać jako serwer proxy i pisz w imieniu innych).
Z drugiej strony, zezwolenie użytkownikowi na udzielenie pozwolenia, którego nie ma, całkowicie zepsułoby system uprawnień: użytkownik mógłby udzielić sobie wszystkich uprawnień.
Bardzo rzadko trzeba zmieniać uprawnienia do pliku, którego nie jesteś właścicielem. Zwykle plik powinien mieć odpowiednie uprawnienia natychmiast po jego utworzeniu. Jeśli naprawdę tego potrzebujesz, możesz przyznać sudo chmod
prawa użytkownika do określonego trybu i określonego pliku (np joe: ALL = (ALL) chmod g+r /path/to/file
.).
¹ Z wyjątkiem czasów dostępu i modyfikacji, które są szczególne, ponieważ ustawia je także odczyt lub zapis do pliku.