
Ich habe die su
ausführbare Datei mit den folgenden Berechtigungen:
bash-4.2# ls -la /bin/su
-rws--s--- 1 root wheel 59930 Sep 14 2012 ./su
Wenn ich als Benutzer und nicht als Mitglied der Gruppe angemeldet bin wheel
und versuche, auszuführen su
, erhalte ich eine Fehlermeldung. Die ist korrekt:
bash-4.2$ su
bash: /bin/su: Permission denied
Danach füge ich diesen Benutzer zur wheel
Gruppe hinzu von root
:
bash-4.2# usermod -a -G wheel user
Aber für die gleiche Terminalsitzung kann ich immer noch nicht Folgendes ausführen su
:
bash-4.2$ su
bash: /bin/su: Permission denied
Für die neuen Sitzungen kann ich ausführen su
. Wie kann ich die sofortige Ausführung zulassen, su
nachdem ich den Benutzer zur entsprechenden Gruppe hinzugefügt habe?
Antwort1
Lassen Sie den Benutzer einfach ausführen
newgrp wheel
Dies startet eine neue Shell mit der geänderten Gruppen-ID wheel
. Wenn Sie eine neue Shell starten und die vorherige beenden möchten, verwenden Sie
exec newgrp wheel
stattdessen.
Dies liegt daran, dass der Kernel immer noch über das vorherige Gruppenset verfügt, das mit den aktuell ausgeführten Prozessen verknüpft ist.