Linux文件和目录的权限

Linux教程:http://www.fdlly.com/m/linux
@[toc]

文件和目录的权限

简介:用户对一个文件或目录具有访问权限,这些访问权限决定了谁能访问,以及如何范围这些文件和目录。通过设置权限可以限制或允许以下三种用户访问:

  • 文件的用户所有者(属主)
  • 文件的组群所有者(用户所在组的同组用户)
  • 系统中的其他用户

文件和目录和权限简介

为了系统的安全性,Linux对文件和目录赋予了3种属性

  • 可读性:对于文件而言,可以读取文件内容;对于目录来说,可以浏览目录
  • 可写性:对于文件而言,可以新增、修改文件内容;对于目录来说,可以有删除、移动目录内文件
  • 可执行性:对于文件而言,可以执行文件;对于目录来说,其它用户可以进入目录,如果目录没有可执行性,则其它用户不能进入此目录

对应3种属性,Linux文件常用权限分为4种权限

  • 可读性权限:用r表示;对于文件而言,该用户具有读取文件内容的权限;对于目录来说,该用户具有浏览目录的权限
  • 可写性权限:用w表示;对于文件而言,该用户具有新增、修改文件内容的权限;对于目录来说,该用户具有删除、移动目录内文件的权限
  • 可执行性权限:用x表示;对于文件而言,该用户具有执行文件的权限;对于目录来说,其它用户具有进入目录的权限,如果目录没有可执行权限,则其它用户不能进入此目录
  • 无权限:用-表示,表示具备该权限

如何查看文件和目录的权限信息

在Linux系统中,使用ls命令就可以查看文件和目录的权限信息,不带任何参数的ls命令只显示文件名,要想显示文件和目录的权限信息,需要使用使用ls -l命令来显示文件和目录的详细信息,也可使用ls -al命令显示全部文件和目录的详细信息

[root@localhost ~]# ls -l /
总用量 16
lrwxrwxrwx.   1 root root    7 11月 20 21:21 bin -> usr/bin
dr-xr-xr-x.   5 root root 4096 11月 20 21:29 boot
drwxr-xr-x.  20 root root 3220 12月  3 14:09 dev
drwxr-xr-x.  75 root root 8192 12月  3 01:49 etc
drwxr-xr-x.   3 root root   16 12月  3 00:34 home
lrwxrwxrwx.   1 root root    7 11月 20 21:21 lib -> usr/lib
lrwxrwxrwx.   1 root root    9 11月 20 21:21 lib64 -> usr/lib64
drwxr-xr-x.   2 root root    6 4月  11 2018 media
drwxr-xr-x.   2 root root    6 4月  11 2018 mnt
drwxr-xr-x.   2 root root    6 4月  11 2018 opt
dr-xr-xr-x. 112 root root    0 12月  3 14:08 proc
dr-xr-x---.   5 root root  190 11月 22 22:22 root
drwxr-xr-x.  25 root root  740 12月  3 14:14 run
lrwxrwxrwx.   1 root root    8 11月 20 21:21 sbin -> usr/sbin
drwxr-xr-x.   2 root root    6 4月  11 2018 srv
dr-xr-xr-x.  13 root root    0 12月  3 14:09 sys
drwxrwxrwt.  10 root root  240 12月  3 14:24 tmp
drwxr-xr-x.  13 root root  155 11月 20 21:21 usr
drwxr-xr-x.  19 root root  267 11月 20 21:32 var

第一列显示文档类型与执行权限,由10个字符组成,分为4部分,其中文件权限标志位由3部分组成,如drwxr-xr-x,如下图所示

  • 第一位d表示普通文件
  • 接下来的3位rwx表示文件属主具有可读可写可执行的权限
  • 接下来的3位r-x表示与属主属于同一组的用户具有可读可执行权限,不具备可写权限
  • 接下来的3位r-x表示其它用户具有可读可执行权限,不具备可写权限
image

文件和目录的属主和属组

对于文件来说,它都有一个特定的所有者,也就是对该文件具有所有权的用户。同时,在Linux系统中,用户是按组分类的,一个用户属于一个或多个组。文件所有者以外的用户又可以分为文件所有者的同组用户和其他用户。
因此,Linux系统按文件所有者文件所有者同组用户其他用户来规定了不同的文件访问权限。

对于文件和目录而言,可以划分为3类用户

  • 属主用户:文件或目录的所有者
  • 属组用户:属主所在的属组的同组用户
  • 其它用户:除了属主和属组之外的用户

对于 root 用户来说,一般情况下,文件的权限对其不起作用。

设置文件和目录基本权限

3种权限按照不同方式可以分为字符模式和数字模式

  • 字符模式:4种权限可以用r、w、x、-表示,这种方法称为字符模式
  • 数字模式:4种权限可以用4、2、1、0表示,这种方法称为数字模式

所以按照模式的不同设置文件和目录基本权限也分为两种,一种是文字设定法设置权限,另一种是数字设定法设置权限

chmod语法

功能说明:
语法

chmod [操作对象] [操作符号] [权限] [文件|目录]

选项及参数

  • -c--changes:效果类似于-v参数,但仅回报更改的部分
  • -f--quiet--silent:不显示错误信息
  • -R--recursive:递归处理,将指定目录下的所有文件及子目录一并处理
  • -v--verbose:显示指令执行过程
  • --help:在线帮助
  • --reference=<参考文件或目录>:把指定文件或目录的权限全部设成和参考文件或目录的权限相同
  • --version:显示版本信息

权限范围的表示法如下

  • u:User,即文件或目录的拥有者
  • g:Group,即文件或目录的所属群组
  • o:Other,除了文件或目录拥有者或所属群组之外,其它用户皆属于这个范围
  • a:All,即全部的用户,包括拥有者,所属群组以及其它用户

有关权限代号的部分,列表与下

  • r:读取权限,数字代号为4
  • w:写入权限,数字代号为2
  • x:执行或切换权限,数字代号为1
  • -:不具任何权限,数字代号为0
  • s:特殊功能说明:变更文件或目录的权限

权限操作说明,列表与下

  • <权限范围>+<权限设置>:开启权限范围的文件或目录的该项权限设置
  • <权限范围>-<权限设置>:关闭权限范围的文件或目录的该项权限设置
  • <权限范围>=<权限设置>:指定权限范围的文件或目录的该项权限设置

简单版说明
<table><tr><td>部分</td><td>选项</td><td>选项含义</td></tr><tr><td rowspan="5">操作对象</td></tr><tr><td>u</td><td>用户所有者:即文件或目录的所有者</td></tr><tr><td>g</td><td>组群所有者:即与文件的用户所有者有相同组群GID的所有用户</td></tr><tr><td>o</td><td>其它用户</td></tr><tr><td>a</td><td>所有用户:这是系统默认值</td></tr><tr><td rowspan="4">操作符号</td></tr><tr><td>+</td><td>添加权限</td></tr><tr><td>-</td><td>取消权限</td></tr><tr><td>=</td><td>赋予给定权限并取消原有权限(如果有的话)</td></tr><tr><td rowspan="4">权限</td></tr><tr><td>r</td><td>读取权限</td></tr><tr><td>w</td><td>写入权限</td></tr><tr><td>x</td><td>可执行权限</td></tr></table>

文字设定法设置权限

对文件所有者添加权限

[root@localhost ~]# chmod u+w text.txt

对文件所有者取消权限

[root@localhost ~]# chmod u-w text.txt

对文件所有者设置权限

[root@localhost ~]# chmod u=w text.txt

对文件所有者,组群所有者,其它用户添加权限

[root@localhost ~]# chmod u+rwx,g+rx,o+r text.txt

对文件所有者,组群所有者,其它用户取消权限

[root@localhost ~]# chmod u-rwx,g-rx,o-r text.txt

对文件所有者,组群所有者,其它用户设置权限

[root@localhost ~]# chmod u=rwx,g=rx,o=r text.txt

数字设定法设置权限

数字表示法就是将4种权限r、w、x、-分别用4、2、1、0表示,然后再把授予的权限数字相加而成,如下面实例所示

权限数字说明实例

原始权限 转换为数字 数字表示法 说明
rwxrwxrwx (421)(421)(421) 777 用户所有者具有读取、写入、执行权限;组群所有者具有读取、写入、执行权限;其它用户具有读取、写入、执行权限

数字及其对应权限

数字表示法虽然简单,但是可读性较差,必须经发换算才能够知道相应的权限设置

数字 转换过的数字 对应权限
7 4+2+1 rwx
6 4+2+0 rw-
5 4+0+1 r-w
4 4+0+0 r--
3 0+2+1 -wx
2 0+0+0 -w-
1 0+0+1 --x
0 0+0+0 ---

设置用户所有者拥有读取、写入、执行权限

设置用户所有者拥有读取、写入、执行权限

[root@localhost ~]# chmod 700 text.txt

设置组群所有者拥有读取、写入、执行权限

设置用户所有者拥有读取、写入、执行权限,组群所有者拥有读取、写入、执行权限

[root@localhost ~]# chmod 770 text.txt

设置其它用户拥有读取、写入、执行权限

设置用户所有者拥有读取、写入、执行权限,组群所有者拥有读取、写入、执行权限,其它用户拥有读取、写入、执行权限

[root@localhost ~]# chmod 777 text.txt

设置文件和目录的特殊权限

在Linux系统中,除了可读性权限``可写性权限``可执行性权限外,还有三个特殊的权限,分别是SUID、SCID和Sticky

特殊权限简介

用户如果没有特殊的需求,一般不需要启用特殊权限,避免出现安全问题的隐患

特殊权限有以下几种类型
SUID:对一个可执行文件,不是以发起者身份来获取资源,而是以可执行文件的用户所有者身份来执行
SGID:对于一个可执行文件,不是以发起者身份来获取资源,而是以可执行文件的组群所有者身份来执行
Sticky:对文件或目录设置Sticky之后,尽管其他用户有写权限,也必须由文件所有者执行删除和移动等操作


因为SUID、SGID、Sticky占用x(执行权限)的位置来表示,所以在表示上会有大小写之分。假如同时开启执行权限和SUID、SGID、Sticky,则权限表示字符是小写的,如下所示

-rwsr-sr-t  1   root root   4096    8月  16  08:16   text.txt

如果关闭执行权限,则表示字符会变成大写

-rwSr-Sr-T  1   root root   4096    8月  16  08:16   text.txt

文字设定法设置特殊权限

添加SUID特殊权限

[root@localhost ~]# chmod u+s text.txt

删除SGID特殊权限

[root@localhost ~]# chmod g+s text.txt

设置Sticky特殊权限

[root@localhost ~]# chmod o=t text.txt

数字设定法设置特殊权限

如果要设置特殊权限,就必须使用四位数字才能表示
特殊权限的对应数值如下所示

  • SUID:对应数值4
  • SGID:对应数值2
  • Sticky:对应数值1

设置SUID特殊权限

[root@localhost ~]# chmod 4000 text.txt

设置SGID特殊权限

[root@localhost ~]# chmod 2000 text.txt

设置Sticky特殊权限

[root@localhost ~]# chmod 1000 text.txt

设置具有SUID、SGID、Sticky权限

[root@localhost ~]# chmod 7000 text.txt
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容