1. Linux文件权限基础概念
在Linux系统中,每个文件和目录都有三组权限设置,分别对应三种用户身份:文件所有者(Owner)、所属组(Group)和其他用户(Others)。这种权限机制是Linux系统安全性的基石,理解它对于系统管理和日常操作至关重要。
权限由10个字符表示,第一位表示文件类型(-表示普通文件,d表示目录),后面9位分为三组,每组三位,分别对应读(r)、写(w)和执行(x)权限。例如"-rwxr-xr--"表示:
- 这是一个普通文件(第一位-)
- 所有者有读、写、执行权限(rwx)
- 所属组有读和执行权限(r-x)
- 其他用户只有读权限(r--)
注意:目录的执行权限(x)与普通文件不同,它表示能否进入该目录并访问其中的内容,即使有读权限但没有执行权限,也无法查看目录内容。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 权限表示方法与数字转换
Linux权限有两种表示方法:符号表示法和数字表示法。符号表示法就是我们看到的rwx形式,而数字表示法是将每组权限转换为一个数字。
权限数字的计算方法是:
- 读权限(r) = 4
- 写权限(w) = 2
- 执行权限(x) = 1
将每组权限对应的数字相加就是该组的权限值。例如:
- rwx = 4+2+1 = 7
- r-x = 4+0+1 = 5
- r-- = 4+0+0 = 4
因此,权限rwxr-xr--对应的数字表示就是754。这种数字表示法在chmod命令中经常使用。
3. 权限管理命令详解
3.1 chmod命令使用
chmod命令用于修改文件或目录的权限,有两种使用方式:
- 符号模式:
bash复制chmod [ugoa][+-=][rwx] 文件名
其中:
- u=用户,g=组,o=其他,a=所有
- +添加权限,-移除权限,=设置权限
例如:
bash复制chmod u+x file.txt # 给所有者添加执行权限
chmod go-w file.txt # 移除组和其他用户的写权限
- 数字模式:
bash复制chmod 755 file.txt
这将设置权限为rwxr-xr-x。
3.2 chown和chgrp命令
chown用于改变文件所有者:
bash复制chown 新所有者 文件名
