Linux管理用户账号和组账号以及目录和文件的属性
一:用户账号和组账号概述
与 Windows 操作系统一样,Linux 操作系统的每一个用户账号也都有唯一的用户名与密码。用户在登录时输入正确的用户名和密码,就能够进入操作系统和自己的主目录。本小节将介绍 Linux 操作系统中用户账号和组账号的相关概念。
1、用户账号概述
Linux系统中,根据系统管理的需要,将用户账号分为不同的类型,其拥有的权限,担任的角色也各不相同。
-
用户账号: 功能超级用户 root用户是Linux系统中默认的超级用户账号,对本级拥有最高的权限,类似于Windows系统中的administrator用户。
-
普通用户: 普通用户账号需要有root用户或其他管理员用户创建,拥有的权限受到一定限制,一般只在用户自己的宿主目录中拥有完整权限。
-
程序用户: 在安装Linux系统及部分应用程序时,会添加一些特定的低权限用户账号,这些用户一般不允许登录到系统,而仅用于维持系统或某个程序的正常运行。例如:bin,daemon,ftp,mail等。
-
匿名用户: Windows中的匿名用户时guest,Linux系统中匿名用户是nobody。
2、组账号概述
基于某种特定联系将多个用户集合在一起,即构成一个用户组,表示该组内所有用户的账号称为组账号。每一个用户账号至少属于一个组,这个组称为该用户的基本组(或私有组);若该用户同时还包含在其他的组中,则这些组称为该用户的附加组(或公共组)。
- 私有组(基本组):随着用户的建立而建立,与用户同名
- 共有组(附加组):直接创建空组,可以自由添加已有用户。给组设置权限后,该组中的所有用户都具备此权限。
3、UID号和GID号
Linux系统中的每一个用户账号和组账号都有一个数字形式的身份标记,称为UID(User IDentity,用户标识号)和GID(Group IDentify,组标识号)。对于系统核心来说,UID是作为区分用户的基本依据,原则上每个用户的UID号应该是唯一的。
与 UID 类似,每一个组账号也有一个数字形式的身份标记,称为 GID(Group IDentity, 组标识号)
用户 | UID号 | GID号 |
---|---|---|
root用户 | UID=0 | GID=0 |
程序用户 | UID=1~999 | GID=1~999 |
普通用户 | UID=1000~65535 | GID=1000~65535 |
二、用户账号文件
Linux系统中的用户账号,密码等信息均保存在相对应的 配置文件中,直接修改这些文件或者使用用户管理命令都可以对用户账号进行管理。
1、用户账号文件
与用户账号相关的配置文件主要有两个,分别是/etc/passwd, /etc/shadow、前者用于保存用户名称,宿主目录,登录Shell等基本信息,后者用于保存用户的密码,账号有效期等信息。在这两个配置文件中,每一行对应一个用户账号,不同的配置项之间使用冒号“:”进行分隔。
基于系统运行和管理的需要,所有用户都可以访问passwd 文件中的内容,但是只有root 用户才能进行更改。
- 用户账号文件/etc/passwd
操作系统中所有用户的账号基本信息都保存在/etc/passwd 文件中,该文件是文本文件, 任何用户都可以读取文件中的内容。
查看/etc/passwd文件的前5行
[root@mysql3 local]# head -5 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/