Linux服务器系统管理员应注意谁当前登录到Linux系统以及他们在做什么。我们已经知道如何在Linux中查找最后登录的用户。您如何确定当前谁在您的Linux系统上登录以及他们在做什么?简单!本教程列出了各种方法来查找Linux服务器中当前登录的用户。
1.使用w命令查找Linux服务器中当前登录的用户
在Linux服务器系统中,有一个特殊的单字母命令w,该命令可帮助您查找谁已登录以及他们在系统中正在做什么。这是最常用的命令行工具,用于显示有关服务器上当前用户及其进程的信息。
当你在管理一个经常被许多用户访问的Linux服务器时,w命令往往很有用。你可以跟踪所有的用户,而不需要安装任何额外的工具或应用程序。
该w命令显示了各种有用的详细信息,包括以下内容:
当前时间
系统已运行多长时间,
当前有多少用户登录,
以及过去1、5和15分钟的平均系统负载。
该w命令从/var/run/utmp文件中获取有关当前登录者的信息,并从文件中检索过程信息/proc。
现在,让我们看看如何使用w命令来显示谁在您的Linux服务器上登录以及他们在做什么。
w命令的典型用法是:
$ w [options] user
当您运行不带任何选项的w命令时,它将显示Linux系统中所有当前登录的用户:
$ w
在输出中可以看到,当前用户登录到我的Ubuntu服务器。该w命令为单个用户显示以下详细信息:
登录名,
tty名称,
用户登录的源IP地址,
登录时间,
空闲时间,
JCPU时间(附加到tty的所有进程使用的时间),
PCPU时间(当前进程使用的时间),
以及他们当前进程的命令行。
如果要显示特定登录用户(例如a5idc)的详细信息,则命令为:
$ w a5idc
您可以使用以下-h选项从输出中省略标题:
$ w -h
您还可以”FROM”使用以下-i 选项在(远程主机名)字段中显示IP地址而不是主机名 :
$ w -i
您可能不想打印所有详细信息。如果是这样,您可以使用-s(–short)选项排除登录时间,JCPU或PCPU时间:
$ w -s
有关更多详细信息,请查看手册页:
$ man w
或者,请参阅帮助部分:
$ w –help
2.使用who命令显示所有已登录的用户
该who命令是另一个命令行工具,用于显示有关当前登录Linux服务器的用户的信息。
如果运行who不带任何选项的命令,它将显示所有登录的用户:
$ who
在输出中看到的,who命令显示了用户名,进行会话的终端设备的类型(例如,tty或pts),引导时间以及用户从中登录的源IP地址。
您可以使用以下grep命令过滤特定用户的详细信息:
$ who | grep a5idc
上面的命令将查找给定的用户a5idc是否登录。
如果只想显示当前终端会话的信息,请运行:
$ who am i
请注意单词之间的空格。如果执行上面的命令而没有任何空格,它将仅显示用户名:
$ whoami
该who命令还有其他几个选项可用于获取自定义输出。
例如,您可以使用-aflag显示当前登录的所有可用信息:
$ who -a
要显示带有列标题的所有可用信息,请使用-H标志:
$ who -a -H
有关更多详细信息,请使用以下任一命令参考who命令的手册页和帮助部分:
$ man who
$ who –help
3.使用users命令打印登录的用户
该users命令显示当前登录到当前主机系统的用户的用户名。
要显示Linux服务器中所有已登录用户的列表,请运行:
$ users
a5idc sk
要获取帮助,请运行以下任一命令:
$ man users
$ users –help
4.使用last命令查看登录的用户
该last命令通常显示自/var/log/wtmp 文件创建以来已登录和退出Linux服务器的所有用户 。
$ last
当前登录的用户列表显示在顶部。
如需帮助,请参见手册页或使用–help选项:
$ man last
$ last –help
5.使用id命令查找谁登录了Linux系统
该id命令用于打印指定USER或省略USER时当前用户的用户和组信息。
要在当前会话中打印当前登录的用户,请运行id带有-un选项的命令:
$ id -un
a5idc
这与whoami命令相同。
要获得帮助,请执行以下操作:
$ man id
$ id –help
大多数Linux发行版默认都提供上述所有工具。还有另一种命令行工具可用于查找谁在Linux系统中登录。它不是默认安装的,但是在大多数Linux发行版的默认存储库中可用。
6.使用finger命令列出已登录的用户
Finger是命令行用户信息查找实用程序。它显示用户的登录名,真实姓名,终端名称和写入状态,空闲时间,登录时间,办公室位置和办公室电话号码等。
在某些Linux发行版中,默认情况下未安装finger程序。您可以使用如下所示的apt软件包管理器在Debian,Ubuntu系统中安装finger:
$ sudo apt install finger
安装完成后,运行finger命令在Linux系统中查找已登录的用户:
$ finger
显示有关特定用户的信息:
$ finger a5idc
这些是在Linux系统中查找当前登录用户的几种方法。知道谁已登录并找到他们在系统中正在做什么,将有助于排除故障,我希望上述方法能对您有所帮助。