再度ログインせずに補足グループメンバーシップを更新しますか?


12

私の理解では、Linuxセッションはログイン時にグループメンバーシップをキャッシュします。次に、新しいグループメンバーシップが追加された場合(たとえば、adduser someuser somegroup)、ユーザーは新しいメンバーシップを利用できるようにログアウトしてから再度ログインする必要があります。

私の質問は、インプロセス、再ログイン、現在のプロセスの終了、または新しいプロセスの開始なしで、グループメンバーシップを更新する方法はありますか?

回答:


9

セッションから新しいログインを開始できます

$ su - your_login

実行中のプロセスには影響しません。Xserverを使用している場合は、xtermを起動してこのコマンドを入力できます(このターミナルセッションのみに影響します)。


サーバーへの公開鍵認証のみを許可する場合は、秘密鍵をインポートする必要がありますか?
シリルデュションドリス


2

他の人が「su - $USER」と「newgrp」に言及していますが、「sg」も見るべきだと言うべきだと思いました。


1

gpasswd即時変更に使用できます:

gpasswd -a someuser somegroup

新しいシェルを作成したり、再ログインしたりする必要はありません。その後、次を使用してグループメンバーシップを確認しgetentます。

getent group somegroup

グループを作成してから、そのグループを検索しています。これは、説明した質問とは関係ありません。変更は現在のセッションでは有効ではありません。
Str。


0

これについてはどうでしょう(ただし、再ログインする必要がないという要件を満たしているだけです)

exec /bin/bash -l

-lフラグは新しいログインシェルを想定し、execは現在のシェルをその新しいシェルに置き換えます。ところで、シェルの名前を間違えないでください:-)

前に提案したnewgrpとsuの使用に関する1つの問題は、新しいサブシェルが作成されることです。はい、execコマンドを使用してそれらに先行することもできます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.