Jaka jest różnica między grupą podstawową a grupą drugorzędną w Ubuntu?

21

Jaka jest różnica między grupą podstawową a grupą drugorzędną w Ubuntu?

Nematullah Tanin
źródło
Dodaj więcej kontekstu do swojego pytania. O które grupy pytasz?
aquaherd

Odpowiedzi:

15

Grupą podstawową jest grupa stosowana do Ciebie podczas logowania przy użyciu zwykłych metod (TTY, GUI, SSH itp.).

Ponieważ procesy zwykle dziedziczą grupę rodzica, a początkowy proces lub powłoka miałaby twoją grupę podstawową jako grupę, wszystko, co robisz, zwykle ma wpływ na grupę podstawową (na przykład tworzenie plików).

Grupy drugorzędne to grupy, w których można rozpocząć procesy bez użycia hasła grupy, za pomocą sglub do zalogowania się za pomocą newgrppolecenia.

Więc jeśli masz grupę podstawową xi grupę drugorzędną y,

touch foo

zwykle tworzy plik xjako właściciel grupy (chyba że katalog nadrzędny to SETGID dla innej grupy). Możesz jednak:

sg y 'touch bar'
# or
newgrp y
touch baz

Następnie bari bazzostanie utworzony yjako jako grupa.

Jeśli jednak nie masz grupy w grupach drugorzędnych (powiedzmy z), polecenia sgi newgroupbędą pytać o hasło grupy, jeśli ich użyjesz z.

muru
źródło
4

Jeśli mówisz o grupach systemów plików, są one dość dobrze wyjaśnione w tym artykule o cyberciti . Grupa podstawowa jest domyślnie używana podczas tworzenia nowego pliku. Możesz to przetestować

touch foo
ls -la foo

Plik będzie Twoją własnością i będzie w twojej grupie podstawowej. Użytkownicy, którzy również należą do twojej grupy podstawowej, będą mieli uprawnienia na poziomie grupy do tych plików.

Możesz sprawdzić swoje grupy drugorzędne za pomocą

groups $(whoami)

Możliwe jest także udostępnianie plików osobom spoza twojej grupy podstawowej poprzez ustawienie Ustaw identyfikator grupy w katalogu. Wyjaśniono to tutaj: folder współdzielony z SetGID .

Eero Aaltonen
źródło