一、用户
(一)户配置文件介绍
1、存储用户信息的文件:/etc/passwd
该目录下面的文件信息:
每行从左往右所代表的信息一次为:(以第一行为例介绍,冒号(:)是作为分隔符使用的)
root | :x | :0 | :0 | :root | :/root | :/bin/bash |
---|---|---|---|---|---|---|
用户名称 | :用户密码 | :用户UID | :用户GID | :用户说明 | :用户家目录 | :shell解释器 |
各个字段的详细说明
字段名称 | 注释说明 |
---|---|
用户名称 | 与用户的UID相对应,用户登录时使用的用户名称,在系统中唯一,不能重复 |
用户密码 | 在文件当中可以看到一个字母x,表示该用户的密码是保护在/etc/shadow 文件中 |
用户UID | 用户UID一般是由一个整数来表示,默认的范围是0-60000,最大可以达到965535 |
用户组GID | 用户组GID一般也是由一个整数来表示,范围与最大值与用户UID相同,添加用户时,默认情况下会同时建立一个与用户同名且同ID的组 |
用户说明 | 对用户的描述和说明 |
shell解释器 | 当前用户登录后所使用的的解释器,一般默认的解释器是bash,也可以通过usermod或者手工修改passwd配置,将解释器类型更改为/sbin/nologin即可(表示禁止登录系统,这是出于安全考虑的配置) |
2、存储用户密码信息 的文件:/etc/shadow
该目录下面的文件信息:
每行从左往右所代表的信息一次为:(以第一行为例介绍,冒号(:)是作为分隔符使用的)
字段名称 | 注释说明 |
---|---|
用户名称 | 用户名称 |
用户密码 | 该密码是加密过的字符段 |
最近更改密码的时间 | 从1970年1月1日起,到用户最近一次更改密码的天数 |
禁止修改密码的天数 | 从1970年1月1日起,到用户可以更改密码的天数 |
用户必须修改密码的天数 | 从1970年1月1日起,到用户必须更改密码的天数 |
警告更改密码的期限 | 在用户密码过期之前多少天提醒用户更改密码 |
不活动的时间 | 用户密码过期之后到禁止使用账户的天数 |
失效时间 | 从1970年1月1日起,到用户被禁用的天数 |
标志 | 保留 |
(二)用户管理的常用命令
1、(增)useradd:用户添加命令
命令使用方式:useradd [option(选项)] [login(用户)]
命令常用的参数说明:
参数选项 | 说明 |
---|---|
-g | initial_group指定新用户所属的用户组,用户名需为系统现存的名称 |
-G ,[…] | 将新用户指定为多个不同用户组的成员 |
-M | 不建立用户的家目录,其优先于/etc/login.defs文件的设定(一般简历虚拟用户时不建立家目录) |
-s | shell,用户登录后使用的解释器的名称,默认为bash |
-u | uid,指定用户的ID值,就是所谓的UID |
特殊的用法:useradd -D -------加参数改变配置文件/etc/default/useradd文件的默认的设置的值,参数表如下所示
useradd -D参数选项 | 注释说明 |
---|---|
-b | default_home,定义用户所属目录的前一个目录 |
-e | /default_expire_date,用户的停止日期 |
-f | default_inactive,用户过期后几日停权 |
-g | default_group,新用户起始用户组或者ID,用户名需为现存的名称,用户组ID也需为现存的用户组 |
-s | default_Shell,用户登录后使用的解释器 |
与创建用户相关的文件介绍:
目录文件 | 说明 |
---|---|
/etc/login.defs | 预先定义创建用户时需要的一些用户默认的配置信息 |
/etc/login.defs目录下文件主要参数说明:
目录文件 | 说明 |
---|---|
/etc/default/useradd | 使用useradd添加用户时预先加载的默认用户信息配置文件 |
/etc/default/useradd目录下文件主要参数说明:
目录文件 | 说明 |
---|---|
/etc/skel | 存放新用户需要的所有基础环境变量文件的目录,当添加新用户时,这个目录下所有的文件都会被自动复制到新添加的用户的家目录下 |
/etc/skel目录下文件主要参数说明
2、(删)userdel:
命令使用方式:userdel [optiong(选项)] [login(用户)]
常用的参数说明:
参数选项 | 解释说明 |
---|---|
-f | 强制删除用户,即使用户当前是登录状态 |
-r | 删除用户的同时,删除与用户相关的所有的文件 |
3、(改)usermod:用户信息修改
命令使用方式:usermod [option(选项)] [login(用户名)]
重要的参数选项说明:
参数选项 | 解释说明 |
---|---|
-g | initial_group,修改用户所对应的用户组,与useradd -g 的功能一样 |
-M | 不建立用户的家目录,优先于/etc/login.defs文件设定 |
-s | shell,修改用户登录后使用的shell解释器名称,与useradd -s 的功能一样 |
-u | uid,修改用户的UID值,与useradd -u 的功能一样 |
4、(改)passwd:用户密码修改
命令使用方式:passwd [option(选项)] [username(用户名)]
1)在当前用户命令行下直接执行passwd不在后面指定用户就是修改当前用户的密码;
2)在passwd后面指定用户的就是修改指定的用户的密码。
常用的参数选项说明:
参数选项 | 解释说明 |
---|---|
–stdin | 从标准输入读取密码字符串 |
-d | 删除用户的密码,使用的密码为空(仅root用户拥有此权限) |
-u | 解除对对用户的锁定,仅root用户拥有此权限 |
批量更新用户的密码:chpasswd
使用方法:
在命令行直接输入命令:chpasswd,然后输入所要更改的用户和密码,输入格式为:用户名:(冒号)密码,输完之后ctrl+D 结束输入,即可
5、(查)用户查询
用法:再接在命令行输入命令id+用户即可
whoami:查看当前登录的用户
w:显示当前的用户以及展示他做了什么的信息
6、su:用户身份切换
用法:su [option(选项)] [user(用户名)]
命令格式:su -(用户名)切换到所要去的用户,输入密码后就可到达
7、sudo:以另外一个用户的身份执行命令
要执行sudo首先要了解visudo:编辑sudoers文件的工具
管理员(root)可以通过在visudo(即编辑/etc/soduers下的文件)来赋予其他用户在所需地方拥有管理员的权利,在管理员命令行直接执行visudo就可以编辑/etc/sudoers下的文件,赋予权限的命令大约第100行的位置:
上图102行的位置就是赋予oldgirl用户,拥有useradd(添加用户)与userdel(删除用户)的权利,在oldgirl用户下执行useradd或者userdel命令前还要加上sudo,例如:输入命令:sudo useradd (用户名),方可添加用户(注意:书写要规范,不然执行不成功)
二、用户组
(一)、用户组配置文件介绍
1、存储用户组信息的文件:/etc/group
该目录下的文件信息:
每行从左往右所代表的信息一次为:(以第一行为例介绍,冒号(:)是作为分隔符使用的)
字段名称 | 注释说明 |
---|---|
用户组名 | 用户组的名称 |
用户组密码 | 通常不需要设置密码,基于安全的原因,改密码被记录在/etc/gshadow中 |
GID | 用户组的GID |
用户组成员 | 这个组下面的所有的用户 |
2、存储用户组密码的文件:/etc/gshadow
该目录下面的文件信息:
每行从左往右所代表的信息一次为:(以第一行为例介绍,冒号(:)是作为分隔符使用的)
字段名称 | 注释说明 |
---|---|
用户组名 | 用户组的名称 |
用户组密码 | 这个段可以是“!”,如果是空或者是没有“!”则表示没有密码 |
用户组管理员用户 | 用户组管理者,这个字段也可以为空,如果存在多个用户管理者,则用逗号“,”分隔开 |
用户组成员 | 加入这个组的所有的成员,多个也是用逗号“,”分隔开 |
(二)用户组管理常用的命令
1、(增)groupadd:添加用户组
命令使用方式:groupadd [option(选项)] [group(用户组)]
常用的参数选项说明:
参数选项 | 解释说明 |
---|---|
-g | gid,指定用户的GID,除非接参数 -o,否则ID值唯一且不为负,不指定的话GID从500开始 |
-f | 新增一个用户组,强制覆盖已经存在的组用户 |
2、(删)groupdel:删除用户组
命令使用方式:groupadd [group(用户组)]
此命令直接使用没有参数选项