Linux 中任何一个文件都具有 「用户、用户组与其他用户」三种权限,一个用户可属于多个用户组。所有用户的相关信息都记录在 /etc/passwd
文件中,密码记录在 /etc/shaodw
文件,用户组记录在 /etc/group
文件。
root 用户权限最高,不算其他用户
ls -al -rw-r--r--@ 1 zhoust staff 58503 Dec 8 07:50 antigen.zsh drwxr-xr-x 2 zhoust staff 64 Apr 10 18:19 database drwxr-xr-x 6 zhoust staff 192 Apr 9 22:12 h5 drwxr-xr-x 4 zhoust staff 128 Nov 20 16:15 logs drwxr-xr-x 3 zhoust staff 96 Mar 18 17:42 node_modules -rw-r--r-- 1 zhoust staff 320 Mar 18 17:08 package-lock.json drwxr-xr-x 7 zhoust staff 224 Dec 8 07:20 software drwxr-xr-x 9 zhoust staff 288 Nov 20 16:32 store drwxr-xr-x 3 zhoust staff 96 Apr 4 15:43 vkds drwxr-xr-x 8 zhoust staff 256 Oct 23 15:06 照片 drwxr-xr-x 12 zhoust staff 384 Apr 19 08:36 学习视频
分为七个部分:
-
)、目录文件(d
)、链接文件(l
)文件名
相关教程:Linux视频教程
对文件来说,w
意味着可以修改该文件的内容(但不包含删除文件),x
意味着该文件有被执行的权限(真正是否能执行与文件内容有关)。
目录主要负责记录文件名列表
r
:意味着可以读取该目录结构w
:可对该目录下的文件(或目录)进行删除、添加、修改、移动、重命名等,权限极大
x
:能进入该目录如果用户只对某目录拥有 r 权限,只能查看该目录下的文件名称和类型,连文件大小以及各种属性都看不到。如 zst 用户只拥有 /home/zhoust
目录的读权限,只能看到该目录下的文件名称
[zhoust@MyPersonalCentOS ~]$ ls -al total 36 drwxr-xr-- 5 zhoust zhoust 4096 Apr 21 14:55 . [zst@MyPersonalCentOS ~]$ ls -l /home/zhoust/ ls: cannot access /home/zhoust/learn: Permission denied total 0 d????????? ? ? ? ? ? learn
如果用户对某目录没有 x 权限,无法执行该目录下的任何命令,也不能查询该目录下的文件内容。
操作动作 | /dir1 | /dir1/file1 | /dir2 | 解释 |
---|---|---|---|---|
读取 file1 内容 | x | r | - | 要能够进入 /dir1 才能读到里面的文件数据! |
修改 file1 内容 | x | rw | - | 能进入且能修改 |
删除 file1 文件 | wx | - | - | 能够进入 /dir1 具有目录修改的权限即可! |
将 file1 复制到 /dir2 | x | r | wx | 要能够读 file1 且能够修改 /dir2 内的数据 |
三个命令,chown
、chgrp
、chmod
分别表示修改文件所属用户、修改文件所属用户组、修改文件权限
chmod
语法分为两种,一种是用数字修改,另一种是用符号修改文件权限。
使用数字修改,分别是 421
将对应位置上的数字相加,例如:
# 在 /home/zhoust 目录下,其他用户都不可进入 [zhoust@MyPersonalCentOS ~]$ ls -al drwxrwxr-x 2 zhoust zhoust 4096 Apr 21 14:55 learn [zst@MyPersonalCentOS ~]$ cd /home/zhoust/ bash: cd: /home/zhoust/: Permission denied # 使用 chmod 修改为其他用户可进入,zst 就能进入这个目录了 [zhoust@MyPersonalCentOS ~]$ chmod 705 . [zhoust@MyPersonalCentOS ~]$ ls -al drwx---r-x 5 zhoust zhoust 4096 Apr 21 14:55 .
使用符号类型修改文件权限,格式为 [范围][修改][某权限]
,u
所属用户,g
用户组,o
其他用户,a
全部用户,用于修改的符号有 +-=
,权限还是那三个 rwx
。现在再把 /home/zhoust
目录的其他用户权限关闭:
[zhoust@MyPersonalCentOS ~]$ chmod o-rx . [zhoust@MyPersonalCentOS ~]$ ls -al total 36 drwx------ 5 zhoust zhoust 4096 Apr 21 14:55 .
以上是Linux学习之文件权限知识点总结的详细内容。更多信息请关注PHP中文网其他相关文章!