Linux中对于权限的制定虽然没有Windows的那么精细,但是如果你了解并掌握Linux中文件的权限知识,也可以像Windows那样对权限做到精确配置。


Linux中的文件权限是什么?


如何查看Linux中的文件权限

[root@localhost test]# ll -d /test/

drwxr-xr-x. 2 root root 52 8月   7 20:18 /test/

上面的rwxr-xr-x即为文件的权限位共九位。下面分别对其进行介绍。


                rwx∣r-x∣r-x

                ↓    ↓   ↓

                属主 属组 其他

前三个为属主位:创建该文件者或被指定的文件所属者

中间三个为属组位:文件的所属组,在该组内的非属主用户对该文件拥有该属组权限。

最后三个Other位:other用户,既不属于属主又不在属组的用户

r:读权限    w:写权限    x:执行权限

文件中rwx的具体含义:

r:可以使用类似cat等命令查看文件内容

w:可以编辑或删除此文件

x:可以在命令提示符下当做命令提交给内核运行

目录中rwx的具体含义:

r:可以对此目录执行ls以列出内部的所有文件

w:可以在此目录创建文件:

x:可以使用cd切换进此目录,也可以使用ls -l查看内部文件的详细信息

下面请看一个对应关系

000 ---  对应十进制0

001 --x  对应十进制1

010 -w-  对应十进制2

011 -wx  对应十进制3

100 r--  对应十进制4

101 r-x  对应十进制5

110 rw-  对应十进制6

111 rwx  对应十进制7

上面rwx三位与三位二进制对应,因此权限也可以用数字表达

比如:

755代表rwxr-xr-x  664代表rw-rw-r--


管理Linux中的文件权限:

chmod chown chgrp umask

chmod  修改文件权限位命令

chmod - change file mode bits

表达格式

chmod [OPTION]... MODE[,MODE]... FILE...

       chmod [OPTION]... OCTAL-MODE FILE...

       chmod [OPTION]... --reference=RFILE FILE...

常用选项

-R 递归,将设置的权限应用到下面的所有文件

1、chmod [OPTION]... MODE[,MODE]... FILE...

赋权表示法:u=属主  g=属组  o=其他  a=所有

直接操作一类用户的所有权限位 rwx

写法:u=rwx

[root@localhost test]# ll
总用量 16
-rw-r--r--. 1 root root 43 8月   7 16:46 cat1
-rw-r--r--. 1 root root 19 8月   7 16:46 cat2
-rw-r--r--. 1 root root 57 8月   7 19:34 head
-rw-r--r--. 1 root root 55 8月   7 20:18 siting
[root@localhost test]# chmod u=rwx,g=rwx cat1
[root@localhost test]# ll
总用量 16
-rwxrwxr--. 1 root root 43 8月   7 16:46 cat1
-rw-r--r--. 1 root root 19 8月   7 16:46 cat2
-rw-r--r--. 1 root root 57 8月   7 19:34 head
-rw-r--r--. 1 root root 55 8月   7 20:18 siting

同时更改多个所属对象权限,中间用“,”隔开

授权表示法:直接操作一类用户的一个权限为r,w,x

写法:u+(r|w|x) u-(r|w|x) g+(r|w|x) g-(r|w|x) o+(r|w|x) o-(r|w|x)

a+(r|w|x) a-(r|w|x)

[root@localhost test]# chmod u+x,g+w cat2
[root@localhost test]# ll
总用量 16
-rwxrwxr--. 1 root root 43 8月   7 16:46 cat1
-rwxrw-r--. 1 root root 19 8月   7 16:46 cat2
-rw-r--r--. 1 root root 57 8月   7 19:34 head
-rw-r--r--. 1 root root 55 8月   7 20:18 siting

2、chmod [OPTION]... OCTAL-MODE FILE...

[root@localhost test]# chmod 755 head
[root@localhost test]# ll
总用量 16
-rwxrwxr--. 1 root root 43 8月   7 16:46 cat1
-rwxrw-r--. 1 root root 19 8月   7 16:46 cat2
-rwxr-xr-x. 1 root root 57 8月   7 19:34 head
-rw-r--r--. 1 root root 55 8月   7 20:18 siting

3、chmod [OPTION]... --reference=RFILE FILE... 指定目标文件与所指文件的权限一致(不常用)

[root@localhost test]# chmod --reference=cat1 siting
[root@localhost test]# ll
总用量 16
-rwxrwxr--. 1 root root 43 8月   7 16:46 cat1
-rwxrw-r--. 1 root root 19 8月   7 16:46 cat2
-rwxr-xr-x. 1 root root 57 8月   7 19:34 head
-rwxrwxr--. 1 root root 55 8月   7 20:18 siting

siting与cat1文件的权限保持一致


chown 修改属主属组

chown - change file owner and group

表达格式:

       chown [OPTION]... [OWNER][:[GROUP]] FILE...

       chown [OPTION]... --reference=RFILE FILE...

常用选项:

-R 递归修改该

1、chown [OPTION]... [OWNER][:[GROUP]] FILE...

[root@localhost test]# chown gentoo:fedore cat1
[root@localhost test]# ll
总用量 16
-rwxrwxr--. 1 gentoo fedore 43 8月   7 16:46 cat1
-rwxrw-r--. 1 root   root   19 8月   7 16:46 cat2
-rwxr-xr-x. 1 root   root   57 8月   7 19:34 head
-rwxrwxr--. 1 root   root   55 8月   7 20:18 siting

2、chown [OPTION]... --reference=RFILE FILE...

[root@localhost test]# chown --reference cat1 cat2
[root@localhost test]# ll
总用量 16
-rwxrwxr--. 1 gentoo fedore 43 8月   7 16:46 cat1
-rwxrw-r--. 1 gentoo fedore 19 8月   7 16:46 cat2
-rwxr-xr-x. 1 root   root   57 8月   7 19:34 head
-rwxrwxr--. 1 root   root   55 8月   7 20:18 siting

因为chown既可以改属主又可以改属组所以下面这个chgrp命令就被打入冷宫,为了缅怀一下它,这里还是简要介绍下

chgrp - change group ownership 修改属组

表达格式:

       chgrp [OPTION]... GROUP FILE...

       chgrp [OPTION]... --reference=RFILE FILE...

[root@localhost test]# chgrp gentoo head
[root@localhost test]# ll
总用量 16
-rwxrwxr--. 1 gentoo fedore 43 8月   7 16:46 cat1
-rwxrw-r--. 1 gentoo fedore 19 8月   7 16:46 cat2
-rwxr-xr-x. 1 root   gentoo 57 8月   7 19:34 head
-rwxrwxr--. 1 root   root   55 8月   7 20:18 siting
[root@localhost test]# chgrp --reference cat1 siting
[root@localhost test]# ll
总用量 16
-rwxrwxr--. 1 gentoo fedore 43 8月   7 16:46 cat1
-rwxrw-r--. 1 gentoo fedore 19 8月   7 16:46 cat2
-rwxr-xr-x. 1 root   gentoo 57 8月   7 19:34 head
-rwxrwxr--. 1 root   fedore 55 8月   7 20:18 siting


umask :文件的权限反向掩码,俗称遮罩码

作用:它是为了控制默认权限,不要使默认的文件和目录具有全权而设的

文件:666-umask

目录:777-umask

:之所以文件用666去减,表示文件默认不能拥有执行权限,如果减得的结果中有执行权限,则需+1

umask:查看当前umask

[root@localhost test]# umask
0022

umask MASK :设置umask  仅对当前shell进程有效

若要长期修改umask的值,可以把它写进/etc/profile(全局有效)或~/.profile(个人)或~/.bash_profile

[root@localhost test]# umask 0002
[root@localhost test]# umask
0002
[root@localhost test]# touch umask1
[root@localhost test]# ll
总用量 16
-rwxrwxr--. 1 gentoo fedore 43 8月   7 16:46 cat1
-rwxrw-r--. 1 gentoo fedore 19 8月   7 16:46 cat2
-rwxr-xr-x. 1 root   gentoo 57 8月   7 19:34 head
-rwxrwxr--. 1 root   fedore 55 8月   7 20:18 siting
-rw-rw-r--. 1 root   root    0 8月   8 20:49 umask1

使用root用户创建一个新文件umask1其权限为664,umask为0002,其新建文件的权限符合我们的设定:666-002=664。

转载于:https://blog.51cto.com/chawan/1835800

Linux基础之文件权限详解相关推荐

  1. linux权限源码分析,Linux基础之文件权限详解

    Linux中对于权限的制定虽然没有Windows的那么精细,但是如果你了解并掌握Linux中文件的权限知识,也可以像Windows那样对权限做到精确配置. Linux中的文件权限是什么? 如何查看Li ...

  2. linux文件权限详解

    linux文件权限详解 一.文件和目录权限概述 在linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录. 通过设定权限可以从以下三种访问方式限制访问权限: ...

  3. 每天一个linux命令(2):文件权限详解

    Linux文件权限详解 文件和目录权限概述 在linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录. 通过设定权限可以从以下三种访问方式限制访问权限:只允 ...

  4. Linux 文件权限详解 含义和修改和安全

    Linux文件权限详解 文件和目录权限概述 在linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录. 第一次接触Linux 的时候,对于文件权限方面的知识 ...

  5. linux 恢复修改文件内容,Linux备份及恢复及Linux文件权限详解

    Linux备份及恢复及Linux文件权限详解 概述 一个系统管理员菜鸟不小心输入"chmod -R 777 /"从而导致了巨大的悲剧,使得整个系统遭到了严重的破坏.在日常管理中,我 ...

  6. linux添加目录命令权限,linux chmod命令设置目录/文件权限详解

    首页 > Linux教程 > 常用命令 > chmod 文件权限 linux chmod命令设置目录/文件权限详解 linux中chmod命令用于改变系统文件或目录的访问权限,用数字 ...

  7. linux e权限,Linux 文件权限详解

    查看文件详细信息 参数说明 权限说明 文件类型说明 d    目录 -     普通文件 l     连接文件 b    存储设备,例如硬盘,U盘 c    串行接口设备,例如键盘.鼠标 设置文件权限 ...

  8. Linux的用户-组-权限详解

    在Linux中我们可以使用ll或者ls -l命令来显示一个文件的属性以及文件所属的用户和组. 一.用户 1.1.新增用户 useradd luckyboy 会创建同名的组和家目录 1.2.设置密码 p ...

  9. swing 显示文件下文件_Linux 文件权限详解

    阅读五分钟,每日十点,和您一起终身学习,这里是程序员Android 本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以下内容: 一.使用ls -l 显示文件的详细信息 ...

最新文章

  1. Arrays.asList(arr)使用注意事项
  2. 两种求集合全部子集的方法
  3. java ef 引用问题_java调用shell(ps -ef | grep )问题
  4. 手机整屏显示数据php,完美解决手机网页大背景不能铺完整个屏幕的超级代码
  5. New Handler
  6. matlab 高级函数 —— colfilt/blockproc (图像)矩阵的分块处理
  7. 面向对象之自定义数据控件
  8. HDU 4825 (01字典树)
  9. 自动控制原理基础学习
  10. 计算机二级excel数据有效性,Excel数据有效性,最全面的教程在这里(2)
  11. 小学计算机课评价方案,小学信息技术学科考核评价方案
  12. 中国石油大学(北京)本科毕业论文答辩PPT模板
  13. 字节跳动8年经验,亲身经历教你如何从小白晋升月薪过万的测试工程师
  14. 计算机网络hdcp是什么意思,NTSC,HDCP ,NTSC/HDCP是什么意思
  15. OpenSSL Cipher 加密解密 Ruby on Rails
  16. 经典成就辉煌:从3Dmark看GPU发展之路
  17. nuxt整合vue-pdf插件和使用createLoadingTask方法进行分页
  18. js:进制转换、保留指定位数小数、RGB/Hex颜色色值转换
  19. 一组li或者div里面多个弹出层对应各自的内容
  20. 中国科学院计算机技术研究院,赵屹(中国科学院计算技术研究所研究员)_百度百科...

热门文章

  1. OpenStack Telemetry系统架构及实践
  2. JS 新建web sql 数据表
  3. libGDX-wiki发布
  4. 20151118小问题
  5. 实例变量和静态变量(或类变量static)
  6. 修改Visual Stdio 2010界面,以及添加一些其它VS2010的插件
  7. This task is currently locked by a running workflow and cannot be edited
  8. php冒泡排序和快速排序笔记
  9. 在用dw.GetSqlSelect()获得到的Sql语句出现PBSELECT( VERSION的解决办法
  10. 使用javasript 遍历页面CheckBox