UNIXユーザーがメンバーになっているグループを一覧表示するにはどうすればよいですか?


79

pts m groupname私は、グループ内のユーザーを一覧表示することができます。どうすれば反対のことができます-つまり、ユーザーがメンバーであるすべてのグループをリストしますか?

(メンバーであるユーザーを知っているグループの名前を見つけるためにこれが必要ですが、グループ名はわかりません...)

明確化:
この質問は、私がシステム管理者ではなく、root権限を持っていないという事実によって複雑になっています。その代わりに、私はシステムの小さな部分を管理する「モデレーター」のグループの一員です。具体的には、大学の中央ITシステムの学生組合の物理部門です。

ブランチ内には、物事を担当する人々のためのさまざまなアクセスグループがあります。この場合、何かを担当する2人のうちの1人(何でも構いません)が交換されました。他のユーザーを調べて、交換を許可するアクセス権を見つけようとしていました。

フォルダーを調べて誰がアクセスできるかを確認し、リストからグループを選択することで、当面の問題(新しい男がフォルダーにアクセスできない)を解決できるようになりました。ただし、このユーザーが持つべきではない、私が知らない特権がさらにある可能性があります。そのため、この質問はそれほど深刻ではありませんが、依然として私に関連しています。

回答:


105

groups次のコマンドも使用できます。

[root @ ftp〜]#グループルート
ルート:ルートbinデーモンsys admディスクホイール

他のすべてが失敗した場合、古き良きもありますgrep

[root @ ftp〜]#grep root / etc / group
root:x:0:root
bin:x:1:root、bin、daemon
daemon:x:2:root、bin、daemon
sys:x:3:root、bin、adm
adm:x:4:root、adm、daemon
disk:x:6:root
wheel:x:10:root、admin

1
grep ^root: /etc/groupより良いかもしれません。
デニスウィリアムソン

いいえ、それはルートがおそらくawkのメンバーであるグループの1つだけをリストしているため、そうではありません:) grep root / etc / group | awk -F: '{print $ 1}'
matthias krull

3
/ etc / groupを調べるのはいいように思えますが、システムが集中ディレクトリ(NIS、LDAP、ActiveDirectory 、?)を使用している場合、そこにグループの完全なリストはありません。そのファイルにはローカルグループ定義のみが含まれます。
Slartibartfast

コマンドgroups kczは私usrにだけを与えますが、このユーザーはのグループのメンバーであることは知っていますfkm。何が欠けている?
トマスAschan

/etc/groupわかりませんが、@ Tomasを貼り付けてください。
ジョンT

28
$ id [username]

$: Command not found」。
トマスAschan

8
$コマンド・プロンプトを表します。で入力を開始しますid
s落者

それでも私に多くを与えてくれない:uid=[five digits](kcz) gid=30(usr)
トマスアスチャン

uid = gid = groups =と表示されているため、3番目に取得するのは、ユーザーが属するグループのリストです。
MKJ

6

それを見つけました-後で、しかし私はしました!=)

同じように

$>pts m [group name]

グループ内のすべてのメンバーをリストします。

$>pts m [user name]

ユーザーがメンバーになっているすべてのグループをリストします。それはあまりにも簡単でした:P


3
ptsは標準コマンドではありません。
user2284570

1
@ user2284570:おそらくそうではありません。しかし、この質問が関係しているのは、質問の中で明確に述べられていました(実際、最初の事柄であり、構文が強調されています)pts
トマスアシャン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.