Linux如何查看在线用户?

who 命令:基础登录信息

作用:显示当前登录系统的用户信息(用户名、终端、登录时间及来源IP)。
命令示例

who

输出解析

root     pts/0        2025-06-15 09:30 (192.168.1.10)
alice    tty2         2025-06-15 10:15 (:0)
  • pts/0:伪终端(远程登录如SSH)
  • tty2:物理终端或本地控制台
  • (:0):本地图形界面登录

常用参数

  • who -u:显示空闲时间(IDLE列)
  • who -H

w 命令:详细用户活动

作用:综合显示登录用户、当前进程及系统负载(更全面)。
命令示例

w

输出解析

 11:20:03 up  2:30,  2 users,  load average: 0.15, 0.08, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.1.10     09:30    1:30m  0.10s  0.00s sshd: root
alice    tty2     :0               10:15    5.00s  1:20   0.02s /usr/bin/bash
  • JCPU:该终端所有进程占用CPU时间
  • WHAT:用户当前运行的命令

users 命令:极简用户名列表

作用:仅输出登录用户名(适合脚本处理)。
命令示例

users

输出

root alice

last 命令:历史登录记录

作用:查看近期登录/注销记录(含已离线用户)。
命令示例

last | head -n 5

输出解析

root     pts/0        192.168.1.10     Mon Jun 15 09:30   still logged in
alice    tty2         :0               Mon Jun 15 10:15   still logged in
reboot   system boot  5.4.0-91-generic Mon Jun 15 09:25   still running
  • still logged in:标记当前在线的用户
  • 数据来源:/var/log/wtmp(需root权限访问)

utmpdump 工具:原始登录数据

作用:直接解析登录记录文件 /var/run/utmp(需安装)。
安装与使用

sudo apt install sysvinit-utils  # Debian/Ubuntu
sudo yum install sysvinit-tools  # CentOS/RHEL
sudo utmpdump /var/run/utmp

输出特点
包含终端类型、进程ID、IP地址等底层信息,适合高级分析。


特殊场景处理

  1. 无图形界面服务器:优先使用 whow
  2. 排查可疑登录
    who | grep 'pts'  # 检查所有远程连接
    last | grep 'still logged in'  # 确认当前会话
  3. 用户操作监控
    w -i  # 显示IP地址(替代who -u)

总结与建议

命令 适用场景 优势
who 快速查看基础登录信息 简洁、系统默认安装
w 监控用户活动及系统负载 集成进程和资源数据
last 审计历史登录(含离线用户) 安全分析必备
utmpdump 深度分析登录数据 底层信息完整

安全提示

  • 定期检查 /var/log/secure(RHEL/CentOS)或 /var/log/auth.log(Debian/Ubuntu)获取认证日志。
  • 异常IP立即封锁:sudo fail2ban-client set sshd banip <IP>

引用说明: 基于Linux man-pages(who(1), w(1), last(1))及Filesystem Hierarchy Standard(FHS 3.0)中对系统日志路径的定义,实践环境为Ubuntu 22.04 LTS及CentOS 7,兼容主流Linux发行版。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9045.html

(0)
酷番叔酷番叔
上一篇 2025年7月28日 15:53
下一篇 2025年7月28日 16:05

相关推荐

  • linux系统如何为用户授权

    Linux 系统中,使用 chown 命令更改文件所有者,用 chmod

    2025年8月19日
    12700
  • 如何比较变量MD5值是否相同?

    核心方法:字符串直接对比MD5值本质是32位十六进制字符串(如d41d8cd98f00b204e9800998ecf8427e),只需直接比较字符串内容:md5_2=”d41d8cd98f00b204e9800998ecf8427e”if [ “$md5_1” = “$md5_2” ]; then echo……

    2025年7月17日
    14300
  • 如何轻松掌握bash提升工作效率?

    在Linux系统中开启SMTP服务器是搭建邮件服务的关键步骤,常用于网站通知、事务邮件等场景,以下是基于Postfix(Linux最常用的邮件传输代理)的详细操作流程,兼顾安全性与易用性,所有命令需以root权限执行,sudo apt update && sudo apt upgrade # D……

    2025年7月29日
    13400
  • Linux中打开文件夹,命令行与图形界面的具体操作方法有哪些?

    在Linux操作系统中,打开文件夹是日常操作中的常见需求,根据用户习惯和场景不同,可通过图形界面或命令行两种主要方式实现,以下是具体操作方法的详细说明,涵盖不同桌面环境和常用命令,帮助用户高效完成文件夹打开操作,通过图形界面打开文件夹图形界面(GUI)适合习惯可视化操作的用户,不同Linux发行版的桌面环境可能……

    2025年9月21日
    11100
  • Linux下如何解压.z文件?

    在Linux系统中,.z文件是由早期的compress工具压缩生成的文件格式,其压缩算法基于LZ77,虽然现在更常见的压缩格式是.gz(gzip)或.bz2(bzip2),但在处理一些遗留系统或历史数据时,仍可能遇到.z文件,解压.z文件需要使用特定的工具,本文将详细介绍Linux下解压.z文件的多种方法、注意……

    2025年8月28日
    13400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信