Linux 中的 id 命令:5 个实际示例Linux 中的 id 命令:5 个实际示例Linux 中的 id 命令:5 个实际示例Linux 中的 id 命令:5 个实际示例
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

Linux 中的 id 命令:5 个实际示例

发表 admin at 2025年2月28日
类别
  • 未分类
标签

Linux 中的每个用户都有一个唯一的数字用户 ID 和一个具有唯一数字组 ID 的默认组。 id 命令打印此信息。

Linux中的id命令用于显示用户真实有效的用户ID和组ID。

在本教程中,我将通过一些最常见和有用的示例向您展示如何在 Linux 中使用 id 命令。

Linux 中的 id 命令

这是 id 命令的语法:

id [options] [username]

如果您不提供用户名,该命令将显示有关当前登录用户的详细信息。

id

这是它在 Ubuntu Linux 中为我显示的输出。

abhishek@linux:~$ id
uid=1000(abhishek) gid=1000(abhishek) groups=1000(abhishek),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),119(lpadmin),130(lxd),131(sambashare)

在上面的输出中,用户 abhishek 的 uid 1000 和 gid 1000。这是用户 abhishek 默认所属的主要组。

除此之外,用户 abhishek 也是某些其他组的成员,并且这些组也已显示在输出中。

id 命令示例

以下是 id 命令最常见的选项:

-u

打印有效用户id

-g

打印有效组id

-G

打印用户所属的所有组的ID

-n

打印名称而不是 ID(必须与 -u、-g 或 -G 结合使用)

-r

打印真实ID而不是有效ID(必须与-u、-g或-G结合使用)

真实与有效的用户和组 ID?

这可能会让您感到困惑。创建用户时,会为其指定用户名、用户 ID (uid)、默认组,该默认组的 id 就是该用户的 gid。这是“真实”用户和组 ID。

由于在 Linux 中,进程可以作为其他用户和组运行,因此还有第二组 ID,称为有效 ID。

大多数时候,真实有效的 UID 和 GID 是相同的。但在某些情况下,普通用户必须修改特权文件。这就是使用有效 ID 概念的地方。最常见的示例是使用 passwd 命令更改密码,该命令会修改 root 拥有的 /etc/passwd 文件。

我无法在这里详细介绍,但我建议您在这里阅读。您还应该阅读有关 Linux 中的 SUID、GUID 和粘滞位权限的内容。

1.打印某个用户的UID和GID

要打印用户的 uid 和 gid 以及所有其他组 ID,您只需指定用户名:

id username

您可以列出 Linux 系统中的所有用户以获得所需的用户名。

2. 只打印用户的UID

您可以使用 -u 选项在 Linux 中打印 UID。如前所述,如果省略用户名,则会显示有关登录用户的信息。

id -u userame

请记住,它仅显示 UID、数值,而不显示名称。

abhishek@linux:~$ id -u
1000

3. 只打印用户的GID

同样,您可以使用选项-g来打印用户的GID。当我说 GID 时,它是用户所属的默认组的数字 ID。

id -g username

同样,它只会显示组的数字 ID。

abhishek@linux:~$ id -g nobody 
65534

4. 打印该用户所属的所有其他组的ID

一个用户可以属于多个组。这是Linux 文件系统的基本特征。您可以使用 usermod 命令并将其添加到 sudo 组以赋予其 root 权限。

您可以使用-G选项显示用户所属的所有组的ID。

id -G username

这也仅显示 ID。

abhishek@linux:~$ id -G abhishek
1000 4 24 27 30 46 119 130 131

5.打印姓名而不是数字ID

仅数字 ID 可能会造成混淆。如果您需要名称,可以将 -n 选项与 -u、-g 或 -G 结合使用显示名称。

例如,如果你想显示一个用户所属的所有组,你可以这样使用:

id -nG username

如果我将前面的示例与选项 -n 一起使用,则显示如下:

abhishek@linux:~$ id -nG abhishek
abhishek adm cdrom sudo dip plugdev lpadmin lxd sambashare

额外提示:打印真实身份证件

以上示例均显示有效 ID。几乎所有时候它都是真实的 ID。

但是,如果您想确保获得真实的 ID,可以将选项 -r 与 -u、-g 或 -G。

它可以这样使用:

id -ru username

好吧!我想您现在对 id 命令已经足够了解了。如果您有疑问或建议,请随时发表评论。

©2015-2025 Norria support@norria.com