11月9日17:55:46 swi007 systemd-logind [927]:ユーザーswi007の新しいセッション27。
Ubuntuサーバーでアクティブなログインセッションのリストを表示し、サーバーで特定のセッションを閉じたいのですが。
現在のセッションのリストを取得するためのいくつかの選択肢があります。
コマンド who
-システム上のユーザーを表示します。
$ who
spas pts/1 2017-11-05 21:43 (tmux(1597).%0)
spas pts/14 2017-11-09 13:02 (192.168.100.110)
guest tty2 2017-11-09 16:15 (:1)
コマンド w
-現在マシンにいるユーザーに関する情報を表示します。
$ w
16:16:12 up 3 days, 18:33, 9 users, load average: 4,33, 2,79, 2,44
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
spas pts/1 tmux(1597).%0 нд21 3days 3days 3days tmux new-session -d -s my-tmux-session
spas pts/14 192.168.100.110 13:02 1.00s 0.29s 0.01s sshd: spas [priv]
guest tty2 :1 16:15 3days 1.27s 0.17s /sbin/upstart --user
コマンド last
lastb
-最後にログインしたユーザーの(履歴)リストを表示します。 --until
、--since
などの分析オプションはほとんどありません。
コマンド users
-現在のホストに現在ログインしているユーザーのユーザー名を出力します。使い方は本当に限られています:
$ users
guest spas spas
特定のセッションを強制終了するには、who -u
(またはwho -a
)を使用してプロセス番号を出力し、次にSudo kill -9 <session-process-number>
を使用できます。
$ who -u
spas pts/1 2017-11-05 21:43 old 1597 (tmux(1597).%0)
spas pts/14 2017-11-09 13:02 . 31822 (192.168.100.110)
guest tty2 2017-11-09 16:15 old 2225 (:1)
$ Sudo kill -9 2225 # this command will kill the third session from the above list
さらに、特定のユーザーのすべてのプロセスを強制終了できます( reference ):
Sudo pkill -9 -u <username>
こちらもご覧ください: