在linux系统中,查看当前登录用户的方法有以下几种:1.使用who命令可显示详细登录信息,包括用户名、终端、时间及来源ip;2.w命令除显示登录用户外,还提供用户实时进程状态;3.users命令用于仅列出当前登录用户名;4.last命令用于查看历史登录记录。这些命令适用于排查系统使用情况、管理权限和安全审计等场景。
在linux系统中,查看当前登录用户是一个很常见的需求,比如排查系统使用情况、管理权限或做安全审计时。最直接的方法是使用 who、w 或 users 命令,它们能快速告诉你有哪些用户正在登录。
使用 who 命令查看登录用户
who 是一个基础但非常实用的命令,它可以显示当前登录系统的用户信息,包括用户名、终端、登录时间以及来源IP(如果是远程登录)。
who
输出示例:
user1 pts/0 2025-06-23 19:30 (192.168.1.100) user2 pts/1 2025-06-23 19:45 (:0)
- pts/0 表示伪终端。
- 后面括号中的内容是登录来源地址,:0 通常代表本地图形界面登录。
如果你只想知道谁在登录,而不关心其他细节,可以加上 –user 参数:
who --user
使用 w 命令查看用户活动状态
w 命令不仅能显示当前登录用户,还能展示他们正在执行的进程,适合用于了解每个用户的实时操作行为。
w
输出示例:
user1 pts/0 19:30 0.00s 0.01s 0.00s sshd: user1 [priv] user2 pts/1 19:45 1:12.34s sleep 100
你可以看到每个用户用了多久、当前在做什么。这对系统管理员来说是个不错的监控工具。
小提示:如果你发现某个不熟悉的用户正在运行可疑进程,建议进一步排查安全性问题。
使用 users 命令快速列出所有登录用户
如果你只需要简单列出当前登录的用户名,不需要其他信息,可以用 users 命令:
users
输出示例:
user1 user2
这个命令特别适合写脚本时调用,简洁明了。
查看更详细的登录历史记录:last
虽然这不是查看“当前”登录用户的方法,但如果你想看看最近都有哪些用户登录过系统,可以用:
last
它会列出所有用户的登录和登出记录,包括重启事件等,非常适合用于安全审计。
常见输出项:
- 用户名
- 终端
- 来源IP
- 登录时间和登出时间
例如:
user1 pts/0 192.168.1.100 Mon Jun 23 19:30 - 20:00 (00:30) reboot system boot 5.4.0-122-generic Mon Jun 23 08:00 - 20:05 (12:05)
基本上就这些方法了。常用的几个命令都很轻量,而且大多数Linux发行版都默认自带。掌握这几个命令,在日常使用或系统维护中会方便不少。