12.25 Linux查看登陆用户信息(w和who命令)

简介: Linux 中,使用 w 或 who 命令都可以查看服务器上目前已登录的用户信息,两者的区别在于,w 命令除了能知道目前已登陆的用户信息,还可以知道每个用户执行任务的情况。

Linux 中,使用 w 或 who 命令都可以查看服务器上目前已登录的用户信息,两者的区别在于,w 命令除了能知道目前已登陆的用户信息,还可以知道每个用户执行任务的情况。

首先,介绍一下 w 命令的使用,w 命令的基本格式如下:

[root@localhost ~]# w [选项] [用户名]

此命令常用选项及含义,如表 1 所示。如果 w 命令后跟 [用户名],则表示只显示此用户的信息。

选项 含义
-h 不显示输出信息的标题
-l 用长格式输出
-s 用短格式输出,不显示登陆时间,JCPU 和 PCPU 时间
-V 显示版本信息

【例 1】显示当前用户登陆信息。

[root@localhost ~]# w
 13:13:56 up 13:00, 1 user, load average: 0.08, 0.02, 0.01
USER  TTY  FROM       LOGIN@  IDLE  JCPU  PCPU WHAT
root  tty1  -            11:04    0.00s 0.36s  0.00s -bash
root  pts/0 192.168.0.108  13:15    0.00s  0.06s  0.02s  w

上面的输出信息中,第一行其实和 top 命令的第一行非常类似,主要显示了当前的系统时间、系统从启动至今已运行的时间、登陆到系统中的用户数和系统平均负载。

平均负载(load average)指的是在 1 分钟、5 分钟、15 分钟内系统的负载状况。

从第二行开始,显示的是当前所有登陆系统的用户信息,第二行是用户信息的各列标题,从第三行开始每行代表一个用户。这些标题的含义如表 2 所示。

标题 含义
USER 登录到系统的用户。
TTY 登录终端。
FROM 表示用户从哪里登陆进来,一般显示远程登陆主机的 IP 地址或者主机名。
LOGIN@ 用户登陆的日期和时间。
IDLE 表示某个程序上次从终端开始执行到现在所持续的时间。
JCPU 和该终端连接的所有进程占用的 CPU 运算时间。这个时间里并不包括过去的后台作业时间,但是包括当前正在运行的后台作业所占用的时间。
PCPU 当前进程所占用的 CPU 运算时间。
WHAT 当前用户正在执行的进程名称和选项,换句话说,就是表示用户当前执行的是什么命令。

从 w 命令的输出中已知,Linux 服务器上已经登录了两个 root 用户,一个是从本地终端 1 登录的(tty1),另一个是从远程终端 1 登录的(pts/0),登录的来源 IP 是 192.168.0.108。

相比较 w 命令,who 命令只能显示当前登陆的用户信心,但无法知晓每个用户正在执行的命令。 who 命令的基本格式如下:

[root@localhost ~]# who [选项] [file]

需要说明的是,who 命令默认是通过 /var/run/utmp 文件来获取登陆用户信息,但如果通过 file 指定另一个文件,则 who 命令将不再默认读取 /var/run/utmp 文件,而是读取该指定文件来获取信息。

有关 who 命令常用选项及含义,如表 3 所示。

选项 含义
-a 列出所有信息,相当于所有选项。
-b 列出系统最近启动的时间日期。
-l 列出所有可登陆的终端信息。
-m 仅列出关于当前终端的信息,who -m 命令等同于 who am i
-q 列出在本地系统上的用户和用户数的清单。
-r 显示当前系统的运行级别。
-s 仅显示名称、线路和时间字段信息,这是 who 命令的默认选项。
-u 显示当前每个用户的用户名、登陆终端、登陆时间、线路活动和进程标识。
-T 或 -w 显示 tty 终端的状态,“+”表示对任何人可写,“-”表示仅对 root 用户或所有者可写,“?”表示遇到线路故障。

【例 2】显示系统最新启动日期,以及每个用户的登陆详情、终端状态。

[root@localhost ~]# who   <--等同于 who -s
root tty1 2013-06-07 09:53
root pts/0 2013-06-07 09:53 (192.168.0.108)
\#用户名 登录终端 登录时间(登录来源IP)
目录
相关文章
|
7天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
25 3
|
7天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
20 2
|
7天前
|
安全 网络协议 Linux
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。通过掌握 ping 命令,读者可以轻松测试网络连通性、诊断网络问题并提升网络管理能力。
24 3
|
10天前
|
Linux
在 Linux 系统中,`find` 命令是一个强大的文件查找工具
在 Linux 系统中,`find` 命令是一个强大的文件查找工具。本文详细介绍了 `find` 命令的基本语法、常用选项和具体应用示例,帮助用户快速掌握如何根据文件名、类型、大小、修改时间等条件查找文件,并展示了如何结合逻辑运算符、正则表达式和排除特定目录等高级用法。
36 6
|
10天前
|
缓存 网络协议 Linux
Linux ip命令常用操作
Linux的 `ip`命令是一个强大且灵活的网络管理工具,能够执行从基本的网络接口配置到高级的路由和VLAN管理等多种操作。通过熟练掌握这些常用操作,用户可以更加高效地管理和配置Linux系统的网络环境。无论是在日常管理还是故障排除中,`ip`命令都是必不可少的工具。
11 2
|
11月前
|
Linux
Linux命令(48)之who
Linux命令(48)之who
57 3
|
监控 Linux 数据库
linux 性能监控命令5——w,who,whoami,whois
原文整理自网络: whois    功能说明:查找并显示用户信息。    语  法:whois [帐号名称]    补充说明:whois指令会去查找并显示指定帐号的用户相关信息,因为它是到Network Solutions的WHOIS数据库去查找,所以该帐号名称必须在上面注册方能寻获,且名称没有大小写的差别。
934 0
|
14天前
|
缓存 监控 Linux
|
18天前
|
Linux Shell 数据安全/隐私保护