用一个小案例来解释linux中文件或目录的权限

Linux中文档和目录的权限

众所周知 , Linux中文档的权限包括所有者权限(User)、同组权限(Group)和其他权限(Other)。使用rwx来作为表示,分别为read、write和execute。
在这里插入图片描述
这里使用一个小案例来对Linux中目录和文件权限进行一些解释说明

在linux系统中创建两个组
	bash>groupadd god
	bash>groupadd monster
同时创建三个用户,放入不同的两个组中
	bash>useradd wukong -g monster
	bash>useradd bajie -g monster
	bash>useradd shaseng -g god
这样就会在/home文件下生成不同的user文件bajie、wukong、shaseng

在这里插入图片描述

将用户切换到悟空,在wukong/下创建monkey.java文件,并给予同组读写权限
	bash>touch monkey.java
	bash>chmod 660 monkey.java	
这样monster组中就有了该文件的读写权限

在这里插入图片描述

将用户切换到八戒,尝试对该文件进行修改,发现并不能进入wukong/,所以需要悟空对目录权限进行修改
	bash>chmod 770 wukong/
这样八戒就有了wukong/的访问和修改权限,就能对monkey.java进行修改了

在这里插入图片描述
在这里插入图片描述
下面重点

使用悟空将monkey.java文件修改为同组只读权限
	bash>chmod 640 monkey.java

在这里插入图片描述

按理来说这样八戒只有对该文件的读取权限 ,没有修改权限了。
但是当我们使用vim时,会发现:wq!指令依然能够生效。并且在修改完成后会修改该文件的所有者为八戒

在这里插入图片描述

这是因为八戒拥有对wukong/目录的修改权限,因此对悟空目录下的所有文件都有修改权限。
因此即使该文件表面上无法修改,但是八戒可以通过直接修改该文件的所有者来获得该文件的修改权
因此只要悟空将wukong/目录的写权限收回,即可防止该问题发生
	bash>chmod 750 wukong/
但是需要注意的是,悟空不能通过以下命令来修改文件的所有者权限
	bash>chown wukong monkey.java	

在这里插入图片描述

这样当八戒需要修改文件时,就会发现没有该文件的权限了。

在这里插入图片描述


当然这里还有一个小问题,为什么用户不能通过chown来修改文件的所有者,而vim可以呢?
大概是因为vi会在编辑文件时用swap文件做暂存,当发现对该文件的修改权限不够时,会将原文件删除,而将swap文件作为新文件保存。
详细的解释在鸟哥的私房菜里有提到哈,需要的可以查看一下鸟哥的LINUX私房菜

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值