Właściciel pliku musi należeć do grupy plików?

21

Mam dość uproszczone rozumienie uprawnień do plików w systemach * nix. Rozumiem, że istnieje właściciel pliku i grupa plików, ale czy istnieje twarda i szybka reguła określająca, czy wspomniany właściciel pliku musi również należeć do grupy plików? Innymi słowy, czy plik może należeć do grupy, której właściciel nie jest częścią?

Jeśli tak (a jeśli nie), dlaczego? Chciałbym zwiększyć moje zrozumienie ... Nie mogę znaleźć niczego, co konkretnie mówi o tym na interwebach ... Jestem również otwarty na dobre lektury na ten temat.

użytkownik1766760
źródło

Odpowiedzi:

27

Nie, właściciel pliku nie musi należeć do grupy tego pliku. Nie ma mechanizmu sprawdzania lub egzekwowania tego. Ponadto użytkownik może jednocześnie należeć do grupy, a następnie zostać usunięty; nic nie przejdzie przez system plików w celu wyszukania plików, które byłyby w konflikcie.

Zasadniczo metadane właściciela i grupy pliku znajdują się na dysku i nie mają żadnych zewnętrznych linków. (Styczna: jest przechowywana według numerycznego identyfikatora użytkownika i identyfikatora grupy, które są rozwiązywane przez system na żądanie).

Jednocześnie używany jest tylko jeden zestaw uprawnień naraz - jeśli jesteś właścicielem, sprawdzane są tylko uprawnienia właściciela, a uprawnienia grupy nie mają znaczenia. Jeśli nie jesteś właścicielem, ale należysz do grupy, używane są uprawnienia grupy. Wreszcie, jeśli nie należysz do grupy ani właściciela, używane są „inne” uprawnienia. Jeśli jesteś zarówno właściciel pliku i grupy pliku, bity grupy nie mają znaczenia.

mattdm
źródło
Dzięki za odpowiedź. To potwierdza moje przeczucie ... Po prostu miałem wrażenie, że właściciel przebija grupę, ale natknąłem się na tę „praktyczną zasadę” w pracy. Zgadnij, to tylko jedna z tych małp. Zobacz, małpa.
user1766760
2
Czy mówisz, że jeśli jestem właścicielem pliku i należę do grupy, która go „posiada”, a grupa ma uprawnienia do pisania i wykonywania, a ja mam tylko uprawnienia do odczytu, to uprawnienia grupy zostaną zignorowane dla mnie?
iconoclast
2
@iconoclast To prawda. Utwórz plik i wpisz w nim „Witaj świecie”. Ma własność użytkownika i grupy. Następnie zrób chmod 460na nim i spróbuj go edytować. Wydaje mi się, że gdzieś go przeczytałem, ale termin używany jest taki, że uprawnienia użytkownika i grupy w pliku Unix są oddzielone .
unxnut