ID,简称GID),这与文件拥有者和拥有群组两种属性所对应。
文章开头也提到了,Linux系统并不认识我们的用户名和密码,那问题来了,文件是如何判别它的拥有者名称及群组名称的呢?
每个文件都有自己的拥有者ID和群组ID,在显示文件属性时,系统会根据/etc/passwd和/etc/group文件中的内容,分别找到UID和GID所对应的用户名和群组名,最终显示出来。
在/etc/passwd文件中,利用UID可以找到所对应的用户名,在/etc/group文件中,利用GID可以找到所对应的群组名。
可以做个小实验,在Linux *** 作系统中,常用的有两个账户,分别为root超级管理员账户和普通账户,我们可以先使用root账号登录并执行命令vim
/etc/passwd,在该文件中找到普通用户并将其UID随意改一个数字,这是你会发现,当你查看普通账户所拥有的文件时,你会发现所有文件的拥有者并不是普通用户,而是数字。
一般情况下,当登录Linux *** 作系统后,会先寻找/etc/passwd是否有输入账号,如果没有,则跳出,如果有,则读取对应的UID与GID,随后进入/etc/shadow核对密码,一切完成后,则进入shell管控。
由此可见,UID与GID在日常的账户管理中,发挥着非常重要的作用,因为一不小心就可能访问不了自己的文件,所以温馨提示大家,不要随便改动自己的/etc/passwd与/etc/group文件。
UID---用户标识号,它与用户名唯一对应。LINUX中超级用户root的UID为0如果您想让系统显示您的用户名,UID,组名,GID以及您所属的其他组的名称,可利用id命令。修改UID一般用 usermod -u。
Linux是一套免费使用和自由传播的类Unix *** 作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的 *** 作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络 *** 作系统。
扩展资料:
优点:
1、Linux由众多微内核组成,其源代码完全开源;
2、Linux继承了Unix的特性,具有非常强大的网络功能,其支持所有的因特网协议,包括TCP/IPv4、 TCP/IPv6和链路层拓扑程序等,且可以利用Unix的网络特性开发成出新的协议栈;
3、Linux系统工具链完整,简单 *** 作就可以配置出合适的开发环境,可以简化开发过程,减少开发中仿真工具的障碍,使系统具有较强的移植性;
参考资料来源:百度百科-linux
root用户拥有极高的系统所有权,能够管理系统的各项功能,真正让root成为“超级用户”的原因是它的UID值。
每个用户都有对应的 唯一UID值 ,可以分成三类用户:
用户的UID保存在 /etc/passwd 文件中,而账户密码保存在 /etc/shadow 文件中。
例如,输入命令 $ cat /etc/passwd ,可以查看所有的用户信息,下面是三类用户的例子:
第一行为root超级用户,第二行为ftp系统用户,第三行为test普通用户。
每行用户信息都以 “:” 作为分隔符,划分为7个字段,每个字段所表示的含义如下:
用户名:密码:UID:GID:描述性信息:主目录:默认Shell
其中,默认shell为 /bin/bash 表示可以登录,为 /sbin/nologin 时表示不可以登录。
GID 是用户组的编号,可以将多个用户加入到某个组中,方便指派任务或工作。
每个用户在被创建时均会创建一个默认组(其GID与UID相同,叫作基本组或初始组),而后加入的组叫作扩展组或附加组。
用户组名和GID则保存在 /etc/group 文件中。
输入命令 $ cat /etc/group 可以查看所用用户组的信息,例如:
每行的用户组的信息都以 “:” 作为分割符,划分为4个字段,每个字段所表示的含义如下:
组名:密码:GID:该用户组中的用户列表
其中,组密码保存在 /etc/gshadow 文件中,用户组密码一般没用;组中的用户列表只包括附加用户,如果该组是某个用户的初始组,则这个用户不会出现在这个用户列表中。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)