文件权限 Ⅰ

1.基本权限 UGO

=====================================================

df -Th  查看内存的使用情况 

df -Th >a.txt  将内存的使用情况填入a.txt内
权限对象: 

属主: 	 u
属组: 	 g
其他人:     o 
基本权限类型: 

读:r         4
写:w	        2 
执行: x	    
rwx             rw-          r--             alice         hr            file1.txt
属主(所有者)权限  属组权限       其他人权限      属主/所有者       属组  			文件名


一  alice对file1.txt文件有什么权限?

​   a. alice是所有者吗? 是,rwx

二  jack对file1.txt文件有什么权限? 前提:jack属于hr组

​	a. jack是所有者吗? 
​	b. jack属于hr组吗? 是,rw

三 tom对file1.txt文件有什么权限? 

​	a. tom是所有者吗?
​	b. tom属于hr组吗?
​	c. tom为其他人 r
1.1.设置权限

更改文件的属主(所有者)、属组 (所属组)

chown 更改属组、属主 change owner

chgrp 更改属组 change group

chown:

[root@youngfit ~]# chown alice.hr file1          //改属主、属组  使用:也可以

[root@cuichengjie home]# chown user01.hr qf.txt 
[root@cuichengjie home]# ll -a   //查看发现已经改变
-rw-r--r--.  1 user01       hr             0 Dec 26 14:59 qf.txt

[root@youngfit ~]# chown alice     file1 	     //只改属主
[root@youngfit ~]# chown        .hr file1	     //只改属组
[root@youngfit ~]# chown -R zhouchen.hr dir1	 //递归修改,包括文件夹内的所有文件

[root@cuichengjie home]# mkdir -p qf/qf.txt   用递归创建qf文件夹以及里面的qf文件
[root@cuichengjie home]# chown -R cuichengjie1.hr qf  对qf进行修改
drwxr-xr-x. 2 cuichengjie1 hr  6 Dec 26 15:02 .
drwxr-xr-x. 3 cuichengjie1 hr           20 Dec 26 15:02 qf  如图 连同文件一同被修改

chgrp:

[root@youngfit ~]# chgrp it file1			   //改文件属组 
[root@cuichengjie home]# chgrp user01 qf.txt //将原先的hr改成了user01 属组
-rw-r--r--. 1 user01       user01        0 Dec 26 14:59 qf.txt


[root@youngfit ~]# chgrp -R it dir1			   //改目录属组 (-R包含目录下内容),效果同chown

1.2.更改权限
a. 使用符号

​ 对象 赋值符 权限类型

​ u 所有者 + r

chmod g 所属组 - w file1

​ o 其他人 = x

​ a 所有

[root@youngfit ~]# chmod u+x file1	         //属主增加执行权限 所有者增加执行权限
-rw-r--r--. 1 user01       user01        0 Dec 26 14:59 qf.txt  更改后
-rwxr--r--. 1 user01       user01        0 Dec 26 14:59 qf.txt  更改前

[root@youngfit ~]# chmod g+x file1			 //属组增加执行权限

[root@youngfit ~]# chmod u+x,g+x file1		 //所有者增加执行权限,属组增加执行权限 	 
======================================================================================
[root@youngfit ~]# chmod u-x file1   //所有者减去执行权限
-rwxr--r--. 1 user01       user01        0 Dec 26 14:59 qf.txt 更改前
-rw-r--r--. 1 user01       user01        0 Dec 26 14:59 qf.txt 更改后
[root@youngfit ~]# chmod g-x file1   //属组减去执行权限
[root@youngfit ~]# chmod u-x,g-x file1   //所有者减少执行权限,属组减少执行权限
=======================================================================================

[root@youngfit ~]# chmod a=rwx file1	     //所有人等于读写执行权限
[root@youngfit ~]# chmod a=- file1	         //所有人没有权限
[root@cuichengjie home]# chmod a=r-x qf.txt 
-r--r--r--. 1 user01       user01        0 Dec 26 14:59 qf.txt
[root@cuichengjie home]# chmod a=-wx qf.txt 
----------. 1 user01       user01        0 Dec 26 14:59 qf.txt
[root@cuichengjie home]# chmod a=rw- qf.txt   //从以上例子可以看出,使用a=时,遇见“-”便结束
-rw-rw-rw-. 1 user01       user01        0 Dec 26 14:59 qf.txt


[root@youngfit ~]# chmod ug=rw,o=r file1     //属主属组等于读写,其他人只读
[root@youngfit ~]# ll file1 			     //以长模式方式查看文件权限
-rw-rw-r-- 1 alice it 17 10-25 16:45 file1	 //显示的结果
b.使用数字
[root@youngfit ~]# chmod 644 file1    r=4 w=2 x=1  664  所有者rw 属组r 其他用户r
[root@youngfit ~]# ll file1
 -rw-r--r-- 1 alice it 17 10-25 16:45 file11

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FUMXdSu9-1584535283172)(D:\Desktop\千峰培训课程\第一阶段\第三、四、五天\image\权限1.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X1ZiZHbt-1584535283173)(D:\Desktop\千峰培训课程\第一阶段\第三、四、五天\image\权限3.png)]

2 .权限案例 UGO

======================================================

2.1.设置权限案例

针对hr部门的访问目录/home/hr设置权限,要求如下:

  1. root用户和hr组的员工可以读、写、执行

  2. 其他用户没有任何权限

[root@youngfit ~]# groupadd hr				//创建一个用户组		
[root@youngfit ~]# useradd ehome01 -G hr		//创建hr01用户添加到hr组里
[root@youngfit ~]# useradd ehome02 -G hr		//创建hr02用户添加到hr组里
[root@youngfit ~]# mkdir /home/hr			//在/home创建一个hr目录
[root@youngfit ~]# chgrp hr /home/hr		//将/home/hr目录的所属组设置为hr
[root@youngfit ~]# chmod 770 /home/hr 		//将/home/hr目录的权限设置为770
[root@youngfit ~]# ll -d /home/hr/			//查看/home/hr目录本身的权限
 drwxrwx---. 2 root hr 4096 3月  13 14:26 /home/hr/
=======================================================================================
测试其他人权限
[root@youngfit home]# su - user05
Last login: Wed Dec 25 14:28:08 CST 2019 on pts/0
[user05@youngfit ~]$ cd /home/hr/
-bash: cd: /home/hr/: Permission denied
========================================================================================
测试所属组用户权限
[root@qianfeng home]# su - ehome01
Last login: Wed Dec 25 19:31:06 CST 2019 on pts/0
[ehome01@qianfeng ~]$ cd /home/hr/
[ehome01@qianfeng hr]$ touch a.txt
[ehome01@qianfeng hr]$ ls
a.txt
[ehome01@qianfeng hr]$ rm -rf a.txt 
组中的成员能够用cd切入此案例中的文件夹,而非本组成员则不能

******重要: r、w、x权限对文件和目录的意义

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uyyYhidu-1584535283173)(D:\Desktop\千峰培训课程\第一阶段\第三、四、五天\image\权限4.png)]

2.2.rwx对文件的影响

实战案例1:rwx对文件的影响

date  查看日期时间

[root@youngfit ~]# vim /home/file1
date
[root@youngfit ~]# ll /home/file1
 -rw-r--r-- 1 root root 5 7月  26 14:43 /home/file1
 
[root@youngfit ~]# su - alice
[alice@youngfit ~]cat /home/file1          //测试读
date

============================================================================
没加执行权限之前
[alice@youngfit ~]$ /home/file1               //测试执行
-bash: /home/file1: Permission denied
[root@youngfit ~]# chmod o+x /home/file1

加执行权限之后
[alice@youngfit ~]$ /home/file1
Wed Dec 25 19:58:19 CST 201



=============================================================================
[root@qianfeng ~]# su - user09
Last login: Wed Dec 25 19:55:52 CST 2019 on pts/0
[user09@qianfeng ~]$ vim /home/file1 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gq3D7hxl-1584535283174)(assets/1577275271767.png)]

[root@youngfit ~]# chmod o+w /home/file1
[alice@youngfit ~]$ vim /home/file1         //测试写
date
ls

:wq保存并退出成功。

2.3.rwx对目录的影响

实战案例2:对目录没有w,对文件有rwx

[root@youngfit ~]# mkdir /dir10
[root@youngfit ~]# touch /dir10/file1
[root@youngfit ~]# chmod 777 /dir10/file1 

[root@youngfit ~]# ll -d /dir10/
drwxr-xr-x. 2 root root 4096 3月  11 18:37 /dir10/
[root@youngfit ~]# ll /dir10/file1 
-rwxrwxrwx. 1 root root 0 3月  11 18:37 /dir10/file1

[root@youngfit ~]# vim /dir10/file1
jack
[root@youngfit ~]# su - alice
[alice@youngfit ~]$ cat /dir10/file1 
jack
[alice@youngfit ~]$ rm -rf /dir10/file1 
rm: cannot remove ‘/dir10/file1’: Permission denied		//权限不够
[alice@youngfit ~]$ touch /dir10/file2
touch: cannot touch ‘dir10/file2’: Permission denied     //权限不够

实战案例3:对目录有w,对文件没有任何权限

[root@youngfit ~]# chmod 777 /dir10/

[root@youngfit ~]# chmod 000 /dir10/file1 

[root@youngfit ~]# ll -d /dir10/
drwxrwxrwx. 2 root root 4096 3月  11 18:37 /dir10/

[root@youngfit ~]# ll /dir10/file1 
----------. 1 root root 0 3月  11 18:37 /dir10/file1

[root@youngfit ~]# su - alice 		//切换到alice用户

[alice@youngfit ~]$ cat /dir10/file1 
不能查看,权限不够

[alice@youngfit ~]$ rm -rf /dir10/file1     //可以删除

[alice@youngfit ~]$ touch /dir10/file2		//可以创建

小结:

对目录有w权限,可以在目录中创建新文件,可以删除目录中的文件(跟文件权限无关)

注意事项

文件: x 权限小心给予

目录: w 权限小心给予

再次认识一下文件和目录:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Rhu4uw1Z-1584535283174)(D:\Desktop\千峰培训课程\第一阶段\第三、四、五天\image\权限5.png)]

3. 基本权限ACL

====================================================

文件权限管理之: ACL设置基本权限(r、w、x) 。

UGO设置基本权限: 只能针对一个用户,一个组和其他人 。

本身没有权限,为其他用户增加权限

使用格式为

 setfacl -m 类型:用户名:权限类型 文件路径

所增加路径为acl路径

设置方法:

[root@youngfit ~]# touch /home/test.txt

[root@youngfit ~]# ll /home/test.txt	
-rw-r--r-- 1 root root 0 10-26 13:59 /home/test.txt

[root@youngfit ~]# getfacl /home/test.txt
getfacl: Removing leading '/' from absolute path names
# file: home/test.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--

[root@youngfit ~]# setfacl -m u:alice:rw /home/test.txt	        //增加用户alice权限
[root@cuichengjie ~]# setfacl -m u:tom:rwx /home/test.txt     /增加权限
[root@cuichengjie ~]# getfacl /home/test.txt 
getfacl: Removing leading '/' from absolute path names
# file: home/test.txt
# owner: root
# group: root
user::rw-
user:tom:rwx  此为帮Tom增加的权限
group::r--
mask::rwx
other::r--

[root@youngfit ~]# setfacl -m u:jack:- /home/test.txt     	    //增加用户jack权限 设置为-

[root@youngfit ~]# setfacl -m g:hr:r /home/test.txt         //增加组hr的权限 读取权限

[root@youngfit ~]# setfacl -m o::rw /home/test.txt       //增加所有用户的写入读取权限

3.2.查看/删除:

格式:

查看:getfacl 所需查看文件路径   

删除:setfacl -x 类型:用户名 文件路径     所删除路径为acl路径

[root@youngfit ~]# ll /home/test.txt 
-rw-rw-r--+ 1 root root 0 10-26 13:59 /home/test.txt

[root@youngfit ~]# getfacl /home/test.txt

[root@youngfit ~]# setfacl -x u:alice /home/test.txt			//删除用户alice的acl权限

[root@youngfit ~]# setfacl -x g:hr /home/test.txt	 			//删除组hr的acl权限

[root@youngfit ~]# setfacl -b /home/test.txt 		 			//删除所有acl权限

[root@cuichengjie ~]# getfacl /home/test.txt 
getfacl: Removing leading '/' from absolute path names
# file: home/test.txt
# owner: root
# group: root
user::rw-
user:tom:---
group::r--
mask::r--
other::r--

[root@cuichengjie ~]# getfacl /home/test.txt 
getfacl: Removing leading '/' from absolute path names
# file: home/test.txt
# owner: root
# group: root
user::rw-
user:tom:---
group::r--
mask::r--
other::r--

[root@cuichengjie ~]# setfacl -x u:tom /home/test.txt //使用该语句删除用户权限,查看后user权限消失
[root@cuichengjie ~]# getfacl /home/test.txt 
getfacl: Removing leading '/' from absolute path names
# file: home/test.txt
# owner: root
# group: root
user::rw-
group::r--
mask::r--
other::r--


3.2.查看帮助
[root@youngfit ~]# man setfacl /EXAMPLES 

[root@youngfit ~]# getfacl file1 |setfacl  --set-file=- file2   //复制file1的ACL权限给file2
需要进入再进行导入

[root@youngfit ~]# chmod a-x /usr/bin/chmod       如何添加x权限???

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Ubuntu中,文件权限由三个不同的角色组成:所有者(Owner)、所属组(Group)和其他用户(Others)。每个角色都有不同的权限,可以通过chmod命令进行修改。 使用ls命令可以查看文件权限和所有者/所属组信息。以下是文件权限的表示方式: - r (读权限):表示可以读取文件的内容和属性。 - w (写权限):表示可以修改文件的内容和属性。 - x (执行权限):表示可以执行文件(对于可执行文件)或进入目录(对于目录)。 权限分为三个组:所有者、所属组和其他用户。每个组都可以设置不同的权限。以下是权限符号表示法和数字表示法的示例: - 权限符号表示法:使用r、w、x符号表示权限,加号表示添加权限,减号表示取消权限。例如:`-rw-r--r--`表示所有者具有读写权限,所属组和其他用户只有读权限。 - 数字表示法:使用三个数字来表示权限,每个数字代表一个角色的权限。例如,`755`表示所有者具有读、写和执行权限,所属组和其他用户只有读和执行权限。数字表示法中,每个权限对应一个数值:读权限为4、写权限为2、执行权限为1。将所需权限对应的数值相加即可得到相应的数字。 要修改文件权限,可以使用chmod命令。以下是一些常用的chmod命令示例: - 修改所有者的权限: ``` chmod u+<权限> <文件路径> ``` - 修改所属组的权限: ``` chmod g+<权限> <文件路径> ``` - 修改其他用户权限: ``` chmod o+<权限> <文件路径> ``` - 修改所有者、所属组和其他用户权限: ``` chmod <权限> <文件路径> ``` 请注意,执行chmod命令通常需要使用sudo或具有足够的权限。确保您理解和谨慎修改文件权限,以免导致安全问题或其他意外情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值