web-dev-qa-db-ja.com

すべてのユーザーの詳細を取得する方法

コマンドラインから目的のユーザーからグループ、権限、シェルなどを取得するにはどうすればよいですか?

各ユーザーのすべての基本データを取得するツールはありますか?

1

このための単一の統一されたコマンドはないと思います。

ほとんどの場合、 finger コマンドを使用できます。

$ finger $USER
Login: root                             Name: root
Directory: /root                        Shell: /bin/bash
On since Thu Jan 15 13:46 (IST) on tty1    19 days 18 hours idle
Last login Tue Feb  3 20:55 (IST) on pts/5 from localhost
No mail.
No Plan.

ユーザー名、ホームディレクトリ、シェル、未読メールの数、最後のログインの詳細が表示されます。

グループを一覧表示するには、 groups または id のいずれかを実行します。

$ groups
muru adm cdrom Sudo dip plugdev lpadmin sambashare debian-tor libvirtd autopilot socks
$ id 
uid=1000(muru) gid=1000(muru) groups=1000(muru),4(adm),24(cdrom),27(Sudo),30(dip),46(plugdev),108(lpadmin),124(sambashare),127(debian-tor),132(libvirtd),136(autopilot),999(socks)

もちろん、パーミッションはその目的に依存します。 Sudoの場合、Sudo -lを使用します。

$ Sudo -l
[Sudo] password for muru: 
Matching Defaults entries for muru on ica:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin

User muru may run the following commands on ica:
    (ALL : ALL) ALL

PolKitの方がずっと難しいので、pkcheckは個々のプロセスが特権を使用できるかどうかを評価できますが、すべての権限をリストする方法を理解できませんでした。

3
muru