与windows操作系统相比,linux操作系统中的用户账号和组账号的作用在本质上是一样的,同样都是基于用户身份来控制对资源的访问,只不过在表现形式及个别细节方面存在一些差异。
用户账号和组账号概述:
与windows操作系统一样,linux操作系统的每一个用户账号也都有唯一的用户名与密码。用户在登录时输入正确的用户名和密码,就能够进入操作系统和自己的主目录。
用户账号:
超级用户:root 用户是 Linux 操作系统中默认的超级用户账号,对本主机拥有至高无上的权限,类似于 Windows 操作系统中的 Administrator 用户。只有当进行系统管理、维护任务时,才建议使用 root 用户登录系统,日常事务处理建议只使用普通用户账号。
普通用户:普通用户账号需要由 root 用户或其他管理员用户创建,拥有的权限受到一定限制,一般只在用户自己的宿主目录中拥有完整权限。
程序用户:在安装 Linux 操作系统及部分应用程序时,会添加一些特定的低权限用户账号,这些用户一般不允许登录到系统,而仅用于维持系统或某个程序的正常运行,如 bin、daemon、ftp、mail 等。
组账号:基于某种特定联系(如都需要访问 FTP 服务)将多个用户集合在一起,即构成一个用户组,表示该组内所有用户的账号称为组账号。每一个用户账号至少属于一个组,这个组称为该用户的基本组(或私有组);若该用户同时还包含在其他的组中,则这些组称为该用户的附加组(或公共组)。
任何一个账户必定要在一个组当中
linux组:
基本组:每个用户有且仅有一个基本组
附加组:每个用户可以有多个附加组
UID 和 GID 号:
Linux 操作系统中的每一个用户账号都有一个数字形式的身份标记,称为UID为(UserIDentity,用户标识号),对于操作系统核心来说,UID 是区分用户的基本依据,原则上每个用户的 UID 号应该是唯一的。root 用户账号的UID号为固定值 0,而程序用户账号的 UID号默认为 0~999,1000~60000 的 UID 号默认分配给普通用户使用。
与 UID 类似,每一个组账号也有一个数字形式的身份标记,GID(Group IDentity,为组标识号)。root 组账号的 GID 号为固定值 0,而程序组账号的 GID 号默认为 0~999,1000~60000 的 GID 号默认分配给普通组使用。
用户账号文件
用户账号文件
Linux 操作系统中的用户账号、密码等信息均保存在相应的配置文件中,直接修改这些文件或者使用用户管理命令都可以对用户账号进行管理。
用户账号文件:
与用户账号相关的配置文件主要有两个,分别是/etc/passwd 和/etc/shadow。前者用于保存用户名称、宿主目录、登录 Shell 等基本信息,后者用于保存用户的密码、账号有效期等信息。在这两个配置文件中,每一行对应一个用户账号,不同的配置项之间使用“:”(冒号)进行分隔。
passwd 文件中的配置行格式:
操作系统中所有用户的账号基本信息都保存在/etc/passwd 文件中,该文件是文本文件,任何用户都可以读取文件中的内容。
root超级管理员用户,admin普通用户,在他们俩中间的用户就被称为程序用户
在 passwd 文件开头的部分,包括超级用户 root 及各程序用户的账号信息,系统中新增加的用户账号信息将保存到 passwd 文件的末尾。passwd 文件的每一行内容中包含了七个用“:”(冒号)分隔的配置字段。
第 1 字段:用户账号的名称,也是登录系统时使用的识别名称。(登录名)
第 2 字段:经过加密的用户密码字串,或者密码占位符“x”。
第 3 字段:用户账号的 UID 号。
第 4 字段:所属基本组账号的 GID 号。
第 5 字段:用户全名,可填写与用户相关的说明信息。(可以省略)
第 6 字段:宿主目录,即该用户登录后所在的默认工作目录。(家目录)
第 7 字段:登录 Shell 等信息,用户完成登录后使用的 Shell。
shadow 文件中的配置行格式
shadow 文件又被称为“影子文件”,其中保存有各用户账号的密码信息,因此对 shadow文件的访问应该进行严格限制。默认只有 root 用户能够读取shadow文件中的内容,且不允许直接编辑该文件中的内容。
shadow 文件的每一行内容中包含了九个用“:”(冒号)分隔的配置字段