一、权限概述
Linux权限控制是指对文件和目录的访问权限进行限制,以保护系统安全和数据完整性。其作用包括以下几个方面:
- 保护系统安全:Linux系统中许多重要的配置文件和程序文件只有管理员才有权限访问,一般用户不能修改或删除这些文件,以防止系统被破坏。
- 保护用户数据:每个用户的家目录和个人文件只有该用户和管理员有访问权限,其他用户无法访问,以保护用户的个人数据不被他人盗取或误操作。
- 提高系统可管理性:权限控制可以使得管理员可以更方便地管理系统,例如,管理员可以通过权限控制来控制用户对某个目录的读写权限,以便对系统的使用情况进行监控。
Linux权限控制包括哪些内容?
- Linux系统一般将文件和目录可存/取访问的身份分为3个类别:owner、group、others,且三种身份有读、写、执行权限。
- Linux系统中,每个文件或者目录都有一个所有者(owner)和一个所属组(group),可以使用“ls -l”或者“ll”命令查看。
- Linux系统中,每个文件或目录都有一个权限码(mode),用来表示不同身份对该文件或者目录的操作权限。权限码由12位二进制数或4位八进制数表示。
二、用户权限控制
Linux操作系统用户总共分为三类,分别是:
- root超级用户(ID 0)
- 系统用户 (ID 1-499)
- 普通用户 (ID 500以上)
Linux操作系统用户有如下特点:
- 每个用户拥有一个UID,操作系统实际读取的是UID,而非用户名;
- 每个用户都属于一个组,每个组都拥有一个GID;
- 每个用户最多拥有31个附属组;
- 每个可登录用户都拥有一个指定的Shell环境。
Linux系统中,用户用来控制文件或目录访问权限的三种方式,分别是读(r)、写(w)、执行(x)权限。每个权限都可以用一个二进制位来表示。“1”表示有该权限,“0”表示没有该权限。
数字 | 符号 | 权限 |
0 | - | 无权限 |
1 | x | 只有执行权限 |
2 | w | 只有写入权限 |
3 | wx | 写入和执行权限 |
4 | r | 只有读权限 |
5 | rx | 读取和执行权限 |
6 | rw | 读取和写入权限 |
7 | rwx | 读写执行权限 |
Linux的文件调用权限分为三级:文件所有者(Owner)、用户组(Group)和其他用户(Other Users)。
三、文件目录权限控制
- chmod命令
chmod命令修改文件权限,基本语法如下:
chmod <options> <mode> <file>
主要参数如下:
参数 | 说明 |
-c | 若该文件权限已经被更改,显示更改动作 |
-f | 若该文件权限无法被更改不显示错误信息 |
-v | 显示权限变化的详细信息 |
-R | 对当前目录及子目录下的所有文件进行权限更改 |
mode权限设定的基本格式如下:
[ugoa]*([-+=]([rwxXst]*|[ugo]))+|[-+=][0-7]+
- “u”表示该文件拥有者,“g”表示与该文件拥有者属于同一个属组(Group)者,“o”表示其他以外的用户。
- “+”表示加上权限,“-”表示去掉权限,“=”表示设定唯一权限。
- “r”表示读权限,“w”表示写权限,“x”表示执行权限,“X”表示只有该文件是子目录文件或者该文件已经被设定为可执行。
chmod命令修改目录权限,基本语法如下:
chmod <options> <mode> <directory>
四、特殊权限
Linux特殊权限包括以下三种:
- SUID权限:set user id,设置用户id,用“S”或“s”表示,对应的数字为4。该权限可以让普通用户以文件所有者的身份执行文件或者程序。
- SGID权限:set group id,设置组id,用“S”或“s”表示,对应数字为2。该权限可以让用户组内的成员共享文件或目录的访问权限。
- Sticky权限:粘滞位权限,用“T”或“t”表示,对应数字为“1”。该权限可以防止其他用户删除或修改某个目录下的文件。
chmod设置特殊权限
chmod设置特殊权限基本语法如下:
chmod <options> <mode> <file>
chmod设置目录特殊权限基本语法如下:
chmod <options> <mode> <directory>
标签:文件,用户,chmod,详解,Linux,权限,目录
From: https://blog.csdn.net/qq_27815483/article/details/140263837