目录

一 权限的基本介绍

0位:确定文件类型(常见类型五种 -  l  d  c  b)

-:普通文件

l:链接,相当于win下的快捷方式

d:目录,相当于win下的文件夹

c:字符设备文件,鼠标键盘

b:块设备,硬盘

1-3位:文改文件的所有者拥有该文件的权限  User

4-6位:文件所在组内的用户拥有该文件的权限  Group

7-9位:其他组内用户拥有改文件的权限  Other

二 rwx权限详解----难点

1 rwx作用到文件

2 rwx作用到目录

三 文件和目录权限实际案例

前10个字符说明

数字说明

tom说明

root说明

0说明

8月  23 11:52 说明

apple.txt说明

四 修改权限 chmod

基本说明

第一种方式:通过+ - = 变更权限

(1)chmod  u=rwx,g=rx,o=x  文件/目录名

(2)chmod o+w 文件/目录名

(3)chmod a-x 文件/目录名

案例演示

第二种方式:通过数字变更权限

五 修改文件所有者 chown

1 基本介绍

2 案例

六 修改文件/目录所在组 chgrp

1 基本介绍

2 案例

七 最佳实践 警察和土匪游戏---有点复杂

八 练习1

(1)创建两个组,神仙sx 妖怪yg

(2)创建4个用户,唐僧 悟空 八戒 沙僧

(3)设置密码

(4)把悟空 八戒放在妖怪组,唐僧沙僧放在神仙组

(5)用悟空建立一个文件monkey.java 该文件要输出i am monkey

(6)给八戒一个可以rw的权限

(7)八戒修改monkey.java 加入一句话  i am pig

(8)唐僧 沙僧 对该文件没有权限

(9)把沙僧放入妖怪组

(10)让沙僧修改monke.java文件,加入一句话 我是沙僧 我是妖怪

(11)对文件夹rwx的细节讨论和测试

只给所有者所在组对目录wukong的x权限,看所在组其他用户可以操作什么

所有者所在组添加目录wukong的r权限,看看各种操作如何

现在用wukong账号给g添加w权限,看看各种操作如何

文件/目录rwx超级总结!!!!!区别于单独文件的rwx

九 练习2


一 权限的基本介绍

ls -l或ll指令下显示的内容如下

对于apple.txt文件来说

-rw-r--r--. 1 tom  root        0 8月  23 11:52 apple.txt
-rw-r--r--共十位

0-9位说明:

0位:确定文件类型(常见类型五种 -  l  d  c  b)

-:普通文件

比如下面的apple.txt文件

l:链接,相当于win下的快捷方式

比如在/home下创建软链接myroot链接到/root如下

这里写错了指令,需要删除无效的软连接,rm –rf   ./软链接名称。

详细参考Linux软链接创建及删除 - 开发者知识库

正确的写法应该是ln  -s   [源文件]   [软链接文件]   如下

0位显示l,表示链接

d:目录,相当于win下的文件夹

比如fox前面的是d,代表fox是一个目录

c:字符设备文件,鼠标键盘

dev目录下有很多文件时c开头的,代表终端/设备

b:块设备,硬盘

还是刚刚dev目录下,很多b开头的,说明sda sda1 sda2 sda3 等等都是块设备

1-3位:文改文件的所有者拥有该文件的权限  User

上图表示文件所有者对该文件有读写权限

4-6位:文件所在组内的用户拥有该文件的权限  Group

上图表示同组内用户对该文件只有读权限

7-9位:其他组内用户拥有改文件的权限  Other

上图表示其他组用户对该文件只有读权限

二 rwx权限详解----难点

1 rwx作用到文件

(1)r :可读,read,可以取和查

(2)w:可,write,可以修改,但是不可删除,必须对该文件所在目录有写权限才能删除

(3)x:可执行,execute,可以被执行,前提是该文件为可执行文件

2 rwx作用到目录

(1)r :可,read,可以读取,ls查看目录内容

(2)w:可写,write,可以修改,对目录 创建 删除 重命名目录

(3)x:可执行,execute,可以使用cd进入该目录

三 文件和目录权限实际案例

在/home目录下输出指令ls -l  或   ll 中显示的内容如下

现在对apple.txt这一行进行解释

-rw-r--r--. 1 tom  root        0 8月  23 11:52 apple.txt

前10个字符说明

确定不同用户能对文件干什么

第一个字符(- l d b c)代表文件类型:这里是-,根据前面说的,代表普通文件,也即apple.txt是个普通文件

其余字符每3个一组rwx 读 写 执行

第一组rwx:这里是rw-,代表文件拥有者(tom)的权限是读写,不能执行

第二组rw-:这里是r--,与文件拥有者同一组(root组)的用户的权限是读,但是不能写和执行

第三组r--:这里是r--,不与文件拥有者同组(除root以外的组)的其他用户的权限是读,但是不能写和执行

可以用数字表示为 r = 4,w = 2,x=1 因此rwx = 4+2+1=7,数字可以进行组合

数字说明

-rw-r--r--. 1 tom  root        0 8月  23 11:52 apple.txt

数字1 这里代表文件,也可以代表目录

代表普通文件:直接显示1

代表目录:显示子目录数+文件数的总和       有时候不太准确原因暂时不清楚

tom说明

root 用户

root说明

所在组

0说明

文件大小(字节),如果是文件夹,显示4096字节

比如hello.txt大小这里显示的是74,用vim打开

修改如下,退出保存

再重新查看hello.txt大小变成了6,也就是hello加上某位的0一个6个字节

8月  23 11:52 说明

最后修改日期,上图也可以看出apple.txt修改后时间也会发生改变

apple.txt说明

文件名

四 修改权限  chmod

基本说明

通过chomd指令,可以修改文件或者目录的权限

第一种方式:通过+ - = 变更权限

u:所有者    g:所有组     o:其他人    a:所有人(u g o的总和)

(1)chmod  u=rwx,g=rx,o=x  文件/目录名

解释:使用chmod指令对 文件/目录所有者u 赋予rwx权限,对文件所在组内用户g 赋予rx权限,对其他组用户o赋予x权限

(2)chmod o+w 文件/目录名

解释:使用chmod指令对 文件/目录的其他组用户o赋予w权限

(3)chmod a-x 文件/目录名

解释:将所有用户的x权限去除

案例演示

(1)给abc文件的所有者u读写执行权限,给所在组g读执行权限,给其他组o读执行权限

chmod u=rwx,g=rx,o=rx abc

 abc呈现绿色代表abc是可执行文件

(2)给abc文件的所有者u除去执行的权限,增加所在组g写的权限

chmod u-x,g+w abc

(3)给abc文件的所有用户a添加读的权限

chmod a+r abc

第二种方式:通过数字变更权限

r=4 w=2 x=1  rwx=4+2+1=7

1 x 执行   2 w 写读    3 wx 写 执行   4 r 读

5 rx 读 执行     6 rw 读写      7 rwx 读写执行

chomd u=rwx,g=rx,o=x 文件/目录名    相当于 chmod 751 文件/目录名

例:将/home/abc.txt文件的权限修改成 rwxr-xr-x 使用给数字的方式实现

chmod 755/home/abc.txt

五 修改文件/目录        所有者 chown

1 基本介绍

chown newowner 文件/目录         改变所有者

chown newowner:newgroup 文件/目录        改变所有者和所在组

-R   如果是目录 则使其下所有子文件或目录递归生效

2 案例

例1:将/home/abc.txt文件的所有者改为tom

步骤1:root登录下创建abc.txt,可以看出当前abc.txt文件的所有者是root,所在组是root

步骤2:把所有者改成tom   chown tom /home/abc.txt

例2:将/home/bob目录下的所有文件和目录的所有者都修改为tom

/home/bob示意图如下

步骤1:查看bob目录的所有者,可以看出bob下面有两个文件a b和一个目录aaa,所有者都是bob

步骤2:修改该目录下所有文件和目录的所有者为tom   chown -R tom /home/bob

上图可以看出bob目录所有者已经更改为tom

上图可以看出bob目录下的aaa目录以及a b两个文件的所有者也都成为了tom

上图可以看出aaa目录下的文件c所有者也成为了tom

也就是示意图中黄色的部分所有者全都换成了tom

六 修改文件/目录所在组 chgrp

1 基本介绍

chgrp newgroup 文件/目录      改变所在组

2 案例

例1:将/home/abc.txt文件的所在组修改为shaolin

步骤1:新建组 shaolin    指令   groupadd shaolin

步骤2:在home目录下查看abc.txt现在的所在组

步骤3:chgrp shaolin /home/abc.txt

例2:将/home/bob 目录下的所有文件和目录的所在组都修改成shaolin

步骤1:查看/home/bob当前所在组,如下图,所在组为bob

步骤2:chgrp -R shaolin /home/bob

 和前面修改所有者一样,-R递归作用使得所有bob下面的所有目录和文件全都更改了所在组

七 最佳实践 警察和土匪游戏---有点复杂

police , bandit

jack,jerry:警察

xh,xq:土匪

要求1:创建组 groupadd police;groupadd bandit

要求2:创建用户,设置密码

useradd -g police jack;useradd -g police jerry

useradd -g bandit xh;useradd -g bandit xq

要求3:jcak创建一个文件jack.txt,自己可以读r=4写w=2,本组人可以读r=4,其他人没有权限0

步骤1:重新打开一个会话用jack身份登录,创建jack.txt文件 touch jack.txt 或者 vim jack.txt

步骤2:查看jack.txt的权限

步骤3:设置权限  chmod 640 jack.txt

要求4:jack修改该文件,让其他组的人可以读r=4,本组的人可以读r=4写w=2

翻译:jack自己的权限没有改变

chomd o=r,g=r jcak.txt    或者     chmod 644 jack.txt

要求5:xh投靠警察,看看能不能读写

翻译:要用root账户,修改xh的组

usermod -g police xh

要求6:测试,看看xh是否可以读写,xq是否可以读写

步骤1:登录xh,xq,jerry

步骤2:在xh的会话中,查看jack目录

看jack这个目录可以看出只有jack自己可以rwx,g和o没有任何权限

即使现在xh是police组的用户,也无法对jack进行任何操作,因为police这个组对jack没有权限,有权限的只有jack用户自己

结论:如果要对目录内的文件进行操作,需要有对该目录的相应权限

想要xh对jack目录有权限,直接用root或jack用户放开g的权限

现在和jack同组的用户就可以对jack里面的文件目录有rwx权限了。回到xh的会话就会有相应的权限了,但是不能修改(不能vim修改)

八 练习1

(1)创建两个组,神仙sx 妖怪yg

(2)创建4个用户,唐僧 悟空 八戒 沙僧

(3)设置密码

(4)把悟空 八戒放在妖怪组,唐僧沙僧放在神仙组

翻译:这是改变用户所在组,应该用usermod -g 而不是chgrp,chgrp是用来修改文件/目录所在组

(5)用悟空建立一个文件monkey.java 该文件要输出i am monkey

首先新建会话用wukong的账户密码登录

然后vim monkey.java

进入vim界面后输入i开始编辑,输入i am monkey,然后点击esc,输入:wq回到xshell会话界面

然后查看一下monkey.java的权限

(6)给八戒一个可以rw的权限

目前八戒在yg组,悟空也在yg组,monkey.java对于所在组的权限是r,所以只要给同组g添加一个w权限即可

chmod g+w monkey.java

(7)八戒修改monkey.java 加入一句话  i am pig

用bajie登录一个会话,可以看见无法进入wukong的家目录

在wukong的会话中查看wukong这个目录的权限如下

说明只有悟空用户自己有rwx权限,同组内用户也就是yg组内的bajie是没有任何权限的

需要在wukong的会话中给所在组添加权限

chmod g+r+w+x

回到bajie会话再次尝试cd到wukong目录

可以看出已经进入成功了,而且由于(6)中monkey.txt文件给了bajierw权限,所以这里显示的权限是rw-,可以使用vim直接进入该文件进行修改

 

(8)唐僧 沙僧 对该文件没有权限

用shaseng登录会话尝试cd到wukong文件,发现没有权限,因为shaseng在sx组

(9)把沙僧放入妖怪组

修改用户所在组  usermod -g yg shaseng   注意这里要使用root用户来修改用户所在组

回到沙僧会话,尝试进入wukong文件

发现还是不行,回到root用户会话查看shaseng的id发现组信息修改为yg是正确的

现在尝试退出shaseng重新登录一次再尝试

发现重新登录后就可以进入wukong目录了,这是以为环境变量,后面会说

(10)让沙僧修改monke.java文件,加入一句话 我是沙僧 我是妖怪

shaseng对monkey.java的权限是rw,可以使用vim进行修改

(11)对文件夹rwx的细节讨论和测试

只给所有者所在组对目录wukong的x权限,看所在组其他用户可以操作什么

在root会话中将wukong文件所在组用户的权限收回

现在给所在组用户x权限

在bajie会话中尝试进入wukong文件

发现bajie对wukong文件有x权限,可以执行,也可以cd进wukong目录,但是不能读取wukong这个文件,因为没有w权限。也就是ls wukong这个指令没有权限,无法列出这个目录里的东西

作为所在组用户,对wukong这个目录只有x执行权限,可以cd进来,不可以ls列出内容。对于wukong目录下的monkey文件是否有w权限?vim一下

总结

目录有r权限代表可以ls这个目录列出目录下内容,如果对目录没有r权限则ls不能使用,但是如果对目录下的文件有w权限,那么还是可以vim修改等操作的

所有者所在组添加目录wukong的r权限,看看各种操作如何

首先在root会话中chmod g+r /home/wukong

现在尝试bajie是否可以ls列出wukong目录内容,如下图所示,已经可以ls了

现在尝试touch一个文件,发现没有权限,需要root添加w权限

现在尝试删除文件monkey.java,发现没有权限,需要root添加w权限

现在用wukong账号给g添加w权限,看看各种操作如何

注意:root和wukong两个账号都可以

再次尝试bajie能否touch和rm monkey.java,发现都可以了

文件/目录rwx超级总结!!!!!区别于单独文件的rwx

x:表示可以进入到该目录,比如cd,但是不能ls显示目录下的内容,不能在目录下创建文件touch,不能删除目录下文件rm

r:表示可以ls,显示目录下内容,但是不能在目录下创建touch文件,也不能删除rm目录下的文件

w:表示可以在该目录下删除rm或创建touch文件

九 练习2

(1)用root登录,建立用户mycentos,自己设置密码

 (2)用mycentos登录,在主目录下建立目录test/t11/t1

首先主目录就是家目录,这里就是/home/mycentos

这里是创建多级目录,要用mkdir -p命令

(3)在t1中建立一个文本文件aa,用vi编辑其内容为ls -al

(4)改变aa的权限为可执行文件(可以将当前日期追加到一个文件),运行改文件./aa

注意下面两条指令的作用相同

追加日期到aa.txt文件

(5)删除新建立的目录test/t11/t1

(6)删除用户mycentos及其主目录中的内容

待解决。。。

Linux11-权限的介绍 rwx详解 修改权限 修改文件目录所有者 修改文件目录所在组 一个实践和两个练习相关推荐

  1. Linux操作命令分类详解 - 用户权限(三)

    转自:Linux操作命令分类详解 - 用户权限(三),更优阅读体验:http://www.kongzid.com/ 目录 系列文章 1.用户账号管理 1.1 useradd/adduser 添加用户账 ...

  2. 服务器给站点读写权限,IIS7目录权限设置的问题详解Windows服务器操作系统 -电脑资料...

    今天自己把服务器安装了windows 2008同时也是iis7了,但是在设置权限时有些小问题不了解后来百度了才知道解决办法, 前段时间在windows server 2008 r2 (x64)服务器上 ...

  3. hurtworld正版社区服务器,《伤害世界hurtworld》正版盗版GM权限获取方法图文详解...

    <伤害世界hurtworld>正版盗版GM权限获取方法图文详解 2016-01-10 09:43:03来源:hurtworld吧编辑:评论(0) <伤害世界hurtworld> ...

  4. 《 Python List列表全实例详解系列(五)》——修改元素(修改单个、修改一组)

    < Python List列表全实例详解系列(五)> --修改元素(修改单个.修改一组) 接上一篇:<  Python List列表全实例详解系列(四)>__列表删除元素(4种 ...

  5. mysql获取当天每小时统计_详解mysql 获取某个时间段每一天、每一个小时的统计数据...

    获取每一天的统计数据 做项目的时候需要统对项目日志做分析,其中有一个需求是获取某个给定的时间段内,每一天的日志数据,比如说要获取从2018-02-02 09:18:36到2018-03-05 23:1 ...

  6. linux下用chmod修改文件权限详解(文件权限与特殊权限)

    chmod 是一条在Unix系统中用于控制用户对文件的权限的命令(change mode单词前缀的组合)和函数.只有文件所有者和超级用户可以修改文件或目录的权限.可以使用绝对模式,符号模式指定文件的权 ...

  7. linux特殊权限是e,linux下用chmod修改文件权限详解(文件权限与特殊权限)

    chmod是一条在Unix系统中用于控制用户对文件的权限的命令(changemode单词前缀的组合)和函数.只有文件所有者和超级用户可以修改文件或目录的权限.可以使用绝对模式,符号模式指定文件的权限. ...

  8. linux中权限详解,linux 权限详解

    转载自博客园: 用户组 在linux中的每个用户必须属于一个组,不能独立于组外.在linux中每个文件有所有者.所在组.其它组的概念 - 所有者 - 所在组 - 其它组 - 改变用户所在的组 所有者 ...

  9. TC配置文件WCMD.INI详解,只能在ini重修改的配置

    有*的项目扩展了功能,有★的项目是只能在INI中修改的配置. ★Allowed=     允许访问哪些驱动器(\代表网络邻居).例如写为Allowed=cde\,代表仅允许访问C.D.E和网络邻居,其 ...

最新文章

  1. 多迪人事主管揭秘:面试官是如何面试Web前端求职者?
  2. windows下文件共享以及通过网线在两台Windows电脑之间传数据
  3. art-template在项目中的应用
  4. CVE-2018-1111漏洞复现-环境搭建与dhcp命令注入
  5. [music]Canon and Gigue in D major
  6. .Net Core实现的文档数据库RavenDb
  7. POJ 1703 Find them, Catch them 种类并查集
  8. 计算机控制考试试卷及答案,计算机控制系统A考试试卷带答案.doc
  9. 百度免费开放长语音识别功能
  10. 计算机一级win7操作题,计算机等级考试一级WIN7操作题.docx
  11. 使用Lingo求解简单的线性规划问题
  12. php进销存源码系统开发
  13. 加壳、脱壳以及如何病毒免杀技术与原理
  14. 云计算概念_云计算的概念
  15. 亚声速-超声速等熵喷管拟一维流动的CFD解法(附完整代码)
  16. 充分利用公网 -- 将联通光猫设置为桥接
  17. 美团“二选一”被立案调查,反垄断将成为常态化
  18. 集成支付宝支付(AliPay)详解,防跳坑
  19. 对全职高手的自然语言处理
  20. mac 备份树莓派镜像

热门文章

  1. 树莓派局域网测速方法
  2. 重置SEP管理控制台管理员密码
  3. 电商平台零售数据分析
  4. 深度学习day05 用Pytorch实现线性回归
  5. java 实现穷举算法
  6. cisco ap 上线不成功
  7. Unity Android平台接入支付宝SDK
  8. people05-1——中国人、北京人和美国人
  9. XSI IPC机制
  10. ThinkPHP+Redis实现简单抽奖