【Linux】 id命令使用

id

id命令来显示用户的UID、组GID。

著者

由阿诺德·罗宾斯和大卫·麦肯齐撰写。

语法

id [参数] [用户名]

id命令 -Linux手册页

命令选项及作用

执行令  id --help

执行命令结果

【Linux】 id命令使用_第1张图片

参数

  • -g 或 --group  显示用户所属群组的ID。
  • -G 或 --groups  显示用户所属附加群组的ID。
  • -n 或 --name  显示用户,所属群组或附加群组的名称。
  • -r 或 --real  显示实际ID。
  • -u 或 --user  显示用户ID。
  • -help  显示帮助。
  • -version  显示版本信息。

常用命令示例

命令:id 

显示当前用户信息。

命令:id username

要打印用户的 uid 和 gid。

命令:id -u  username

打印用户的 uid。

命令:id -g  username

打印用户的 gid。

“真实”与“有效”的用户ID和组ID

真实用户ID


真实用户ID是指启动进程的用户的uid。它会被设定成该进程的父进程的真实用户ID,而且在exec调用期间不会变动。通常,登陆进程会将用户的login shell的真实用户ID设定成该用户的ID,

有效用户ID


有效用户ID是指正在运行的进程的用户ID。进行使用权限的确认时通常会检查此值。有效用户ID会等于真实用户ID,因为当一个进程进行派生时,父进程的有效用户ID会被子进程继承。此外,如果进程发生exec调用,有效用户ID通常不会变动。但是exec()执行期间,可以看出真实用户ID和有效用户ID之间的主要差异:通过setuid(suid)二进制文件,进程可以变更它的有效用户ID。有效用户ID会被设定成程序文件拥有者的用户ID。没有特权的用户可以把有效用户ID设定成真实的或者被保存用户ID,超级用户可以把有效用户ID设定成任何值。
 

大多数时候,“真实”ID和“有效”ID是相同的。但是也有不同的时候,也就是使用有效ID的时候,比如普通用户需要修改受保护的文件,最常见的场景就是使用 passwd 命令修改密码。修改密码其实是修改的 root 用户所属的 /etc/passwd 文件。




【Linux】 id命令使用_第2张图片

你可能感兴趣的:(linux,linux,运维,服务器)