权限的(基本概述、设置案例、对文件或者目录的影响)文件&目录权限的设置案例、属主属组设置、Umask控制权限、day14作业讲解

day15

1. 权限的基本概述


什么是权限 

系统对用户所能执行的功能的限制     


为什么要有权限

为了保护每个用户的自己的工作环境和隐私 


权限跟用户有什么关系  

属主    User        u

属组	  Group       g

其他人  others      o

					a    所有
					
对应了三个基础权限

r		可读    readable				4

w		可写	  writable				2

x		可执行	  executable			1

-		没有权限	权限位占位符  		0

[root@qls ~]# ls -l
total 61152
-rw-r--r--. 1 root root       39 Jul 17 19:16 123.txt
-rw-r--r--. 1 root root  9272936 Jul 17 12:01 access.log


-               rw-     r--     r--     644

文件的类型       属主     属组     匿名 

                    每三个为一组

                   第一个对应 可读  r

                   第二个对应  可写 w

                   第三个对应  可执行 x

                   没有此权限则用-代替 


为什么要设置权限,如何设置权限 

设置某个用户对于系统的某个资源拥有什么样管理权力 

chmod		#设置权限的命令 

选项:	

	-R		#针对目录设置权限  赋予目录及目录以下所有文件的权限 


只有root管理员才可以修改任何人的权限  普通用户只能修改自己的权限  


2. 权限的设置案例



-rwxrw-r--	 test01   dev    file.txt

test01   user01属于dev组     qls01属于qls01组

三个用户分别对这个文件拥有什么权限 


test01是文件的所有者    可读  可写 可执行权限 

user01属于dev组,dev组所拥有的权限,user01同样拥有   可读 可写 权限 

qls01不属于dev组,对于此文件来说,就是一个陌生人  拥有匿名用户的权限  可读 



判断一个用户对一个文件拥有什么权限 

1. 系统会判断该用户是否为所有者,如果是,则按照属主的权限进行访问

2. 如果不是所有者,则判断该用户是否为所属组,如果是,则按照所属组的权限进行访问 

3. 如果此用户不是所有者,也不是所属组,则按照匿名用户进行访问



修改权限的两种方法:


字母进行修改

u   属主   

g	属组

o	匿名用户

a	所有用户

权限字母

r		可读

w		可写

x		可执行

-		没有权限


赋予的方式

+		#添加权限

-		#收回某个权限

=		#覆盖之前的权限 


#添加权限

[root@qls ~]# ll
total 4
-rw-r--r-- 1 root root 158 Jul 23 09:06 hosts
[root@qls ~]# chmod  u+x  hosts 
[root@qls ~]# ll
total 4
-rwxr--r-- 1 root root 158 Jul 23 09:06 hosts
[root@qls ~]# chmod g+wx hosts
[root@qls ~]# ll
total 4
-rwxrwxr-- 1 root root 158 Jul 23 09:06 hosts
[root@qls ~]# chmod  o+w  hosts 
[root@qls ~]# ll
total 4
-rwxrwxrw- 1 root root 158 Jul 23 09:06 hosts


[root@qls ~]# chmod a+x  hosts 
[root@qls ~]# ll
total 4
-rwxrwxrwx 1 root root 158 Jul 23 09:06 hosts


#收回权限

#a可以省略 

[root@qls ~]# chmod   -x  hosts 
[root@qls ~]# ll
total 4
-rw-rw-rw- 1 root root 158 Jul 23 09:06 hosts


[root@qls ~]# chmod u-w  hosts 
[root@qls ~]# ll
total 4
-r--rw-rw- 1 root root 158 Jul 23 09:06 hosts
[root@qls ~]# chmod  g-w,o-rw  hosts
[root@qls ~]# ll
total 4
-r--r----- 1 root root 158 Jul 23 09:06 hosts
[root@qls ~]# 

#覆盖之前的所有权限

[root@qls ~]# chmod a=rw  hosts 
[root@qls ~]# ll
total 4
-rw-rw-rw- 1 root root 158 Jul 23 09:06 hosts


[root@qls ~]# chmod  o=-  hosts
[root@qls ~]# ll
total 4
-rw-rw---- 1 root root 158 Jul 23 09:06 hosts



根据数字进行修改    会把原来的权限全部覆盖掉 

-R		#给目录的权限及目录以下的所有文件或者子目录都设置统一权限

[root@qls ~]# chmod 644  hosts 
[root@qls ~]# ll
total 4
-rw-r--r-- 1 root root 158 Jul 23 09:06 hosts

[root@qls ~]# mkdir  data
[root@qls ~]# ll
total 4
drwxr-xr-x 2 root root   6 Jul 23 09:35 data
-rw-r--r-- 1 root root 158 Jul 23 09:06 hosts
[root@qls ~]# cp /etc/hosts  data/
[root@qls ~]# ll data/
total 4
-rw-r--r-- 1 root root 158 Jul 23 09:35 hosts
[root@qls ~]# ll -d data/
drwxr-xr-x 2 root root 19 Jul 23 09:35 data/
[root@qls ~]# chmod 700  data/
[root@qls ~]# ll -d data/
drwx------ 2 root root 19 Jul 23 09:35 data/
[root@qls ~]# ll data/
total 4
-rw-r--r-- 1 root root 158 Jul 23 09:35 hosts
[root@qls ~]# chmod -R  755  data/
[root@qls ~]# ll -d data/
drwxr-xr-x 2 root root 19 Jul 23 09:35 data/
[root@qls ~]# ll data/
total 4
-rwxr-xr-x 1 root root 158 Jul 23 09:35 hosts


#权限设置案例

/opt/test   针对于此目录    

属主为root  属组为dev     dev01  dev02  

属主拥有所有权限

属组拥有可读 可写权限

其他人没有任何权限 

[root@qls ~]# mkdir  /opt/test
[root@qls ~]# ll /opt/
total 0
drwxr-xr-x 2 root root 6 Jul 23 09:40 test
[root@qls ~]# groupadd   dev
[root@qls ~]# chgrp  dev  /opt/test/
[root@qls ~]# ll /opt/
total 0
drwxr-xr-x 2 root dev 6 Jul 23 09:40 test
[root@qls ~]# chmod 760  /opt/test/
[root@qls ~]# ll /opt/
total 0
drwxrw---- 2 root dev 6 Jul 23 09:40 test

3. 权限对文件或者目录的影响



权限对文件或者目录的影响


权限				文件								          目录

r		可以查看文件内容  cat head tail               浏览目录及子目录的列表  ls tree			


w		可以新增,修改文件内容的权利 vim echo > >>	  可以新建或者删除,移动目录中的文件的权利


x		可以执行文件的权利 脚本                         可以进入目录   cd  



4. 文件权限设置案例



r权限

[root@qls ~]# echo  "hostname"  >> /opt/file.txt

[root@qls ~]# ll /opt/
total 4
-rw-r--r-- 1 root root 9 Jul 23 09:57 file.txt

[root@qls ~]# useradd   qls01
[root@qls ~]# 
[root@qls ~]# echo "1" | passwd  --stdin  qls01
Changing password for user qls01.
passwd: all authentication tokens updated successfully.


[root@qls ~]# su  -  qls01
Last login: Thu Jul 23 09:59:14 CST 2020 on pts/0
[qls01@qls ~]$ ll /opt/
total 4
-rw-r--r-- 1 root root 9 Jul 23 09:57 file.txt
drwxrw---- 2 root dev  6 Jul 23 09:40 test
[qls01@qls ~]$ cat /opt/file.txt 
hostname
[qls01@qls ~]$ head /opt/file.txt
hostname
[qls01@qls ~]$ tail /opt/file.txt
hostname


[qls01@qls ~]$ vim  /opt/file.txt
[qls01@qls ~]$ echo "123"  >> /opt/file.txt
-bash: /opt/file.txt: Permission denied
[qls01@qls ~]$ /opt/file.txt 
-bash: /opt/file.txt: Permission denied


#文件只有r权限时,是可以正常查看文件内容的,不可以修改或者执行文件的权限


w权限


[root@qls ~]# chmod  o=w  /opt/file.txt 
[root@qls ~]# ll /opt/file.txt
-rw-r---w- 1 root root 9 Jul 23 09:57 /opt/file.txt

[root@qls ~]# su - qls01
Last login: Thu Jul 23 10:00:14 CST 2020 on pts/0
[qls01@qls ~]$ cat /opt/file.txt 
cat: /opt/file.txt: Permission denied
[qls01@qls ~]$ vim /opt/file.txt
[qls01@qls ~]$ cat /opt/file.txt
cat: /opt/file.txt: Permission denied
[qls01@qls ~]$ /opt/file.txt
-bash: /opt/file.txt: Permission denied

[root@qls ~]# cat  /opt/file.txt 
uirethruie

[qls01@qls ~]$ echo "test"  >> /opt/file.txt 
[qls01@qls ~]$ echo "test"  > /opt/file.txt 

[root@qls ~]# cat  /opt/file.txt 
uirethruie
test
[root@qls ~]# cat  /opt/file.txt 
test


#只有w权限时, 无法查看和执行文件的权限  使用vim编辑文件文件时,无法查看里面的内容,可以进行编辑,但是需要强制保存,但是保存之后,原来的内容被覆盖了  可以使用echo命令进行追加或者重定向内容进去


x权限

[root@qls ~]# chmod o=x  /opt/file.txt 
[root@qls ~]# ll /opt/file.txt
-rw-r----x 1 root root 5 Jul 23 10:09 /opt/file.txt
[root@qls ~]# su - qls01
Last login: Thu Jul 23 10:08:38 CST 2020 on pts/0
[qls01@qls ~]$ ll /opt/file.txt 
-rw-r----x 1 root root 5 Jul 23 10:09 /opt/file.txt
[qls01@qls ~]$ cat /opt/file.txt
cat: /opt/file.txt: Permission denied
[qls01@qls ~]$ echo "123" >> /opt/file.txt
-bash: /opt/file.txt: Permission denied
[qls01@qls ~]$ /opt/file.txt
bash: /opt/file.txt: Permission denied

#文件只有x权限  什么都干不了 



rw权限 

[root@qls ~]# chmod   o=rw  /opt/file.txt 
[root@qls ~]# ll /opt/file.txt
-rw-r--rw- 1 root root 5 Jul 23 10:09 /opt/file.txt
[root@qls ~]# su - qls01
Last login: Thu Jul 23 10:11:27 CST 2020 on pts/0
[qls01@qls ~]$ cat /opt/file.txt 
test
[qls01@qls ~]$ echo "hostname"  > /opt/file.txt
[qls01@qls ~]$ vim /opt/file.txt
[qls01@qls ~]$ cat /opt/file.txt
hostname
pwd
[qls01@qls ~]$ /opt/file.txt
-bash: /opt/file.txt: Permission denied


#经过测试,文件w权限需要r权限的配合  才能正常的修改文件内容 



rx权限


[root@qls ~]# chmod  o=rx  /opt/file.txt 
[root@qls ~]# ll /opt/file.txt
-rw-r--r-x 1 root root 13 Jul 23 10:14 /opt/file.txt
[root@qls ~]# su - qls01
Last login: Thu Jul 23 10:14:16 CST 2020 on pts/0
[qls01@qls ~]$ cat /opt/file.txt 
hostname
pwd
[qls01@qls ~]$ echo "123" > /opt/file.txt
-bash: /opt/file.txt: Permission denied
[qls01@qls ~]$ vim /opt/file.txt
[qls01@qls ~]$ /opt/file.txt
qls
/home/qls01



#经过测试,文件的x权限需要r权限的配合  

wx权限  没有什么用处 


rwx权限  		权限太大 




Permission denied		#权限不足 没有权限 


总结:  权限对文件的影响 

基础不牢,地动山摇!


5. 目录权限设置案例


权限对目录的影响 


r权限     具有可以浏览目录及其子目录下的列表  属性信息  


[root@qls ~]# chmod o=r  /opt/test/
[root@qls ~]# ll /opt/
total 4
-rw-r--r-x 1 root root 13 Jul 23 10:14 file.txt
drwxrw-r-- 2 root root  6 Jul 23 09:40 test
[root@qls ~]# touch  /opt/test/data.{txt,log,sh}
[root@qls ~]# mkdir  /opt/test/oldboy{01..03}
[root@qls ~]# ll /opt/test/
total 0
-rw-r--r-- 1 root root 0 Jul 23 10:51 data.log
-rw-r--r-- 1 root root 0 Jul 23 10:51 data.sh
-rw-r--r-- 1 root root 0 Jul 23 10:51 data.txt
drwxr-xr-x 2 root root 6 Jul 23 10:51 oldboy01
drwxr-xr-x 2 root root 6 Jul 23 10:51 oldboy02
drwxr-xr-x 2 root root 6 Jul 23 10:51 oldboy03

[root@qls ~]# su  -  qls01
Last login: Thu Jul 23 10:51:09 CST 2020 on pts/0

[qls01@qls ~]$ ls   /opt/test/
ls: cannot access /opt/test/data.txt: Permission denied
ls: cannot access /opt/test/data.log: Permission denied
ls: cannot access /opt/test/data.sh: Permission denied
ls: cannot access /opt/test/oldboy01: Permission denied
ls: cannot access /opt/test/oldboy02: Permission denied
ls: cannot access /opt/test/oldboy03: Permission denied
data.log  data.sh  data.txt  oldboy01  oldboy02  oldboy03


[qls01@qls ~]$ ls -l  /opt/test/
ls: cannot access /opt/test/data.txt: Permission denied
ls: cannot access /opt/test/data.log: Permission denied
ls: cannot access /opt/test/data.sh: Permission denied
ls: cannot access /opt/test/oldboy01: Permission denied
ls: cannot access /opt/test/oldboy02: Permission denied
ls: cannot access /opt/test/oldboy03: Permission denied
total 0
-????????? ? ? ? ?            ? data.log
-????????? ? ? ? ?            ? data.sh
-????????? ? ? ? ?            ? data.txt
d????????? ? ? ? ?            ? oldboy01
d????????? ? ? ? ?            ? oldboy02
d????????? ? ? ? ?            ? oldboy03

[qls01@qls ~]$ rm -f  /opt/test/data.log 
rm: cannot remove ‘/opt/test/data.log’: Permission denied
[qls01@qls ~]$ touch /opt/test/data.conf
touch: cannot touch ‘/opt/test/data.conf’: Permission denied
[qls01@qls ~]$ mv /opt/test/data.log  /tmp
mv: cannot stat ‘/opt/test/data.log’: Permission denied

[qls01@qls ~]$ cd  /opt/test/
-bash: cd: /opt/test/: Permission denied

[qls01@qls ~]$ tree  /opt/test/  #没有任何统计 
/opt/test/

0 directories, 0 files


#目录只有r权限,使用ls -l命令查看目录下的列表,会出现一堆的权限不足,但是文件名和文件类型显示出来了,其他的属性信息都是问号   不能对此目录下的文件进行新建或者删除及其移动的操作    也不能切换到这个目录 


w权限


[root@qls ~]# chmod  o=w  /opt/test/
[root@qls ~]# ll /opt/
total 4
-rw-r--r-x 1 root root  13 Jul 23 10:14 file.txt
drwxrw--w- 5 root root 101 Jul 23 10:51 test


[root@qls ~]# su  -  qls01
Last login: Thu Jul 23 10:52:22 CST 2020 on pts/0
[qls01@qls ~]$ ls /opt/test/
ls: cannot open directory /opt/test/: Permission denied
[qls01@qls ~]$ ls -l /opt/test/
ls: cannot open directory /opt/test/: Permission denied
[qls01@qls ~]$ cd /opt/test/
-bash: cd: /opt/test/: Permission denied
[qls01@qls ~]$ touch  /opt/test/123.txt
touch: cannot touch ‘/opt/test/123.txt’: Permission denied
[qls01@qls ~]$ rm -f  /opt/test/data.log
rm: cannot remove ‘/opt/test/data.log’: Permission denied
[qls01@qls ~]$ mv /opt/test/data.log  /tmp/
mv: cannot stat ‘/opt/test/data.log’: Permission denied
[qls01@qls ~]$ cp /opt/test/data.log /tmp
cp: cannot stat ‘/opt/test/data.log’: Permission denied
[qls01@qls ~]$ cp /opt/test/data.log /tmp
cp: cannot stat ‘/opt/test/data.log’: Permission denied
[qls01@qls ~]$ mv /opt/test/data.log  /tmp/
mv: cannot stat ‘/opt/test/data.log’: Permission denied
[qls01@qls ~]$ rm -f  /opt/test/data.log
rm: cannot remove ‘/opt/test/data.log’: Permission denied
[qls01@qls ~]$ ll -d /opt/
drwxrwxrwx 3 root root 34 Jul 23 09:57 /opt/

#只有w权限时,目录什么都做不了 


x权限		进入目录

[root@qls ~]# su - qls01
Last login: Thu Jul 23 10:57:51 CST 2020 on pts/0
[qls01@qls ~]$ cd  /opt/test/
[qls01@qls test]$ ls
ls: cannot open directory .: Permission denied
[qls01@qls test]$ ls -l
ls: cannot open directory .: Permission denied
[qls01@qls test]$ rm -f  data.log
rm: cannot remove ‘data.log’: Permission denied
[qls01@qls test]$ touch  data.conf
touch: cannot touch ‘data.conf’: Permission denied
[qls01@qls test]$ mv data.log /tmp/
mv: cannot move ‘data.log’ to ‘/tmp/data.log’: Permission denied
[qls01@qls test]$ cp data.log  /tmp/
[qls01@qls test]$ ll /tmp/
total 4
drwxr-xr-x. 2 root  root   51 Jul 17 17:59 data1
drwxr-xr-x. 2 root  root   51 Jul 17 17:59 data2
drwxr-xr-x. 2 root  root   51 Jul 17 17:59 data3
-rw-r--r--  1 qls01 qls01   0 Jul 23 11:03 data.log

#目录只有x权限时,可以切换到目录中,无法查看目录列表信息  也无法进行删除、新建、移动等操作   可以进行复制操作 


rw权限		


[root@qls ~]# chmod o=rw  /opt/test/
[root@qls ~]# ll /opt/
total 4
-rw-r--r-x 1 root root  13 Jul 23 10:14 file.txt
drwxrw-rw- 5 root root 101 Jul 23 10:51 test
[root@qls ~]# su - qls01
Last login: Thu Jul 23 11:06:21 CST 2020 on pts/0
[qls01@qls ~]$ cd /opt/test/
-bash: cd: /opt/test/: Permission denied
[qls01@qls ~]$ ls /opt/test/
ls: cannot access /opt/test/data.txt: Permission denied
ls: cannot access /opt/test/data.log: Permission denied
ls: cannot access /opt/test/data.sh: Permission denied
ls: cannot access /opt/test/oldboy01: Permission denied
ls: cannot access /opt/test/oldboy02: Permission denied
ls: cannot access /opt/test/oldboy03: Permission denied
data.log  data.sh  data.txt  oldboy01  oldboy02  oldboy03
[qls01@qls ~]$ ls -l /opt/test/
ls: cannot access /opt/test/data.txt: Permission denied
ls: cannot access /opt/test/data.log: Permission denied
ls: cannot access /opt/test/data.sh: Permission denied
ls: cannot access /opt/test/oldboy01: Permission denied
ls: cannot access /opt/test/oldboy02: Permission denied
ls: cannot access /opt/test/oldboy03: Permission denied
total 0
-????????? ? ? ? ?            ? data.log
-????????? ? ? ? ?            ? data.sh
-????????? ? ? ? ?            ? data.txt
d????????? ? ? ? ?            ? oldboy01
d????????? ? ? ? ?            ? oldboy02
d????????? ? ? ? ?            ? oldboy03
[qls01@qls ~]$ touch  /opt/test/data.conf
touch: cannot touch ‘/opt/test/data.conf’: Permission denied
[qls01@qls ~]$ rm -f /opt/test/data.log
rm: cannot remove ‘/opt/test/data.log’: Permission denied
[qls01@qls ~]$ mv /opt/test/data.log /tmp/
mv: cannot stat ‘/opt/test/data.log’: Permission denied
[qls01@qls ~]$ cp /opt/test/data.txt  /tmp/
cp: cannot stat ‘/opt/test/data.txt’: Permission denied


#rw权限 跟只有r权限作用是一样的  


rx权限   

[root@qls ~]# chmod o=rx  /opt/test/
[root@qls ~]# ll /opt/
total 4
-rw-r--r-x 1 root root  13 Jul 23 10:14 file.txt
drwxrw-r-x 5 root root 101 Jul 23 10:51 test
[root@qls ~]# su - qls01
Last login: Thu Jul 23 11:10:14 CST 2020 on pts/0
[qls01@qls ~]$ cd  /opt/test/
[qls01@qls test]$ ls
data.log  data.sh  data.txt  oldboy01  oldboy02  oldboy03
[qls01@qls test]$ ls -l
total 0
-rw-r--r-- 1 root root 0 Jul 23 10:51 data.log
-rw-r--r-- 1 root root 0 Jul 23 10:51 data.sh
-rw-r--r-- 1 root root 0 Jul 23 10:51 data.txt
drwxr-xr-x 2 root root 6 Jul 23 10:51 oldboy01
drwxr-xr-x 2 root root 6 Jul 23 10:51 oldboy02
drwxr-xr-x 2 root root 6 Jul 23 10:51 oldboy03
[qls01@qls test]$ touch  data.conf
touch: cannot touch ‘data.conf’: Permission denied
[qls01@qls test]$ rm -f data.log 
rm: cannot remove ‘data.log’: Permission denied
[qls01@qls test]$ mv data.txt /tmp/
mv: cannot move ‘data.txt’ to ‘/tmp/data.txt’: Permission denied
[qls01@qls test]$ cp  data.txt  /tmp/
[qls01@qls test]$ ll /tmp/
total 4
drwxr-xr-x. 2 root  root   51 Jul 17 17:59 data1
drwxr-xr-x. 2 root  root   51 Jul 17 17:59 data2
drwxr-xr-x. 2 root  root   51 Jul 17 17:59 data3
-rw-r--r--  1 qls01 qls01   0 Jul 23 11:03 data.log
-rw-r--r--  1 qls01 qls01   0 Jul 23 11:13 data.txt


#目录拥有rx权限时,可以正常的查看目录列表信息,属性信息,也可以进入目录,可以复制文件到其他目录,但是不能执行新建、删除、移动等操作 



wx权限

[root@qls ~]# chmod o=wx  /opt/test/
[root@qls ~]# ll /opt/
total 4
-rw-r--r-x 1 root root  13 Jul 23 10:14 file.txt
drwxrw--wx 5 root root 101 Jul 23 10:51 test
[root@qls ~]# su - qls01
Last login: Thu Jul 23 11:12:31 CST 2020 on pts/0
[qls01@qls ~]$ cd /opt/test/
[qls01@qls test]$ ls
ls: cannot open directory .: Permission denied
[qls01@qls test]$ touch  123.txt
[qls01@qls test]$ ls
ls: cannot open directory .: Permission denied
[qls01@qls test]$ rm -f data.log
[qls01@qls test]$ mv data.txt  /tmp/
[qls01@qls test]$ ls
ls: cannot open directory .: Permission denied


#目录拥有wx权限时,可以进入目录,可以新建,删除、移动文件的权利  但是查看不了目录的列表及属性信息 


总结: 权限对目录的影响 


对目录设置权限时,不能离开x权限 

对文件设置权限时,不能离开r权限 

 

6. 属主属组设置



chown  #设置属主属组   只有root管理员才可以进行设置    

选项:

	-R		#递归设置 设置目录及其目录以下的所有文件

[root@qls ~]# ll /opt/
total 4
-rw-r--r-x 1 root root 13 Jul 23 10:14 file.txt
drwxrw--wx 5 root root 84 Jul 23 11:17 test
[root@qls ~]# chown qls01   /opt/file.txt 		#默认设置的是属主  
[root@qls ~]# ll /opt/
total 4
-rw-r--r-x 1 qls01 root 13 Jul 23 10:14 file.txt
drwxrw--wx 5 root  root 84 Jul 23 11:17 test

[root@qls ~]# chown  .qls01  /opt/file.txt 		#设置属组 
[root@qls ~]# ll /opt/
total 4
-rw-r--r-x 1 qls01 qls01 13 Jul 23 10:14 file.txt
drwxrw--wx 5 root  root  84 Jul 23 11:17 test

[root@qls ~]# chown  root.root  /opt/file.txt 	#同时设置属主属组 
[root@qls ~]# ll /opt/
total 4
-rw-r--r-x 1 root root 13 Jul 23 10:14 file.txt
drwxrw--wx 5 root root 84 Jul 23 11:17 test

[root@qls ~]# chown  qls01.qls01  /opt/test/		#只设置目录
[root@qls ~]# ll -d /opt/test/
drwxrw--wx 5 qls01 qls01 84 Jul 23 11:17 /opt/test/
[root@qls ~]# ll /opt/test/
total 0
-rw-rw-r-- 1 qls01 qls01 0 Jul 23 11:17 123.txt
-rw-r--r-- 1 root  root  0 Jul 23 10:51 data.sh
drwxr-xr-x 2 root  root  6 Jul 23 10:51 oldboy01
drwxr-xr-x 2 root  root  6 Jul 23 10:51 oldboy02
drwxr-xr-x 2 root  root  6 Jul 23 10:51 oldboy03
[root@qls ~]# chown -R  qls01.qls01  /opt/test/		#递归设置 
[root@qls ~]# ll /opt/test/
total 0
-rw-rw-r-- 1 qls01 qls01 0 Jul 23 11:17 123.txt
-rw-r--r-- 1 qls01 qls01 0 Jul 23 10:51 data.sh
drwxr-xr-x 2 qls01 qls01 6 Jul 23 10:51 oldboy01
drwxr-xr-x 2 qls01 qls01 6 Jul 23 10:51 oldboy02
drwxr-xr-x 2 qls01 qls01 6 Jul 23 10:51 oldboy03


chgrp		#设置属组   


[root@qls ~]# chgrp   root  /opt/test/
[root@qls ~]# ll -d /opt/test/
drwxrw--wx 5 qls01 root 84 Jul 23 11:17 /opt/test/



7. Umask控制权限


[root@qls ~]# ll
total 4
drwxr-xr-x 2 root root   6 Jul 23 11:21 123
-rw-r--r-- 1 root root   0 Jul 23 11:21 123.txt

系统中为什么新创建的目录的权限为755,文件的权限为644

都是由系统的控制权限所控制的

umask		#控制权限的命令 

[root@qls ~]# umask
0022


系统中是如何计算权限 

系统新创建的目录的权限由最大权限777减去umask控制权限022得到的就是755,所以说新创建的目录的权限为755,新创建文件的权限由文件最大权限666减去umask控制权限022,得到644权限,所以说新创建的文件的权限为644,当文件权限遇到奇数时,在奇数为加一   


[root@qls ~]# umask
0022
[root@qls ~]# umask  033
[root@qls ~]# umask 
0033
[root@qls ~]# mkdir  oldboy
[root@qls ~]# ll
total 4
drwxr-xr-x 2 root root   6 Jul 23 11:21 123
-rw-r--r-- 1 root root   0 Jul 23 11:21 123.txt
drwxr--r-- 2 root root   6 Jul 23 12:02 oldboy
[root@qls ~]# touch oldboy.txt
[root@qls ~]# ll
total 4
drwxr-xr-x 2 root root   6 Jul 23 11:21 123
-rw-r--r-- 1 root root   0 Jul 23 11:21 123.txt
drwxr--r-- 2 root root   6 Jul 23 12:02 oldboy
-rw-r--r-- 1 root root   0 Jul 23 12:02 oldboy.txt


8. day14作业讲解


1.删除用户基本组shanghai03。发现无法正常删除,怎样才能将其删除掉,不能删除用户。

这个组是某个用户的基本组,所以删除不了   跟这里面的用户换个组再删除




2.打开多个xshell窗口连接登录同一虚拟机,使用不同的用户登录多次,分别使用w和who命令显示当前系统上的所有已经登录的用户,取出用户名这一列,注意:同一个用户登录多次,则只显示一次即可。

[root@qls ~]# w
 12:10:05 up 3 days, 25 min,  5 users,  load average: 0.04, 0.03, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    10.0.0.1         Wed09   50:37   0.30s  0.00s -bash
root     pts/1    10.0.0.1         12:03    5.00s  0.00s  0.00s w
root     pts/2    10.0.0.1         12:09   34.00s  0.00s  0.00s -bash
root     pts/3    10.0.0.1         12:09   32.00s  0.00s  0.00s -bash
qls01    pts/4    10.0.0.1         12:10    4.00s  0.00s  0.00s -bash
[root@qls ~]# w | awk 'NR>2'
root     pts/0    10.0.0.1         Wed09   50:49   0.30s  0.00s -bash
root     pts/1    10.0.0.1         12:03    1.00s  0.00s  0.00s w
root     pts/2    10.0.0.1         12:09   46.00s  0.00s  0.00s -bash
root     pts/3    10.0.0.1         12:09   44.00s  0.00s  0.00s -bash
qls01    pts/4    10.0.0.1         12:10   16.00s  0.00s  0.00s -bash
[root@qls ~]# w | awk 'NR>2{print $1}'
root
root
root
root
qls01
[root@qls ~]# w | awk 'NR>2{print $1}' | sort 
qls01
root
root
root
root
[root@qls ~]# w | awk 'NR>2{print $1}' | sort  |uniq -c
      1 qls01
      4 root
[root@qls ~]# 




3.创建用户olddir,其ID号为1005,基本组为old

groupadd  old

useradd  -u1005  -g old  olddir  


4.显示当前登录的用户的UID号,你有几种方法实现?

id

grep  'user'  /etc/passwd 

echo $UID

5.对于用户来说,组有几种类别?有什么区别?

基本组   每个用户只能有一个基本组

附加组  用户可以拥有多个附加组 

6./etc/group文件以:为分隔符,分为四列,解释其每列的含义?
7./etc/gshadow文件以:为分隔符,分为四列,解释其每列的含义?
8.如果想从root用户切换到普通用户,使用什么命令?

su -  username



9.切换到普通用户后,想返回到root用户,怎么做?有几种方法,有什么区别?

su  - 

Ctrl +  D  

logout

exit



10.Shell主要分为哪几类?

交互式

非交互式


登录式

非登录式

11.Bash Shell的个人及全局配置文件有哪些?哪个优先级别高?

个人高



12.登录式Shell配置文件执行顺序?
13.非登录式shell配置文件执行顺序?


14.在root用户下,以普通用户身份执行"pwd"命令。

[root@qls ~]# su  -  qls01  -c "pwd"
/home/qls01


15.什么是sudo?

用来提权  给普通用户提权


16.可以根据哪个文件对sudo提权?


/etc/sudoers


17.登录到普通用户,查看/etc/shadow文件的内容,发现查看不了,怎么办?

提权 

切换到root用户查看

设置权限 

18.登录到普通用户,删除/opt目录,若无法删除,该怎么解决?

提权

切换到root用户删除 

设置权限

要删除一个目录,要看上一级目录的权限 

要将一个文件移动或者拷贝到另一个目录时,也需要查看另一个目录的权限



19.登录到普通用户,使用sudo命令时,不想输出密码,怎么解决?

NOPASSWD:  

20.怎样查看普通用户的sudo权限?

sudo  -l


21.配置好了sudo授权,怎么检查语法是否正确?

visudo  -c


22.禁止root用户远程登录,怎么实现?


[root@qls ~]# grep  'RootLogin'  /etc/ssh/sshd_config
PermitRootLogin no

23.修改远程连接端口号为2222,然后进行登录?

[root@qls ~]# grep  'Port'  /etc/ssh/sshd_config
#Port 22
#GatewayPorts no
[root@qls ~]# sed  -i  '/^#Port/s#.*#Port 2222#g'  /etc/ssh/sshd_config
[root@qls ~]# grep  'Port'  /etc/ssh/sshd_config
Port 2222
#GatewayPorts no
[root@qls ~]# 

[root@qls ~]# systemctl  restart  sshd



[root@qls ~]# getenforce 
Disabled
[root@qls ~]# setenforce  0
setenforce: SELinux is disabled
[root@qls ~]# ll /etc/sysconfig/selinux 
-rw-r--r--. 1 root root 543 Jul 15 20:28 /etc/sysconfig/selinux

[root@qls ~]# systemctl  stop  firewalld



ssh  qls01@10.0.0.100 2222


24.把对sshd的设置修改成原来的设置。

[root@qls ~]# sed  -i  '/^Port/s#.*#\#Port 22#g'  /etc/ssh/sshd_config
[root@qls ~]# !grep
grep  'Port'  /etc/ssh/sshd_config
#Port 22
#GatewayPorts no
[root@qls ~]# systemctl  restart sshd


25.说出下面几个特殊符号的含义  * > >>  # .. . ^  $ `` ! 


*	#所有

>	#标准输出重定向  会清空文件的内容之后再将你的内容重定向进去

>>	#标准输出追加重定向 不会清空文件的内容,将文件内容追加到文件的底部 


#	#注释  管理员命令行提示符 

..	#当前目录的上一级目录

.	#当前目录 

^	#逻辑概念 开头     

$	#结尾 最后一行

``	#优先执行反引号里面的命令,把命令的执行结果交给外面的命令  里面必须是命令  跟  $()#非  取反  



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

琴声浮或沉__听懂只一人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值