首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux权限详解

一、文件、目录权限和所有者

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

文件的用户所有者(属主)

文件的组群所有者(用户所在组的同组用户)

系统中的其他用户

在linux系统中,每一位用户都有对文件或目录的的读取、写入和执行权限。

第一套权限控制访问自己的文件权限,即所有者权限

第二套权限控制用户组访问其中一个用户的文件的权限。

第三套权限控制其他所有用户访问一个用户的文件的权限。

这三套权限赋予用户不同类型(即用户所有者、组群所有者和其他用户)的读取、写入及执行权限,这就构成了一个有9种类型的权限组。

二、设置文件和目录基本权限

1、基本权限简介

使用ls -l命令可以显示文件和目录的详细信息,其中包括文件和目录的权限。如下:

上图第2~10个字符当中的每3个为一组,左边3个字符表示用户所有者权限,中间3个字符表示组群所有者的权限,右边3个字符是其他用户的权限。

r(读取):对文件而言,该用户具有读取文件内容的权限;对目录来说,该用户具有浏览目录的权限。

w(写入):对文件而言,该用户具有新增、修改文件内容的权限;对目录来说,该用户具有删除、移动目录内文件的权限

x(执行):对文件而言,该用户具有执行文件的权限;对目录来说,该用户具有进入目录的权限。

-:表示该用户不具有该项权限

| 举例 | 描述 |

| --- | --- |

| -rwx------ | 用户所有者对文件具有读取、写入和执行权限 |

| -rwxr--r-- | 用户所有者具有读取、写入和执行权限,其他用户则具有读取权限 |

| -rw-rw-r-x | 用户所有者和组群所有者对文件具有读取、写入权限,而其他用户只具有读取和执行权限 |

| drwx--x--x | 目录的用户所有者具有读写和进入目录权限,其他用户能进入目录,却无法读取任何数据 |

| drwx----- | 除了目录的用户所有者具有所有的权限之外,其他用户对该目录没有任何权限 |

每个用户都拥有自己的主目录,通常集中放置在/home目录下,这些主目录的默认权限为rwx------。使用一下命令查看主命令权限

2、基本权限的设置方法

只有系统管理员和文件/目录的所有者才可以更改文件和目录的权限,有以下两种方法

2.1 文字设定法设置权限

命令语法:chmod [操作对象] [操作符号] [权限] [文件|目录]

例子:取消/root/abc的写入权限

2.2 数字设定法设置权限

0表示没有权限=---

1表示可执行权限=--x

2表示写入权限=-w-

4表示读取权限=r--

将以上对应权限的数字相加就是某个文件或目录的权限,例如某个文件用户所有者有读取、写入和可执行权限,数字就是700;某个文件组群所有者拥有读取权限,数字就是040;其他用户拥有读取和写入权限,数字就是006.

使用命令chmod 006 [文件或命令]=chmod 6 [文件或目录]

所有数字属性的格式应该是三个0~7的数,其顺序是u、g、o

r:对应数值4

w:对应数值2

x:对应数值1

-:对应数值0

例如,如果向让某个文件的所有者有“读/写”两种权限,需要用数字6来表示,即4(可读)+2(可写)=6(读/写) 下面几个例子说明权限字符字母转换为数字

-rwx------:用数字表示为700

-rwxr--r--:用数字表示为744

-rw-rw-r-x:用数字表示为665

drwx--x--x:用数字表示为711

drwx------:用数字表示为700

使用chmod更改权限 命令语法:chmod [n1n2n3] [文件|目录]

例如:设置abc文件权限,用户所有者拥有读取、写入和执行的权限

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

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

SUID:对一个可执行文件,不是以发起者身份来获取资源的,而是以可执行文件的用户所有者身份来执行。

SGID:对一个可执行文件,不是以发起者身份来获取资源的,而是以可执行文件的组群所有者身份来执行的。

Sticky:对文件或目录设置Sticky之后,尽管其他用户有写权限,也必须由文件所有者执行删除和移动等操作。

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

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

2.4 特定权限的设置方法

文字设置法设置特殊权限

数字设定法设置特殊权限

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

SUID:对应数值是4

SGID:对应数值是2

Sticky:对应数值是1

例如:设置文件ah具有SUID权限

例子:设置文件ah具有Sticky权限

例子:设置文件ah具有SUID、SGID和Sticky权限。

2.5 更改文件和目录所有者

使用chown命令可以更改文件和目录的用户所有者和组群的所有者

命令语法:chown [选项] [用户.组群] [文件|目录] chown [选项] [用户.组群] [文件|目录]

例子:将文件ah的组群所有者更改成newuser

例子:将文件ah的组群所有者更改成newuser

例子:将目录/root/b连同它的下级文件/root/b/c的用户所有者和组群所有者一起更改为newuser

例子:chmod -R 775 share

//-R share 目录及其子目录

//0--没有权限 1--可执行权限x 2--写入权限w 4--读取权限r

//赋予属主 可读可写可执行权限(第一个7 = 4 + 2 + 1)

//赋予属主组其他用户可读可写可执行权限(第二个7 = = 4 + 2 + 1)

//系统其他用户可读权限(5 = = 4 + 1)

这是一口君的新书,感谢大家支持!

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OkLiulc9GTsGm9jchPuIBNlg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券