Odśwież dodatkowe członkostwo w grupach bez ponownego logowania?


12

Z mojego zrozumienia, sesja Linuksa buforuje członkostwa w grupach przy logowaniu. Następnie, jeśli zostanie dodane nowe członkostwo w grupie (np. Za pomocą adduser someuser somegroup), użytkownik musi się wylogować i zalogować ponownie, aby móc skorzystać z nowego członkostwa.

Moje pytanie brzmi: czy jest jakiś sposób na odświeżenie członkostwa w grupie w toku, bez konieczności ponownego logowania, wychodzenia z bieżącego procesu lub rozpoczynania nowego?

Odpowiedzi:


9

Możesz rozpocząć nowe logowanie z sesji

$ su - your_login

Nie wpływa na twój proces uruchamiania. Jeśli używasz Xservera, możesz uruchomić xterm i wpisać to polecenie (wpływa tylko na tę sesję terminalową). Jedynym sposobem na utrwalenie jej jest zakończenie sesji i rozpoczęcie jej od nowa


Jeśli zezwalasz tylko na uwierzytelnianie klucza publicznego na swoim serwerze, musisz zaimportować tajny klucz?
Cyril Duchon-Doris


2

Inni wspominali „ su - $USER” i „ newgrp”, i pomyślałem, że powinienem wspomnieć, że powinieneś także spojrzeć na „ sg”.


2

Możesz to zrobić:

exec su -l $USER

To domyślnie odświeża listę grup bez konieczności wychodzenia z terminala.


1

Możesz użyć gpasswddo natychmiastowej zmiany:

gpasswd -a someuser somegroup

Nie ma potrzeby tworzenia nowej powłoki lub ponownego logowania. Następnie sprawdź członkostwo grupy, używając getent:

getent group somegroup

Tworzysz grupę, a następnie wyszukujesz tę grupę. Nie ma to nic wspólnego z omawianym pytaniem - zmiana nie obowiązuje w bieżącej sesji.
Str.

0

Co z tym (chociaż spełnia to tylko wymóg, że nie będziesz musiał ponownie logować się)

exec /bin/bash -l

Flaga -l założy nową powłokę logowania, a exec zastąpi bieżącą powłokę nową. BTW, nie wpisuj błędnie nazwy powłoki :-)

Jednym z problemów z użyciem newgrp i su, jak sugerowano wcześniej, jest utworzenie nowej podpowłoki. Tak, możesz poprzedzić je również poleceniem exec.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.