Linux uid和gid

Linux uid和gid教程

Linux 系统中,每个用户的 ID 可以分为两种,分别是用户 ID(User ID,简称 UID)和组 ID(Group ID,简称 GID),这与文件有拥有者和拥有群组两种属性相对应。

我们在登陆 Linux 系统时,虽然输入的是自己的用户名和密码,但其实 Linux 并不认识你的用户名称,它只认识用户名对应的 ID 号(也就是一串数字)。Linux 系统将所有用户的名称与 ID 的对应关系都存储在 /etc/passwd 文件中。

也就是说,Linux 的用户名并无实际作用,仅是为了方便用户的记忆而已。

Linux用户id和组id详解

在 Linux 中,每个文件的拥有者都有两个属性,即,用户 id(UID)和组 ID(GID),我们可以使用 ls 命令,查看用户的 id 信息,具体命令如下:

ls -l haicoder.txt

运行后,终端输出如下:

01_linux用户id和组id.png

我们可以看到,这里的两个 root,就分别显示的是用户名和组名,其实,Linux 并不认识这个用户名和组名,而是当显示文件属性时,系统会根据 /etc/passwd 和 /etc/group 文件中的内容,分别找到 UID 和 GID 对应的用户名和群组名,然后显示出来。

其实,显示文件属性时,就是拿到文件所属的用户 id(UID),到 /etc/passwd 文件中,找到其对应的用户名以及拿到文件所属的组 id(GID),到 /etc/group 文件中,找到其对应的用户组名显示。

现在,我们使用 cat 命令和 grep 命令,在 /etc/passwd 文件中,查找 root 用户,具体命令如下:

cat /etc/passwd | grep root

运行后,终端输出如下:

02_linux用户id和组id.png

我们看到,输出了 root 用户的信息,同样,我们可以在 /etc/group 文件中查找 root 用户组的信息,具体命令如下:

cat /etc/group | grep root

运行后,终端输出如下:

03_linux用户id和组id.png

我们看到,输出了 root 用户组的信息。

Linux uid和gid总结

Linux 系统中,每个用户的 ID 可以分为两种,分别是用户 ID(User ID,简称 UID)和组 ID(Group ID,简称 GID),这与文件有拥有者和拥有群组两种属性相对应。