目录
2. 用户标识UID(User IDentity ,用户标识号)
4. 删除组账号groupdel,查询用户账号所属组groups,查询用户账号身份标识id。
一.管理用户账号
1.用户账号概述
1. 用户账号分类
超级用户: root用户是Linux操作系统中默认的超级用户账号,对本主机拥有最高的权限,系统中超级用户是唯一的。
普通用户: 由root用户或其他管理员用户创建,拥有的权限会受到限制,一般只在用户自己的宿主目录中拥有完整权限。
程序用户: 在安装Linux操作系统及部分应用程序时,会添加一些特定的低权限用户账号,这些用户一般不允许登录到系统,仅用于维持系统或某个程序的正常运行,如bin、daemon、ftp、mail等。
2. 用户标识UID(User IDentity ,用户标识号)
root用户账号的UID固定值0
程序用户账号的UID默认为Centos5,6: 1~499,Centos7: 1~ 999
普通用户的UID默认为Centos5, 6: 500~ 65535,Centos7: 1000~ 65535
3. 用户账号文件
作用: 保护用户名称、宿主目录、登录shell等基本信息
每一行对应一个用户的账号记录
文件位置:
/etc/passwd :保存用户名称、宿主目录、登录shell等基本信息
/etc/shadow :保存用户的账号、密码等有效信息
每一行对应一个用户的账号记录
/etc/passwd: 超级用户root及程序用户的账号信息
head -5 /etc/passwd
基于系统运行和管理需要,所有用户都可以访问passwd文件中的内容,但是只有root用户才能修改。passwd文件的每一行内容中,包含了7个用冒号“:”分割的配置字段,从左到右各配置字段的含义分别如下述:
root:x:0:0:root:/root:/bin/bash
- 用户账号名称
- 用户密码占位符
- 用户的UID号
- 所属基本组账号的GID账号
- 第二个root:用户描述,用户全名
- 第三个/root;宿主目录
- bin/bash :登录Shell信息(/bin/bash为可登录系统,/sbin/nologin和bin/false为禁用户登录系统)
/etc/shadow: 各用户账号的密码信息
shadow文件又被称为“影子文件”,其中保存有各用户账号的密码信息,默认只有root用户能够读取文件中的内容,而不允许直接编辑该文件的内容。
shadow文件的每一行内容中,包含了7个用冒号“:”分割的配置字段,从左到右各配置字段的含义分别如下述:
root:$6$f3oWfHviZBu16xNf$p0e5URNKa6nkdOv7XKjxD2rLB6O7Ly7ku8P3j2SfARYQKxc7wMIFnGu56Zv0zZUk00
yfqvF.m1RefyLaiI14R.::0:99999:7:::
字段1:用户账号的名称; (root)
字段2:使用SHA512加密的密码字串信息,当为“*”或“!!”时表示此用户不能登陆到系统。若该字段内容为空,则该用户无需密码即可登录
字段3:上次修改密码时间,表示从1970年01月01日算起到最近一次修改密码是间隔的天数;
字段4:,密码的最短有效天数,自本次修改密码后,必须至少经过该天数才能再次修改密码。默认值为0,表示不进行限时;
字段5:
字段6:提前多少天警告用户密码将过期,默认值为7;每次登录系统都会向用户发出修改密码警告;
字段7:在密码过期多少天之后禁用此用户;
字段8:账年号失效时间,此字段指定了用户作废的天数(从1970年01月01日起计算),默认值为空,表示账号永久可用;
字段9:“保留字段(未使用)”,没有特殊用途。
2.用户账户管理
1.修改账号和密码期限——chage
总结 | ||
第一字段 | 密码最后一次修改时间 | chage -d(date) 用户 |
第四字段 | 密码最小修改间隔时间 | chage -m |
第五字段 | 密码的有效期 | chage -M |
第六字段 | 密码需要变更前的警告天数 | chage -W |
第七字段 | 列出用户以及密码的有效期 | chage -l |
第八字段 | 账号失效时间 | chage -E |
格式如上 chage -[选项] 用户(我的是summer)
2. 添加用户账号——useradd
3. 设置/更改用户口令——passwd
root用户可以指定用户名作为参数,对指定账号的密码进行管理;不指定用户名时,修改当前账号的密码。
普通用户却只能执行单独的"passwd"命令修改自己的密码
格式为passwd [选项] 用户
选项 | 说明 |
-d | 清空指定用户的密码,仅使用用户名即可登录系统 |
-l | 锁定用户账户,锁定的用户账号将无法再登录系统 |
-S | 查看用户账户的状态(是否被锁定) |
-u | 解锁用户账户 |
4 .修改用户账号属性——usermod
格式为 usermod [选项] 用户
选项 | 说明 |
-u | 修改用户的UID号 |
-d | 修改用户的宿主目录位置 |
-e | 指定用户的账户失效时间,,可使用YYYY-MM-DD的日期格式 |
-g | 指定用户的基本组名(或使用GID号) |
-G | 指定用户的附加组名(或使用GID号) |
-s | 指定用户的登录shell (/sbin/nologin 和/sbin/false未禁止用户登录系统) |
以上和useradd相同 | |
-l(小写的L) | 更改用户账号的登录名称 |
-L | 锁定用户账户 |
-u(passwd) | 解锁用户账户 |
-U | 解锁用户账户 |
5. 删除用户账号——userdel
userdel [-r] 用户名
-r | 添加此选项时,可将该用户的宿主目录一并删除 |
二.删除历史记录(保护密码)
选项 | 说明 |
history -c | 清除历史记录 |
history -r /root/history.txt | 把命令度进来当做bash历史记录 |
history -w /root/history.txt | 把当前bash的历史记录写入history.txt |
echo “history -c”>> ~/.bash_logout | |
echo “history -c”>> ~/.bash_profile |
三.管理组账号
1.组账号概述
1. 组账号文件命令
文件名 | 说明 |
/etc/group | 保存组账号基本信息 |
/etc/gshadow | 保存组账号的密码信息 |
2 .四个字段都代表什么
tail -1 /etc/group 查看组账户基本信息最后一行
字段 | 说明 |
字段1 | 组账号的名称 |
字段2 | 占位符"x" |
字段3 | 组账号的GID号 |
字段4 | 组账号包含的用户成员(一般不包括基本组对应的用户帐号),多个成员之间以逗号”,"分隔 |
2.添加组账号---groupadd命令
groupadd -g GID 组名
3. 添加、设置、删除组成员——gpasswd
选项 | 说明 |
-a | 向组内添加一个用户 |
-d | 向组内删除一个用户 |
-M | 定义组内成员列表,以逗号分隔 |
格式gpasswd [选项] 用户
4. 删除组账号groupdel,查询用户账号所属组groups,查询用户账号身份标识id。
命令 | 说明 |
groupdel 组账号 | 删除组账号 |
groups用户名 | 查询用户账号所属组 |
id用户名 | 查询用户账号身份标识 |
四.文件/目录的权限及归属
1 .查看文件/目录的权限和归属
访问权限 | 说明 |
r | 可以读取获得内容 |
w | 允许修改内容新建,移动,删除目录 |
x | 允许切换目录,运行程序 |
文件所有者,文件所属住,其他用户 rwx rwx rwx
2.设置文件和目录权限——chmod
格式 字符的:chmod [u,g,o,a....] [=+-] [rwx]
格式 数字的:chmod nnn 文件/目录
权限 | 说明 |
4 | r(可读) |
2 | w(可写) |
1 | x(可执行) |
例如(4+2+1)7(4+2+1)7(4+2+1)7就代表文件所有者,文件所属住,其他用户 rwx rwx rwx
3 设置文件/目录归属——chown/charp
常用选项: -R 递归修改指定目录下所有子项的权限
有缺漏请各位大佬私聊或者评论区补充
谢谢大家阅读~