一、用户和组的概念
Linux系统是多任务、多用户的分时操作系统。用户要使用系统资源,需要向管理员验证身份,由管理员进行认证和授权,并对用户的行为进行追踪和审计,以保障系统资源的合理分配以及系统的安全。
要达到账号管理的目的,需要对用户和用户组进行管理。下面分别来介绍用户管理和用户组管理。
每个用户都有唯一的一个编号来标识,这个标识号叫Uid,每个用户至少属于一个用户组,用户组使用Gid来进行标识
Linux用户信息按Username/ UID分两类:
管理员:root,0。管理员具有系统的超级权限,可以进行绝大多数的系统操作。有“管理员即上帝”的说法。所以,在使用管理员进行操作时,对于可能造成系统破坏的操作应加倍小心。
普通用户:Uid范围是1-65535,普通用户又可以划分为系统用户和登录用户。
系统用户对守护进程获取资源进行权限分配。
登录用户采用交互式登录方式登录系统。
在CentOS6和CentOS7上具体的的划分又有所区别
CentOS6:
系统用户:1-499
登录用户:500+
CentOS7:
系统用户:1-999
登录用户:1000+
Linux组的划分:Groupname/GID
组的划分与用户的划分相对应。
管理员组:root,0
普通组:
系统组:1-499(centos6);1-999(centos7)
普通组:500+(centos6);1000+(centos7)
组对系统用户来说,又可以划分问用户的基本组和附加组。用户必须属于一个且只能有一个基本组,组名同用户名。一个用户可以属于0个或多个附加组。
二、用户和组的配置文件详解
Linux用户的主要配置文件有/etc/passwd、/etc/shadow,其中
/etc/passwd 存放用户的用户名及其属性信息(包含uid、基本组id等)
/etc/shadow 存放用户密码及其相关属性
下面来解释一下/etc/passwd文件的格式
每行为一个用户的信息,用“:”作分割,分别对应
root x 0 0 root /root /bin/bash
用户名 密码信息 UID GID 用户描述 用户家目录 用户登录时的默认shell
为什么密码信息显示为x呢,因为所有用户都可以访问/etc/passwd文件,这是很不安全的,所以,密码另存在/etc/shadow文件中
/etc/shadow文件的格式:
同样也是使用”:”做分隔符
bin * 15980 0 99999 7 第七列 第八列
用户名 用户密码 密码最近 密码最小 密码最大 密码过期 密码锁定 账号过期时间 账号过期
修改时间 修改时间 修改时间 提醒时间 时间 时间
第七列和第八列因为没有设置,所以没有显示
解释:
用户密码: 经加密算法加密后的密文
密码最近修改时间:从1970年1月1日起到密码最近一次被更改的时间
密码最小修改时间: 密码再过几天可以被变更( 0表示随时可被变更)
密码最大修改时间:密码再过几天必须被变更( 99999表示永不过期)
密码过期提醒时间:密码过期前几天系统提醒用户(默认为一周)
密码锁定时间:密码过期几天后帐号会被锁定
账号过期时间:从1970年1月1日算起,多少天后帐号失效。
用图表来表示:
组的相关信息保存在/etc/group和/etc/gshadow文件中,来看看两个文件的结构:
查看/etc/group
从左至右分别对应:组名、组密码(通常不设定)、组id(GID)、组成员列表
查看/etc/shadow
从左至右分别对应:组名、组密码、组管理员列表、以本组问附加组的成员列表
三、用户管理
创建用户、管理用户、删除用户
1、创建用户:使用useradd命令
useradd [options] username
常用选项
-u UID: 指定用户UID
-o 配合-u 选项,不检查UID的唯一性。一般来说,用户名和UID是一一对应的。在创建用户时如果为用户指定已使用的UID,会报错。
例:12346UID已使用,
-g GID:指明用户所属基本组,可为组名,也可以GID
-c "COMMENT":用户的注释信息
-d HOME_DIR: 以指定的路径(不存在)为家目录
-s SHELL: 指明用户的默认shell程序;可用列表在/etc/shells文件中
-G GROUP1[,GROUP2,…]:为用户指明附加组,组必须事先存在
-N 不创建私用组做主组,使用users组做主组
-r: 创建系统用户
示例:创建用户hadoop,附加组为bin和root,默认shell为/bin/csh,注释信息为”Hadoop,I’m coming "
注:多个附加组以”,”逗号分隔
2、查看用户相关信息:
id [options] usename
-u UID:查看用户的UID
-g GID:查看用户的GID
-G Groups:查看的所有组信息,以GID的形式展现
3、设定密码:管理员可为所有设定密码,普通用户只能为自己设定密码
passwd
passwd [OPTIONS] UserName
4、管理用户
创建用户之后想修改用户的配置,使用usermod命令
usermod [OPTION] username
-u UID: 指定新UID
-g GID: 指定新基本组
-G GROUP1[,GROUP2,…[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项,表示append(追加);
-s SHELL:新的默认SHELL;
-c 'COMMENT':新的注释信息;
-d HOME: 新家目录不会自动创建,原家目录中的文件不会同时移动至新的家目录;若要创建新家目录并移动原家数据,同时使用-m选项
-l login_name: 新的名字;
-L: lock指定用户,在/etc/shadow 密码栏的增加 !;此时用户将不可登录系统
-U: unlock指定用户,将 /etc/shadow 密码栏的 ! 拿掉,即解锁
-e YYYY-MM-DD: 指明用户账号过期日期
5、删除用户:
userdel 命令
userdel [OPTION]… username
-r 删除用户及其家目录
四、组管理:
创建、修改、删除
1、创建组
groupadd [OPTION]… group_name
-g GID: 指明GID号
-r: 创建系统组
2、查看组成员或增加、删除组成员
groups [OPTION]. [USERNAME]… 查看用户所属组列表
groupmems [options] [action] 查看或增加、删除组成员
options:
-g, –group groupname 更改为指定组 (只有root)
Actions:
-a, –add username 指定用户加入组
-d, –delete username 从组中删除用户
-p, –purge 从组中清除所有成员
-l, –list 显示组成员列表
例:
删除bin组里面的成员wobushikaqiusha
3、组属性修改: groupmod
groupmod [OPTION]… group
-n group_name: 新名字
-g GID: 新的GID;
4、组删除: groupdel
groupdel GROU
原创文章,作者:M20-1钟明波,如若转载,请注明出处:http://www.178linux.com/27155