本节所讲内容:
用户和组的相关配置文件
管理用户和组
CENTOS7破解root密码
文件基本权限
Linux用户的分类:
根据帐号的位置:本地帐号、远程(域)帐号。 ldap
根据帐号的功能:超级用户(root) UID:0
普通用户
系统用户 UID:1-999
本地用户 UID:1000+ CENTOS6 500
UID:即每个用户的身份标示,类似于每个人的身份证号码.
注:
超级用户: root 至高无上
本地用户: 由管理员创建,权限受到一定的限制,在自己的宿主目录是完整的权限.
系统用户:一般是不会登录系统的,用于维持某个服务程序正常运行.
关于系统用户和组的相关配置文件:
帐号信息 密码信息
用户:/etc/passwd /etc/shadow
组: /etc/group /etc/gshadow
添加用户帐号相关命令:
语法:useradd 用户名 = adduser
常用参数:
-u UID
-d 宿主目录
-g 起始组 #只能有一个
-G 附加组 #可以有多个
-s 登录shell
例:
[root@xuegod60 ~]#useradd cd
[root@xuegod60 ~]# ls/home/
cd
[root@xuegod60 ~]# tail -n 1 /etc/passwd
cd:x:1002:1002::/home/cd:/bin/bash
或:
[root@xuegod60 ~]# tail-1 /etc/passwd
用户帐户的全部信息被保存在/etc/passwd文件。这个文件以如下格式保存了每一个系统帐户的所有信息
(字段以“:”分割)
/etc/passwd 每个字段的作用:
root:x:0:0:root:/root:/bin/bash
用户名 : 密码占位符 : UID : GID : 用户描述 : 用户主目录(bash中"~"代表哪个) : 登录后使用的shell
指定用户UID
指定用户的宿主目录
指定用户的起始组
指定用户附加组
指定用户的登录shell
了解shell
创建用户的另外的命令
useradd或adduser
[root@xuegod60 ~]#adduser honghaier
删除用户:
userdel
-r 抄家 连同宿主目录一起删除
密码的文件
/etc/shadow
root:$6$.BTyNB8Q397zR.KY$412……M8ZHWiidd/:16274:0 : 99999 : 7 : : :
注: 加密码机制
修改用户密码:
修改用户信息:
语法:
#usermod 用户名
常用参数:
-u UID
-d 宿主目录
-g 起始组 #只能有一个
-G 附加组 #可以有多个
-s 登录shell
修改UID
修改shell
修改初始组和附加组
组分类:
根据帐号的位置:本地组、远程(域)组。
根据帐号的功能:超级用户组(root) GID:0
普通用户组
系统用户组 GID:1-999
本地用户 组 GID:1000+
***默认每一个用户都有一个同名的组*** 起始组
/etc/group配置文件结构:
[root@xuegod60 ~]# greprm /etc/group
rm:x:1000:rm
组的密码不常用,但是在组之间切换的时候如果组设置了密码是需要密码的
组的添加和删除
切换用户:
[root@xuegod60 ~]# su – aaa
加上- ,在切换时会把环境变量一起进行切换
id
w #查看登录系统的用户及正在执行的命令
Who 查看登录用户及登录时间
whoami #查看当前登录的用户名
实战:centos7恢复root密码密码恢复
首先重启,按↑↓键,进入如下界面,选择第一项,按下e键进行编辑
在此界面找到ro这一项,并进行修改,改为rw init=/sysroot/bin/sh
改完之后,按下Ctrl+X进入紧急模式
原理:启动一个shell环境,系统并没有真正的启动
换根,修改密码
chroot命令用来在指定的根目录下运行指令
。chroot,即 change root directory (更改 root 目录)。在 linux 系统中,系统默认的目录结构都是以/,即是以根 (root) 开始的。
而在使用 chroot 之后,系统的目录结构将以指定的位置作为/位置
在经过 chroot 命令之后,系统读取到的目录和文件将不在是旧系统根下的而是新根下(即被指定的新的位置)的目录结构和文件,
先退出当前根
重启系统 reboot rhel7是不可以
执行/bin/shshutdown –r now
文件权限管理
查看文件权限
[root@localhost ~]#touch a.txt
[root@localhost ~]# lla.txt
-rw-r--r-- 1 root root0 Feb 15 07:52 a.txt
这一行内容就会文件的权限
文件基本权限
- rwx r-x r-x root root FILENAME
类型 拥有者的权限 所属组的权限 其他人的权限 拥有者 属组 对象
类型:
- 表示:文件 rwx
d 表示:目录wxr
对于文件:r读 w写 x执行
读:可以查看,不能更改,删除
写: 可插入
执行:一般指的是脚本文件
对于目录:r读(看到目录里面有什么及内容) ls
w建文件、删除、移动 touch mkdir rm mv cp
x进入 cd ./
r 可读 w 可写 x 可执行 也可以用八进制的数字代表全权限:0 1 2 3 4 5 6 7
0 代表什么权限也没有
1 x 可执行的
2 w 可写的
3 w+x wx 可执行可写
4 r 可读的
5 r+x
6 r+w
7 r+w+x
使用数字表示权限
- rwx r-x r-x user1 user1 FILENAME
类型 拥有者的权限 所属组的权限 其他人的权限 属主 属组
rwx
r-- -w- --x
100 010 001 二进制 进制转换器
4 2 1 十进制 4+2+1=7
rw- 的值是多少? 4+2 = 6
r-x 的值是多少? 4+1 = 5
rw-r--r-- 的值是多少? rw-=6 r--=4 r--=4 rw-r--r--=644
实战操作:
[root@localhost ~]#chmod 622 a.txt
[root@localhost ~]# lla.txt
-rw--w--w- 1 root root0 Feb 15 07:52 a.txt
[root@localhost ~]#
修改权限的相关命令:
-a 所有的权限 -u 文件所有者的权限 -g 组权限 -o 其他用户的权限
可以使用运算符来设置权限 + - =
chmod
作用:修改文件权限
u-w user 拥有者
g+x group 组
o=r other 其他人
a+x all 所有人
查看文件的权限:
[root@localhost ~]# lla.txt
-rw-r--r-- 1 root root0 Feb 15 07:52 a.txt
操作:用户删除写的权限
[root@localhost ~]#chmod u-w a.txt
[root@localhost ~]# lla.txt
-r--r--r-- 1 root root0 Feb 15 07:52 a.txt
操作:组添加可执行权限:
[root@localhost ~]#chmod g+x a.txt
[root@localhost ~]# lla.txt
-r--r-xr-- 1 root root0 Feb 15 07:52 a.txt
操作:其他人没有读取权限:
[root@localhost ~]#chmod o-r a.txt
[root@localhost ~]# lla.txt
-r--r-x--- 1 root root0 Feb 15 07:52 a.txt
操作:给所有人个读取权限:
[root@localhost ~]#chmod a=r a.txt
[root@localhost ~]# lla.txt
-r--r--r-- 1 root root0 Feb 15 07:52 a.txt
修改目录的权限
[root@localhost ~]#mkdir test
[root@localhost ~]# ll-d test/ 查看test的属性
drwxr-xr-x 2 root root6 Feb 15 08:07 test/
操作:删除拥有者的写权限:
[root@localhost ~]#chmod u-w test/
[root@localhost ~]# ll-d test/
dr-xr-xr-x 2 root root6 Feb 15 08:07 test/
[root@xuegod ~]# ll/etc/shadow
---------- 1 root root1373 1月 31 21:52 /etc/shadow
Root可以
Cat
Vim 修改 保存
修改文件的所属主和所属组
chown
作用:修改文件拥有者和所属组
语法:chown USER:GROUP 对象
chown 用户:组 文件
操作更改属主:
chown 用户 对象
单独更改属组:
chown :组 对象
操作-修改属主和属组:
[root@localhost ~]#chown cd:bin a.txt
[root@localhost ~]# lla.txt
-rw--w--w- 1 cd bin 0Feb 15 07:52 a.txt
操作-单独修改属主:
[root@localhost ~]#chown daemon a.txt
[root@localhost ~]# lla.txt
-rw--w--w- 1 daemon bin0 Feb 15 07:52 a.txt
操作-单独修改属组:
[root@localhost ~]#chown :sys a.txt
[root@localhost ~]# lla.txt
-rw--w--w- 1 daemon sys0 Feb 15 07:52 a.txt
-R递归(目录下的所有内容全部更改,否则只修改目录)