그룹에 자신을 추가하면 새로 시작된 프로세스에만 적용됩니다. 실제로는 그보다 더 제한적입니다. 새 로그인에서만 작동하는 것 같습니다. 정확한 메커니즘이 무엇인지는 모르겠지만 그것은 내 질문이 아닙니다(나도 그것에 대해 궁금하긴 하지만).
내 질문은: 내 그룹 멤버십을 업데이트할 수 있습니까?현재 쉘 프로세스에서?
나는 대답이 '아니요'라고 생각합니다.
예(직접 복사하여 붙여넣는 것이 아닙니다):
$ groups ; groups kst
kst oldgroup1 oldgroup2
kst : kst oldgroup1 oldgroup2
$ sudo adduser kst newgroup
[sudo] password for kst:
Adding user `kst' to group `newgroup' ...
Adding user kst to group newgroup
Done.
$ groups ; groups kst
kst oldgroup1 oldgroup2
kst : kst oldgroup1 oldgroup2 newgroup
$
이후 adduser
내 계정은 의 회원이지만 newgroup
현재 쉘 프로세스에는 해당 멤버십이 반영되지 않습니다.
가장 확실한 해결책은 로그아웃했다가 다시 로그인하는 것이지만, 이는 불편합니다.