Linux如何查看系统用户?

查看所有系统用户

/etc/passwd 文件解析

这是存储用户信息的核心文件,需用 rootsudo 权限查看:

cat /etc/passwd

输出示例
root:x:0:0:root:/root:/bin/bash
每行包含 7个字段(以冒号分隔):

  • 用户名(如 root
  • 密码占位符x 表示密码在 /etc/shadow
  • 用户ID(UID):系统用户通常 UID < 1000,普通用户 UID ≥ 1000
  • 组ID(GID)
  • 用户描述(如全名)
  • 家目录路径
  • 默认Shell(如 /bin/bash/sbin/nologin 表示禁止登录)

getent 命令

兼容性更强(支持LDAP等数据库):

getent passwd

输出格式与 /etc/passwd 相同。

列出可登录用户

过滤有效Shell的用户:

grep -v "/nologin\|/false" /etc/passwd | cut -d: -f1

或使用 awk

awk -F: '$7 !~ /\/nologin|\/false/ {print $1}' /etc/passwd

查看当前登录用户

who 命令

显示已登录用户及登录源:

who

输出:用户名 终端 登录时间 IP地址

w 命令

更详细(含正在运行的命令):

w

输出包括:用户、终端、登录时间、空闲时间、当前进程。

users 命令

仅显示用户名:

users

查看用户登录历史

last 命令

审计用户登录记录:

last

显示:用户名、终端、IP、登录/登出时间。
关键参数

  • last -5:显示最近5条记录
  • last username:查看特定用户记录

查看特定用户信息

id 命令

检查用户UID、GID及所属组:

id username  # 如 id root

输出示例:uid=0(root) gid=0(root) groups=0(root)

finger 命令(需安装)

显示用户详细信息:

sudo apt install finger  # Debian/Ubuntu
finger username

输出:登录名、真实姓名、Shell、家目录等。


高级工具

lslogins 命令

专业用户管理工具(需安装 util-linux):

lslogins -u  # 查看所有用户

输出包含:UID、GID、最后登录时间、是否锁定等。

compgen 命令(仅限Bash)

生成用户列表:

compgen -u

注意事项

  1. 权限要求
    • 查看 /etc/passwd 无需特权,但修改需 root 权限。
    • 敏感文件(如 /etc/shadow)仅 root 可读。
  2. 安全建议
    • 禁止删除系统用户(UID<1000),可能导致服务崩溃。
    • 定期审计用户:检查异常UID为0的用户(非root)。
  3. 用户状态判断
    • 密码字段为 或 表示账户被锁定。
    • nologin Shell 用户无法登录系统(如服务账户)。

场景 推荐命令
查看所有用户 cat /etc/passwd
检查当前登录用户 wwho
审计登录历史 last
获取用户详细信息 idfinger
专业级用户管理 lslogins

重要提示:直接编辑用户文件(如 /etc/passwd)可能导致系统不稳定,建议使用 useraddusermod 等命令管理用户。


引用说明: 基于 Linux man-pages 官方文档(如 man 5 passwd)。

  • 命令兼容性参考 GNU Coreutils 及 util-linux 工具集。
  • 安全规范遵循 Linux Foundation 最佳实践指南。

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

(0)
酷番叔酷番叔
上一篇 2025年6月14日 08:18
下一篇 2025年6月14日 08:49

相关推荐

  • Linux如何查看根分区的卷标?

    在Linux系统中,根分区(通常挂载为)是操作系统的核心存储区域,包含系统启动所需的文件和目录,而“卷标”(Label)是文件系统的一个可选标识符,类似于分区的“别名”,可用于方便地识别和管理分区,尤其是在多磁盘或复杂存储环境中,本文将详细介绍通过多种命令查看Linux根分区卷标的方法,并对比不同命令的适用场景……

    2025年9月29日
    1500
  • Linux机顶盒如何刷机?步骤详解与方法指南

    Linux机顶盒刷机是指通过特定的工具和方法,替换或更新机顶盒的操作系统或固件,以解锁新功能、优化系统性能、去除广告或适配第三方应用等,Linux系统机顶盒因其开源特性,刷机灵活性较高,但操作不当可能导致设备变砖(无法启动),因此需严格遵循步骤并做好准备工作,刷机前准备工作刷机前需充分准备工具、资料并评估风险……

    2025年8月27日
    2900
  • Linux su命令如何正确使用?方法步骤与注意事项详解

    Linux中的su命令是“switch user”的缩写,主要用于切换用户身份,允许当前用户以其他用户的权限运行命令或登录系统,无论是普通用户需要提升权限执行管理任务,还是root用户需要切换到普通用户进行操作,su命令都能实现灵活的用户身份切换,本文将详细介绍su命令的使用方法、常见选项、应用场景及注意事项……

    2025年9月21日
    2500
  • LibreOffice如何轻松添加英语音标?

    LibreOffice在Linux系统中插入英语音标有三种简便方法:使用特殊字符表直接插入IPA符号;安装音标字体后通过键盘输入;复制粘贴网络词典中的现成音标,所有方法均无需安装额外插件,操作简便。

    2025年7月29日
    3000
  • 如何在Linux系统中开启SSH密钥登录认证功能?

    在Linux系统中,开启SSH密钥登陆能够显著提升服务器安全性,相比传统密码登陆,密钥认证基于非对称加密,有效避免暴力破解风险,同时实现免密快速登陆,以下是详细的配置步骤,涵盖本地密钥生成、服务器端配置及安全加固全流程,本地客户端生成SSH密钥对SSH密钥对包含公钥(用于上传至服务器)和私钥(需妥善保存在客户端……

    2025年9月8日
    2400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信