摘要

本文将讨论 Linux 中如何查看系统用户。

引言

Linux 提供了两个命令用于查看用户信息:

  • id:侧重于查看用户的 UID,GID,以及归属的用户组
  • finger:侧重于查看用户家目录,用户使用的默认 shell 类型,用户备注等

用法

id

使用 id 命令可以查看当前登录用户的用户和组信息,其后若接一个用户,则查看指定用户的用户和组信息。

  • 帮助文档
用法: id [选项]... [用户]
Print user and group information for the specified USER,
or (when USER omitted) for the current user.

  -a             忽略,仅为与其他版本相兼容而设计
  -Z, --context  仅显示当前用户的安全上下文
  -g, --group    仅显示有效用户组ID
  -G, --groups   显示所有组ID
  -n, --name     显示组名称而非数字,与 -ugG 一起使用
  -r, --real     显示真实ID 而非有效ID,与 -ugG 一起使用
  -u, --user     仅显示有效用户ID
   -z, --zero     使用 NUL 字符而非空格来分隔各个条目,在默认格式下不可使用
      --help            显示此帮助信息并退出
      --version         显示版本信息并退出

如果不附带任何选项,程序会显示一些可供识别用户身份的有用信息。
  • 具体示例
$ id # 查看当前登录用户的用户和组信息
用户id=1000(sdxx09) 组id=1000(sdxx09) 组=1000(sdxx09),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),116(lpadmin),126(sambashare)
$ id root # 查看当前 root 的用户和组信息
用户id=0(root) 组id=0(root) 组=0(root)
$ id yangpei_stu01 # 查看其它用户的用户和组信息
用户id=1026(yangpei_stu01) 组id=1026(yangpei_stu01) 组=1026(yangpei_stu01)

finger

使用 finger 命令可以查看当前所有登录用户的信息,其后若接一个用户名,则查看指定用户名用户的信息。

  • 安装方法

Linux 默认是不按照 finger 的,要想使用 finger 命令,在 CentOS 中可先通过命令 yum install finger 安装。对于其它 Linux 发行版本,可尝试通过命令 apt install finger 安装。当然,你必须得有管理员权限!

  • 具体示例
$ finger # 查看当前所有登录用户的信息
Login     Name       Tty      Idle  Login Time   Office     Office Phone
sdxx09    sdxx09     pts/0          Jun  8 15:35 (10.160.129.218)
sdxx09    sdxx09     pts/8      2d  Jun  5 15:47 (tmux(3669894).%0)
wu_wdl               pts/14     5d  Jun  1 09:32 (10.160.93.166)
wu_wdl               pts/21     6d  Jun  1 19:36 (10.160.93.166)
wu_wdl              *pts/22     3d  Jun  1 19:36 (10.160.93.166)
$ finger root # 查看 root 用户的信息
Login: root                             Name: root
Directory: /root                        Shell: /bin/bash
Never logged in.
No mail.
No Plan.
$ finger hanl # 查看用户名为 hanl 用户的信息
Login: hanl                             Name:
Directory: /home/hanl                   Shell: /bin/bash
Last login Mon Mar 28 09:34 (CST) on pts/3 from 111.115.196.3
No mail.
No Plan.
  • Login:用户名
  • Name:用户说明或备注
  • Directory:用户家目录
  • Shell:用户使用的默认 shell 类型
  • Last login:用户上次在何时何处登录本主机
  • No main:用户新邮件的数目。No main 表示没有邮件
  • No plan:用户家目录隐藏文件 .plan 的内容,一般存放用户个人计划,No plan 表示没有计划内容
  • Tty:登录终端类型
  • Idle:空闲时间
  • Login Time:登录时间
  • Office:登录主机名(IP 地址)