概述
id 是 'identity' 的缩写,用于显示系统中识别用户的数字ID。Linux 系统使用 UID (用户ID) 和 GID (组ID) 来管理权限,而不是用户名。`id` 命令输出当前 shell 运行用户的 UID、GID 以及辅助组列表。通过它,可以快速了解文件和目录的访问权限、程序执行权限等,是系统管理员解决用户权限问题时首先使用的工具之一。
主要特点
id 命令的主要特点如下:
- 输出当前用户或特定用户的 UID 和 GID。
- 显示用户所属的所有组的列表。
- 提供解决权限相关问题的有用信息。
- 在脚本中用于确认用户ID或组ID。
id 相关术语
id 命令可以确认的主要术语。
- UID (用户ID): 识别用户的唯一数字ID。通常,0 分配给 `root`,1-999 分配给系统账户,1000 及以上分配给普通用户。
- GID (组ID): 识别组的唯一数字ID。用户可以属于一个或多个组。
- groups: 用户所属的所有组的列表。第一个组是 '主组',其余是 '辅助组'。
主要选项
根据目的对 id 命令的常用选项进行了分组。
1) 输出选项
2) 帮助
生成的命令:
请尝试组合命令。
描述:
`id` 执行命令。
通过组合这些选项,您可以与 AI 一起虚拟地执行命令。
使用示例
通过 id 命令的各种使用示例来学习其功能。
输出当前用户信息
id
输出当前登录用户的 UID、GID、所属组信息。
输出特定用户信息
id guest
输出用户 `guest` 的详细信息。
输出用户的 UID 和 GID
id -u
id -g
分别以数字值形式输出用户的 UID 和主 GID。
仅输出用户名
id -un
仅输出当前用户的名称。返回与 `whoami` 相同的结果。
输出所有组名称
id -Gn
以空格分隔的形式输出用户所属的所有组的名称。类似于 `groups` 命令。
安装
id 是 `coreutils` 包的一部分,默认包含在大多数 Linux 发行版中。无需单独安装。
提示与注意事项
总结了使用 id 命令时需要注意的事项。
提示
- 使用 `id -u` 可以获取当前用户的 UID,这在脚本中检查是否具有 root 权限时很有用。(例如:`if [ "$(id -u)" == "0" ]; then ... fi`)
- `id -Gn` 命令输出的结果与 `groups` 命令相同。这两个命令在检查用户所属组时都很方便。