Linuxシステム管理者は、現在Linuxシステムにログインしているユーザーとそのユーザーが何をしているのかを監視する必要があります。 最後にログインしたユーザーを見つける方法はすでに知っていました Linuxでは。現在Linuxシステムにログオンしているのは誰か、そして彼らが何をしているのかをどのように特定しますか?簡単!このチュートリアルでは、Linuxで現在ログインしているユーザーを見つけるためのさまざまな方法を示します。
1。 wを使用して、Linuxで現在ログインしているユーザーを検索します コマンド
Linuxオペレーティングシステムには、w これは、誰がログオンしていて、システムで何をしているのかを見つけるのに役立ちます。これは、現在サーバー上にいるユーザーとそのプロセスに関する情報を表示するために最も一般的に使用されるコマンドラインツールです。
w このコマンドは、多くのユーザーが頻繁にアクセスするLinuxサーバーを管理している場合に便利です。追加のツールやアプリケーションをインストールしなくても、それらすべてを追跡できます。
w コマンドは、以下を含むさまざまな有用な詳細を表示します:
- 現在の時刻
- システムの稼働時間
- 現在ログオンしているユーザーの数
- 過去1、5、および15分間のシステム負荷の平均。
w コマンドは、/var/run/utmpから現在ログオンしているユーザーに関する情報を取得します ファイルを作成し、/procからプロセス情報を取得します ファイル。
次に、wの使用方法を見てみましょう。 Linuxマシンにログインしているユーザーとそのユーザーが何をしているかを表示するコマンド。
wの一般的な使用法 コマンドは次のとおりです:
$ w [options] user オプションを指定せずにwコマンドを実行すると、Linuxシステムに現在ログインしているすべてのユーザーが表示されます。
$ w 出力例:
08:42:30 up 28 min, 2 users, load average: 1.30, 0.87, 0.45
USER TTY FROM [email protected] IDLE JCPU PCPU WHAT
sk tty1 - 08:41 42.00s 0.10s 0.06s -bash
ostechni pts/1 192.168.225.37 08:42 6.00s 0.09s 0.01s w
上記の出力からわかるように、現在2人のユーザーがいます( sk およびostechni )Ubuntuサーバーにログインしました。 w コマンドは、個々のユーザーについて次の詳細を表示します。
- ログイン名
- ttyの名前
- ユーザーがログインしたソースIPアドレス
- ログイン時間、
- アイドル時間、
- JCPU時間(ttyに接続されているすべてのプロセスで使用される時間)
- PCPU時間(現在のプロセスで使用されている時間)、
- および現在のプロセスのコマンドライン。
ログインしている特定のユーザー(ostechnixなど)の詳細を表示する場合、コマンドは次のようになります。
$ w ostechnix
08:51:36 up 37 min, 2 users, load average: 1.12, 1.06, 0.76
USER TTY FROM [email protected] IDLE JCPU PCPU WHAT
ostechni pts/1 192.168.225.37 08:42 0.00s 0.09s 0.01s w ostech
-hを使用して、出力からヘッダーを省略できます。 オプション:
$ w -h
sk tty1 - 08:41 16:13 0.10s 0.06s -bash
ostechni pts/1 192.168.225.37 08:42 1.00s 0.09s 0.01s w -h
"FROM"のホスト名の代わりにIPアドレスを表示することもできます (リモートホスト名)-iを使用するフィールド オプション:
$ w -i
すべての詳細を印刷したくない場合があります。その場合、-sを使用して、ログイン時間、JCPUまたはPCPU時間を除外できます。 (--short )オプション:
$ w -s
09:02:50 up 48 min, 2 users, load average: 0.31, 0.79, 0.84
USER TTY FROM IDLE WHAT
sk tty1 - 21:02 -bash
ostechni pts/1 192.168.225.37 1.00s w -s 詳細については、マニュアルページを確認してください:
$ man w または、ヘルプセクションを参照してください:
$ w --help
Usage:
w [options]
Options:
-h, --no-header do not print header
-u, --no-current ignore current process username
-s, --short short format
-f, --from show remote hostname field
-o, --old-style old style output
-i, --ip-addr display IP address instead of hostname (if possible)
--help display this help and exit
-V, --version output version information and exit
For more details see w(1). 2。 whoを使用してログインしているすべてのユーザーを表示します コマンド
who commandは、現在Linuxマシンにログインしているユーザーに関する情報を表示するためのさらに別のコマンドラインツールです。
whoを実行する場合 オプションを指定せずにコマンドを実行すると、ログインしているすべてのユーザーが表示されます:
$ who 出力例:
sk tty1 2021-01-12 08:41
ostechnix pts/1 2021-01-12 08:42 (192.168.225.37)
上記の出力にあるように、who コマンドは、ユーザー名と端末デバイスのタイプを表示します(例:tty またはpts )セッションが行われた場所、起動時間、およびユーザーがログインした送信元IPアドレス。
grepを使用して、特定のユーザーの詳細をフィルタリングできます コマンド:
$ who | grep ostechnix
ostechnix pts/1 2021-01-12 08:42 (192.168.225.37) 上記のコマンドは、指定されたユーザーが ostechnixであるかどうかを検出します ログインしているかどうか。
現在のターミナルセッションの情報のみを表示する場合は、次のコマンドを実行します。
$ who am i
ostechnix pts/1 2021-01-12 08:42 (192.168.225.37) 単語間のスペースに注意してください。上記のコマンドをスペースなしで実行すると、ユーザー名のみが表示されます:
$ whoami
ostechnix
who コマンドには、カスタマイズされた出力を取得するための他のオプションがいくつかあります。
たとえば、-aを使用して、現在のログインで利用可能なすべての情報を表示できます。 フラグ:
$ who -a 出力例:
system boot 2021-01-12 08:14
sk - tty1 2021-01-12 08:41 00:59 1463
run-level 5 2021-01-12 08:15
ostechnix + pts/1 2021-01-12 08:42 . 1477 (192.168.225.37)
LOGIN tty6 2021-01-12 08:41 1366 id=tty6
利用可能なすべての情報を列ヘッダーで表示するには、-Hを使用します フラグ:
$ who -a -H
NAME LINE TIME IDLE PID COMMENT EXIT
system boot 2021-01-12 08:14
sk - tty1 2021-01-12 08:41 00:59 1463
run-level 5 2021-01-12 08:15
ostechnix + pts/1 2021-01-12 08:42 . 1477 (192.168.225.37)
LOGIN tty6 2021-01-12 08:41 1366 id=tty6 詳細については、次のコマンドのいずれかを使用してコマンドを実行する人のマニュアルページとヘルプセクションを参照してください。
$ man who $ who --help 3。ログインしたユーザーをusersで印刷する コマンド
users コマンドは、現在のホストシステムに現在ログインしているユーザーのユーザー名を出力します。
Linuxマシンにログインしているすべてのユーザーのリストを表示するには、次のコマンドを実行します。
$ users
ostechnix sk ヘルプが必要な場合は、次のコマンドのいずれかを実行してください。
$ man users $ users --help 4。 lastでログインしたユーザーを表示する コマンド
last コマンドは通常、/var/log/wtmp以降にLinuxマシンにログインおよびログアウトしたことのあるすべてのユーザーを表示します。 ファイルが作成されました。
$ last 現在ログインしているユーザーのリストが上部に表示されます。
ostechni pts/1 192.168.225.37 Tue Jan 12 08:42 still logged in
sk tty1 Tue Jan 12 08:41 still logged in
ostechni tty1 Tue Jan 12 08:41 - 08:41 (00:00)
sk pts/1 192.168.225.37 Tue Jan 12 08:41 - 08:41 (00:00)
[...]
ヘルプについては、マニュアルページを参照するか、--helpを使用してください。 オプション:
$ man last $ last --help 5。 idコマンドを使用してLinuxシステムにログインしているユーザーを検索します
id コマンドは、指定されたUSER、またはUSERが省略されている場合は現在のユーザーのユーザーおよびグループ情報を出力するために使用されます。
現在のセッションで現在ログインしているユーザーを印刷するには、idを実行します -unを使用したコマンド オプション:
$ id -un
ostechnix
これはwhoamiと同じです コマンド。
ヘルプが必要な場合は、次のようにします。
$ man id $ id --help 前述のツールはすべて、ほとんどのLinuxディストリビューションでデフォルトで使用できます。 Linuxシステムにログインしているユーザーを見つけるために使用できるコマンドラインツールがもう1つあります。デフォルトではインストールされませんが、ほとんどのLinuxディストリビューションのデフォルトのリポジトリで利用できます。
6。指コマンドでログインしているユーザーを一覧表示する
指 コマンドラインユーザー情報検索ユーティリティです。ユーザーのログイン名、本名、端末名と書き込みステータス、アイドル時間、ログイン時間、オフィスの場所、オフィスの電話番号などが表示されます。
一部のLinuxディストリビューションでは、fingerプログラムはデフォルトでインストールされません。以下のようなaptパッケージマネージャーを使用して、Debian、Ubuntuシステムにfingerをインストールできます。
$ sudo apt install finger インストールしたら、fingerコマンドを実行して、Linuxシステムにログインしているユーザーを検索します。
$ finger 出力例:
Login Name Tty Idle Login Time Office Office Phone
ostechnix ostechnix pts/1 Jan 12 08:42 (192.168.225.37)
sk *tty1 3:17 Jan 12 08:41 特定のユーザーに関する情報を表示する:
$ finger ostechnix 出力例:
Login: ostechnix Name: ostechnix
Directory: /home/ostechnix Shell: /bin/bash
On since Tue Jan 12 08:42 (UTC) on pts/1 from 192.168.225.37
2 seconds idle
No mail.
No Plan. これらは、Linuxシステムで現在ログインしているユーザーを見つけるためのいくつかの方法です。誰がログインしているかを知り、システムで何をしているかを見つけることは、トラブルシューティング時に役立ちます。前述の方法のいずれかがお役に立てば幸いです。
関連記事:
- Linuxですべてのユーザーを一覧表示する方法
- Linuxでユーザーアクティビティを監視する方法
- Linuxシステムへのユーザーのアクセスを制限する方法