【Linux】进入目录需要哪些权限,在目录中执行增删查(cd, touch, ls, rm, mv等)改文件动作,需要哪些权限。

  • 权限:

就是对某事项进行决策程度和范围,通俗来说,就是规定哪些事情能做、哪些事情不能做。那么,在Linux中有哪些基本权限呢?

  • 基本权限:

r(读):对于文件而言,具有读文件的权限,对目录而言,具有浏览目录的权限。

 w(写):对文件而言,具有修改文件的权限,对目录而言,具有删除,移动目录的权限。

x(执行):execute对文件而言,具有执行文件的权限,对于目录而言,具有进入目录的权限。

  • 基本权限的表现形式:

(1):通过字母和“-”表示

在当前目录输入ll(字母L小写)指令并执行,查看当前目录下所有你项目的权限。

(2):通过数字来表示

拥有者u、所属组g、其他o所拥有的权限其实可以用一个八进制数字来表示,也就是说,一个文件的权限可以通过三个八进制数字来表示
例如:
具有可读可写可执行权限(rwx)——111(二进制)——7(八进制)
具有可读可执行权限(r-x)——101(二进制)——5(八进制)
不具有可读可写可执行权限(—)——000(二进制)——0(八进制)

  • 进入目录的权限:

(1)以字母形式进行修改,利用chmod命令,通过g,u或者o加减所要的权限或者权限组合,来实现对文件权限的修改,修改之后再用ll权限来查看修改后的权限。
(2)以数字的形式进行修改权限,我们可以让g、u、o都具有r、w、x权限,我们在更改权限的时候要想好修改成什么,然后对应相应的数字即可三个一组,rwx权限分别对应421相加得7,,rw-对应42相加,r–对应4

  • 进入目录的权限验证:

(1)创建一个目录hehe并使用chmod   000  hehe给目录haha设置成无权限。
(2)我们先给user加上r权限,(即chmod  u+r   hehe)但是通过图片我们看到访问依然被拒绝,所以进入目录不需要可读权限,需要别的权限,我们继续再给user加上其他的权限。
(3)我们在给user加上w权限(即chmod   u+w   hehe)进入目录访问的权限依然被拒绝,由此我们可知道进入目录的权限也不需要写权限。
(4)我们再给user加上执行权限(即chmod  u+x)我们发现可以进入目录,所以目录需要的是可执行性权限。

  • 总结:

(1)进入一个目录,对于普通用户至少需要可执行权限。
(2)在目录中创建一个新的文件时,用户需要可写可执行权限。
(3)在目录中创建文件并进行显示,用户需要可读可写可执行权限。

  • 说明: 

(1)如果目录没有-x权限,则无法对目录执行任何命令,甚至无法cd进入目录,即使目录有-r权限。
(2)而如果目录具有-x权限,但没有-r权限,则用户可以执行命令cd进入目录,但是由于目录没有读权限,所以在目录下即使可以执行ls命令,但是仍然没有全部读出目录下的文档。

例子:

首先我们先创建一个hehe

1.使用 chmod 000 hehe将hehe设置为无权限。(即d- - - - - - - - -)

2.我们给user加上r权限,(即chmod u+r hehe),但是通hehe过图片我们看到访问依然被拒绝。所以我们需要再继续加权限。即进入目录不需可读权限,需要别的权限。

3.我们给user加上w权限,(即chmod u+w hehe),进入目录的访问依然被拒绝。即进入目录也不需要可写权限。

 4.这次我们给user加上x权限,(即chmod u+x  hehe),我们发现可以进入目录了。所以进入目录需要的是可执行权限。

 

  • touch需要的权限:

此例中我们依然用上例的hehe来解释。

1.首先我们先删掉可读可写权限(即chmod u-rw),我们进入hehe中,使用touch,创建一个新的test.c,发现权限不够,不能使用touch。

 2.我们给new加上可读权限(即chmod u+r),我们进入hehe,使用touch,同1中权限不够,还是不能创建。

3.当我们给new删除可读权限,加上可写权限(即chmod u-r,chmod u+w),进入new,再次使用touch,这次可以创建一个新的test.c了。

 综上所述,我们发现touch需要的是可写权限(即w权限)。

 

  • ls所需要的权限:

 接上面的touch test.c后,ls一下,发现权限不够。这时我们返回上一级目录,给hehe加一个r权限,再次进入hehe,ls一下出现了test。说明ls需要的权限是r。

 

  • mv需要的权限:

我们先将hehe的权限全部置零,然后我们给user加一个x的权限,进入hehe,将test.c重命名为test.1,权限不够不能操作。我们再给user加一个r的权限,进入hehe,将test.c重命名为test.1,权限还是不够,最后我们再给user加一个w的权限,再次进入hehe,将test.c重命名为test.1,ls一下,这次发现hehe目录下是test.1了。

 

  • rm需要的权限:

这次我们先返回file目录下,将hehe的权限重新置零,先给hehe一个x权限,进入hehe,删除hehe中的test.1。发现权限不够不能够删除。再给hehe一个r权限,进入hehe,删除hehe中的test.1,还是权限不够不可以删除。最后我们给hehe一个w权限,进入hehe后,删除test.1,这次成功删除。

        说明rm所需要的权限是w。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值