欢迎各位兄弟 发布技术文章
这里的技术是共享的
在 Linux 中,目录的 读(r)、写(w)、执行(x) 权限与普通文件的权限含义不同,具体如下:
r
)作用:允许用户查看目录内的文件列表,但不能访问文件内容或进入目录。
示例:
bashls /path/to/directory # 可以列出目录中的文件名
限制:
如果没有 执行权限(x
),即使有 r
权限,也无法查看文件详细信息(如 ls -l
),也无法访问文件内容。
w
)作用:允许用户在目录中创建、删除、重命名文件或子目录。
示例:
bashtouch /path/to/directory/newfile # 可以创建文件 rm /path/to/directory/oldfile # 可以删除文件 mv /path/to/directory/file1 /path/to/directory/file2 # 可以重命名文件
关键点:
写权限 必须配合执行权限(x
) 才能生效。如果没有 x
权限,w
权限无效。
x
)作用:允许用户进入目录(cd
) 或 访问目录内文件的内容/元数据。
示例:
bashcd /path/to/directory # 可以进入目录 cat /path/to/directory/file # 可以读取文件内容(需文件本身有读权限)
关键点:
即使有 r
权限,也无法运行 ls -l
(因为需要访问目录的元数据)。
无法通过路径访问目录内的任何文件(即使文件权限宽松)。
如果没有 x
权限:
权限 | 含义 | 可执行的操作 |
---|---|---|
r-- | 仅读 | 仅能列出文件名,无法 cd 或访问文件内容 |
-w- | 仅写 | 无效(需配合 x 权限) |
--x | 仅执行 | 可 cd 进入目录,但无法列出文件(ls 失败) |
rw- | 读 + 写 | 可列出文件名,但不能 cd 或操作文件(需 x ) |
r-x | 读 + 执行 | 可 cd 、列出文件、访问文件内容(需文件权限允许) |
rwx | 读 + 写 + 执行 | 完全控制(增删改文件、进入目录等) |
用户需要访问目录中的文件:
必须具有目录的 x
权限,否则无法通过路径访问文件。
例如:即使文件权限是 777
,若其父目录无 x
权限,用户仍无法读取该文件。
用户需要修改目录内容:
必须同时具有 wx
权限,否则无法创建/删除文件。
安全建议:
目录通常设置为 755
(所有者 rwx
,其他人 r-x
)。
敏感目录可设为 700
(仅所有者完全控制)。
r
→ 查看文件名列表(需 x
才能生效)。
w
→ 修改目录内容(需 x
才能生效)。
x
→ 进入目录或访问文件(最关键权限)。
口诀:目录的 x
权限是“钥匙”,没有它,其他权限可能无效!