Zarządzanie grupami obejmuje tworzenie, modyfikowanie, kasowanie grup, przypisywanie użytkowników do grup i inne. Zbiór komend do zarządzania grupami jest częścią pakietu shadow-utils.
1 |
<span style="color: #3366ff;"># groupadd</span> <span style="color: #808080;"><em>[opcje]</em> nazwa_grupy</span> |
Komenda dodaje wpisy do pliku group i gshadow każdorazowo przy dodawaniu nowej grupy do systemu. Domyślne wartości dla komendy znajdują się w pliku login.defs.
Opcja | Opis |
-g (–gid) | Przypisuje grupie konkretny GID. |
-o (–non-unique) | Tworzy grupę współdzielącą GID istniejącej już grupy. Gdy dwie grupy współdzielą GID, członkowie tych grup mają identyczne prawa do plików należących do obu grup. Takie rozwiązanie stosuje się tylko w wyjątkowych sytuacjach. |
-r | Tworzy grupę z GID poniżej 1000. |
1 |
<span style="color: #3366ff;"># groupmod</span> <span style="color: #808080;"><em>[opcje]</em> nazwa_grupy</span> |
Modyfikuje atrybuty grupy. Składnia komendy bardzo podobna do groupadd. Dodatkową opcją jest tutaj -n, która pozwala na zmianę nazwy istniejącej grupy.
1 |
<span style="color: #3366ff;"># groupdel</span> <span style="color: #808080;"><em>[opcje]</em> nazwa_grupy</span> |
Kasuje grupę, usuwa wpisy z plików group i gshadow.
1 |
<span style="color: #3366ff;"># gpasswd</span> <span style="color: #808080;"><em>[opcje]</em> nazwa_grupy</span> |
Polecenie może być używane do dodawania administratorów grupy, dodawania i kasowania grup, przypisywania lub odwoływania haseł do grup a także do wyłączania dostępu do grupy przez komendę newgrp. Root może wykonywać wszystkie te czynności a administrator grupy tylko trzy ostatnie . Polecenie zmienia hasło grupy jeżeli jest wywołane przez roota lub administratora grupy. Aktualizuje plik group i gshadow. Domyślne wartości komenda bierze z pliku /etc/login.def.
Opcja | Opis |
-A (–administrators) | Dodaje jednego lub więcej administratorów grupy. Wprowadza wpis w trzecim polu pliku gshadow. |
-a (–add) | Dodaje członka grupy. Wprowadza wpis w czwartym polu pliku gshadow. |
-d (–delete) | Usuwa członkostwo użytkownika z grupy. |
-M (–members) | Ustawia listę członków grupy. |
-R (–restrict) | Wyłącza dostęp do grupy dla tych użytkowników, którzy nie są jej członkami. |
-r (–remove-password) | Unieważnia hasło przypisane grupie. Hasło grupy będzie puste. Tylko członkowie grupy będą mogli używać polecenia newgrp aby dołączyć do grupy. |
Ćwiczenie 1. Tworzenie, modyfikowanie i kasowanie grup.
Tworzymy grupę linuxadm z GID 5000:
1 |
# groupadd -g 5000 linuxadm |
Tworzymy grupę sales
współdzielącą GID z grupą linuxadm:
1 |
# groupadd -o -g 5000 sales |
Zmieniamy nazwę grupy sales na mgmt:
1 |
# groupmod -n mgmt sales |
Zmieniamy GID grupy linuxadm na 6000:
1 |
# groupmod -g 6000 linuxadm |
Dodajemy użytkownika user1 do grupy linuxadm zachowując członkostwo w jego starej grupie.
1 |
# usermod -a -G linuxadm user1 |
Weryfikujemy członkostwo w grupie dla użytkownika user1:
1 2 3 4 5 6 7 |
# id user1 uid=1000(user1) gid=1000(user1) groups=1000(user1),10(wheel),6000(linuxadm) # groups user1 user1 : user1 wheel linuxadm |
Kasujemy grupę mgmt:
1 |
# groupdel mgmt |
Ćwiczenie 2. Zarządzanie grupami komendą gpasswd.
Dodajemy użytkownika user1 i user2new jako administratorów grupy linuxadm:
1 |
# gpasswd -A user1,user2new linuxadm |
Dodajemy użytkownika user2new i user3 jako członków grupy linuxadm:
1 |
# gpasswd -a user2new -a user3 linuxadm |
Zakładamy konto użytkownika user4 z domyślnymi ustawieniami i przypisujemy mu hasło user123:
1 2 |
# useradd user4 # echo user123 | passwd --stdin user4 Changing password for user user4. passwd: all authentication tokens updated successfully. |
Zmieniamy członków grupy linuxadm: user2new i user3 na użytkownika user4:
1 |
# gpasswd -M user4 linuxadm |
Ustawiamy hasło dla grupy linuxadm:
1 |
</code># gpasswd linuxadm Changing the password for group linuxadm New Password: Re-enter new password: |
Logujemy się jako użytkownik user4 i uruchamiamy komendę groups żeby wyświetlić członkostwo w grupach dla użytkownika user4. Podstawowa grupa wyświetlana jest jako pierwsza:
1 2 |
$ groups user4 linuxadm |
Tymczasowo zmieniamy podstawową grupę dla użytkownika user4 na linuxadm:
1 |
$ newgrp linuxadm |
Weryfikujemy nowe podstawowe członkostwo w grupie dla użytkownika user4. Powinno wyświetlić się jako pierwsze:
1 2 |
$ groups linuxadm user4 |
Wracamy do oryginalnej podstawowej grupy wydając komendę exit lub wciskając klawisz Ctrl+d, i weryfikujemy:
1 2 3 |
$ exit exit $ groups user4 linuxadm |