文件权限管理
文件权限
文件权限就是文件的访问控制权限,即哪些用户和组群可以访问文件以及可以执行什么样的操作。
Unix/Linux系统是一个典型的多用户系统,不同的用户处于不同的地位,对文件和目录有不同的访问权限。为了保护系统的安全性,Unix/Linux系统除了对用户权限作了严格的界定外,还在用户身份认证、访问控制、传输安全、文件读写权限等方面作了周密的控制。
在 Unix/Linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录。
访问用户分类
通过设定权限可以从以下三种访问方式限制访问权限:
1)只允许用户自己访问(所有者)
所有者就是创建文件的用户,用户是所有用户所创建文件的所有者,用户可以允许所在的用户组能访问用户的文件。
2)允许一个预先指定的用户组中的用户访问(用户组)
用户都组合成用户组,例如,某一类或某一项目中的所有用户都能够被系统管理员归为一个用户组,一个用户能够授予所在用户组的其他成员的文件访问权限。
3)允许系统中的任何用户访问(其他用户)
用户也将自己的文件向系统内的所有用户开放,在这种情况下,系统内的所有用户都能够访问用户的目录或文件。在这种意义上,系统内的其他所有用户就是 other 用户类
这有点类似于 QQ 空间的访问权限:
l 这个 QQ 空间是属于我的,我相当于管理者(也就是“所有者”),我想怎么访问就怎么访问。
l 同时,我可以设置允许 QQ 好友访问,而这些 QQ 好友则类似于“用户组”。
l 当然,我可以允许所有人访问,这里的所有人则类似于(不完全等价)“其他用户”。
访问权限说明
用户能够控制一个给定的文件或目录的访问程度,一个文件或目录可能有读、写及执行权限:
读权限(r)
对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。
写权限(w)
对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
可执行权限(x)
对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。
注意:通常,Unix/Linux系统只允许文件的属主(所有者)或超级用户改变文件的读写权限。
chmod命令
chmod 修改文件权限有两种使用格式:字母法与数字法。
字母法:chmod u/g/o/a +/-/= rwx 文件
[ u/g/o/a ] | 含义 |
---|---|
u | user 表示该文件的所有者 |
g | group 表示与该文件的所有者属于同一组( group )者,即用户组 |
o | other 表示其他以外的人 |
a | all 表示这三者皆是 |
[ ±= ] | 含义 |
---|---|
‘+’ | 增加权限 |
‘-’ | 撤销权限 |
‘=’ | 设定权限 |
注意 这里实际应用并没有单引号 我是防止csdn识别错误加上去的
chmod o+w file 给文件file的其它用户增加写权限:
chmod u-r file 给文件file的拥有者减去读的权限:
chmod g=x file设置文件file的所属组权限为可执行,同时去除读、写权限:
~$ ls -l a
~$ chmod o+w a
~$ ls -l a
~$ chmod u-r a
~$ ls -l a
~$ chmod g=x a
~$ ls -l a
~$ chmod u=r a
~$ ls -l a
数字法:“rwx” 这些权限也可以用数字来代替
rwx | 含义 |
---|---|
r | 读取权限,数字代号为 “4” |
w | 写入权限,数字代号为 “2” |
x | 执行权限,数字代号为 “1” |
‘-’ | 不具任何权限,数字t代号为 “0” |