Linuxでユーザーアカウント情報とログイン詳細を見つける11の方法


この記事では、Linuxシステム上のユーザーに関する情報を見つけるための11の便利な方法を紹介します。ここでは、ユーザーのアカウントの詳細を取得するコマンド、ログインの詳細を表示するコマンド、およびユーザーがシステム上で行っていることについて説明します。

Linuxにユーザーを追加する場合はuseraddユーティリティを使用し、作成済みのユーザーアカウントの属性を変更または変更する場合は、次のガイドで説明されているようにコマンドラインからusermodを使用します。

  1. 15 Useful Practical Examples on ‘useradd’ Command
  2. 15 Useful Practical Examples on ‘usermod’ Command

まず、ユーザーのアカウント情報を見つけるためのコマンドを調べ、次にログインの詳細を表示するためのコマンドの説明に進みます。

1. idコマンド

id は、実際の効果的なユーザーIDとグループIDを次のように表示するためのシンプルなコマンドラインユーティリティです。

$ id tecmint 

uid=1000(tecmint) gid=1000(tecmint) groups=1000(tecmint),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),130(sambashare)

2. groupsコマンド

グループコマンドは、このようにユーザーが属するすべてのグループを表示するために使用されます。

$ groups tecmint

tecmint : tecmint adm cdrom sudo dip plugdev lpadmin sambashare

指コマンド

ある[のコマンドは、Linux上のユーザーに関する情報を検索するために使用されます。多くのLinuxシステムにインストールされているわけではありません。

システムにインストールするには、端末でこのコマンドを実行してください。

$ sudo apt install finger	#Debian/Ubuntu 
$ sudo yum install finger	#RHEL/CentOS
$ sudo dnf install finger	#Fedora 22+

ユーザーの本名が表示されます。ホームディレクトリシェル;ログイン:名前、時間。そして、以下のようにもっとたくさん。

$ finger tecmint

Login: tecmint        			Name: TecMint
Directory: /home/tecmint            	Shell: /bin/bash
On since Fri Sep 22 10:39 (IST) on tty8 from :0
   2 hours 1 minute idle
No mail.
No Plan.

4. getentコマンド

ある[ getent は特定のシステムデータベースから Name Service Switch NSS )ライブラリからエントリを取得するためのコマンドラインユーティリティです。

ユーザーのアカウント情報を取得するには、次のようにパスワードデータベースとユーザー名を使用します。

$ getent passwd tecmint

tecmint:x:1000:1000:TecMint,,,:/home/tecmint:/bin/bash

5. grepコマンド

grepコマンドは、すべてではないにしてもほとんどのLinusシステムで利用可能な強力なパターン検索ツールです。これを使って、システムアカウントファイルから特定のユーザーに関する情報を見つけることができます。

$ grep -i tecmint /etc/passwd

tecmint:x:1000:1000:TecMint,,,:/home/tecmint:/bin/bash

6. lsloginsコマンド

lsloginsコマンドはシステム内の既知のユーザーに関する情報を表示し、 -u フラグはユーザーアカウントのみを表示します。

$ lslogins -u

UID USER       PROC PWD-LOCK PWD-DENY LAST-LOGIN GECOS
   0 root        144                              root
1000 tecmint      70                     10:39:07 TecMint,,,
1001 aaronkilik    0                              
1002 john          0                              John Doo

7. usersコマンド

users command は、現在システムにログインしているすべてのユーザーのユーザー名を表示します。

$ users

tecmint
aaron

8.誰が指揮する

whoコマンドは、接続している端末を含め、システムにログオンしているユーザーを表示するために使用されます。

$ who -u

tecmint  tty8         2017-09-22 10:39 02:09        2067 (:0)

9. wコマンド

wコマンドは、システムにログオンしているすべてのユーザーとそのユーザーの行動を表示します。

$ w

12:46:54 up  2:10,  1 user,  load average: 0.34, 0.44, 0.57
USER     TTY      FROM             [email protected]   IDLE   JCPU   PCPU WHAT
tecmint  tty8     :0               10:39    2:10m  4:43   0.46s cinnamon-sessio

10. lastまたはlastbコマンド

last/lastbコマンドは、システムに最後にログインしたユーザーのリストを表示します。

$ last 
OR
$ last -a   #show hostname on the last column

最後にログインしたユーザーの一覧

tecmint  tty8         Fri Sep 22 10:39    gone - no logout  :0
reboot   system boot  Fri Sep 22 10:36   still running      4.4.0-21-generic
tecmint  tty8         Thu Sep 21 10:44 - down   (06:56)     :0
reboot   system boot  Thu Sep 21 10:42 - 17:40  (06:58)     4.4.0-21-generic
tecmint  tty8         Wed Sep 20 10:19 - down   (06:50)     :0
reboot   system boot  Wed Sep 20 10:17 - 17:10  (06:52)     4.4.0-21-generic
tecmint  pts/14       Tue Sep 19 15:15 - 15:16  (00:00)     tmux(14160).%146
tecmint  pts/13       Tue Sep 19 15:15 - 15:16  (00:00)     tmux(14160).%145
...

指定した時間に出席していたすべてのユーザーを表示するには、次のように -p オプションを使用します。

$ last -ap now

tecmint  tty8         Fri Sep 22 10:39    gone - no logout  :0
reboot   system boot  Fri Sep 22 10:36   still running      4.4.0-21-generic

wtmp begins Fri Sep  1 16:23:02 2017

11. lastlogコマンド

lastlogコマンドは、次のように、すべてのユーザーまたは特定のユーザーの最近のログインの詳細を検索するために使用されます。

$ lastlog  
OR
$ lastlog -u tecmint 	#show lastlog records for specific user tecmint

最近ログインしたユーザーの記録

Username         Port     From             Latest
root                                       **Never logged in**
kernoops                                   **Never logged in**
pulse                                      **Never logged in**
rtkit                                      **Never logged in**
saned                                      **Never logged in**
usbmux                                     **Never logged in**
mdm                                        **Never logged in**
tecmint          pts/1    127.0.0.1        Fri Jan  6 16:50:22 +0530 2017
..

それでおしまい!ユーザーアカウントの詳細を表示するための他のコマンドライントリックまたはコマンドを知っている場合は、弊社と共有してください。

これらの関連記事はとても便利です。

  1. How to Manage Users and Groups in Linux
  2. How to Delete User Accounts with Home Directory in Linux
  3. 3 Ways to Change Default User Shell in Linux
  4. How to Block or Disable User Logins in Linux

この記事では、Linuxシステムでユーザーに関する情報とログインの詳細を見つけるためのさまざまな方法について説明しました。下記のフィードバックフォームから質問をしたり、考えを共有したりできます。