如何查看Linux中的登录用户
在本教程中,将介绍列出Linux中已登录用户的各种方法。
查看Linux上已登录的用户的4个命令
几乎所有这些命令都依赖于存储在/var或者/proc目录中的数据。
如果我们对Linux中的目录结构有所了解,就会知道这两个目录包含有关系统上正在运行的进程的数据。
1.使用w命令查看Linux中已登录的用户
只需在终端中键入一个字母命令,它将显示Linux中当前登录的用户。
w
这是w命令的输出:
Hyman@theitroad:~$w 09:54:54 up 26 min, 3 users, load average: 0.00, 0.00, 0.00 USER TTY FROM Hyman@theitroad IDLE JCPU PCPU WHAT root pts/0 202.91.87.114 09:37 21.00s 0.00s 0.00s -bash abhi pts/1 202.91.87.114 09:47 0.00s 0.00s 0.00s w rohini pts/2 157.43.53.142 09:48 6:13 0.00s 0.00s -bash
让我解释一下w命令输出中的一些术语。
在其他命令中也将使用相同的术语。
TTY为我们提供有关用于登录的终端的信息。
pts表示伪终端从站,它指示用户通过SSH连接登录。
它显示了用户计算机的IP地址,登录时间。
我们还可以看到用户闲置了多长时间(工作闲暇?
:D)。
JCPU是连接到TTY的所有进程使用的时间,而PCPU是用户正在运行的当前进程使用的时间。
我们可以在WHAT列下看到此当前过程。
2.检查谁使用who命令登录
谁命令是另一个简单的命令。
只需输入who,它将显示当前登录到Linux系统的用户。
who
我们还可以查看登录时间和已登录用户的IP地址。
Hyman@theitroad:~$who root pts/0 Aug 6 09:37 (202.91.87.114) abhi pts/1 Aug 6 09:47 (202.91.87.114) rohini pts/2 Aug 6 09:48 (157.43.53.142)
3.只需使用users命令登录用户
到目前为止,我们所看到的所有命令都为我们提供了有关已登录用户的许多信息。
如果我们正在处理脚本,并且只想知道已登录用户的名称,则解析这些命令的输出将是一项另外的且有些复杂的任务。
这是users命令可以为我们提供帮助的地方。
该命令仅输出已登录的用户,没有其他输出。
Hyman@theitroad:~$users abhi rohini root
4.使用finger命令查看已登录的用户
我们可能需要首先安装finger命令,因为并非所有Linux发行版都默认安装了该命令。
它在Ubuntu的Universe存储库中可用,我们可以使用以下命令进行安装:
sudo apt install finger
安装完成后,只需在终端中输入finger:
finger
我们会看到谁在Linux系统上登录。
Hyman@theitroad:~$finger Login Name Tty Idle Login Time Office Office Phone abhi igi pts/1 Aug 6 09:47 (202.91.87.114) rohini Rohini Rachita pts/2 13 Aug 6 09:48 (157.43.53.142) root root *pts/0 Aug 6 09:37 (202.91.87.114)
温馨提示:查看自上次重启后谁登录了系统
到目前为止,我们所看到的是有关当前登录用户的信息。
我们如何知道用户是否注销?
Linux中的last命令为我们提供有关自上次重新引导以来登录到系统的所有用户的信息。
它还将显示已注销用户的登录和注销时间。
last
我相信这是最后一条命令的输出,这是不言自明的。
Hyman@theitroad:~$last rohini pts/3 157.43.53.142 Tue Aug 6 10:05 - 10:05 (00:00) rohini pts/2 157.43.53.142 Tue Aug 6 09:48 still logged in abhi pts/1 202.91.87.114 Tue Aug 6 09:47 still logged in root pts/0 202.91.87.114 Tue Aug 6 09:37 still logged in reboot system boot 4.15.0-52-generi Tue Aug 6 09:28 still running wtmp begins Tue Aug 6 09:28:43 2019