权限
权限与目录
本地用户与组相关文件
Linux 用户权限 存储位置
/etc/passwd
Linux 用户密码 存储位置
/etc/shadow
Linux 组权限 存储位置
/etc/group
临时切换操作者账号
su
命令(substitute user)
若 su 命令不加任何参数,则默认指定为转换至 root
账号
ls
命令与其返回内容的含义
ls -al
同 -all --long
罗列该目录下所有的文件以及他们的比较全面的信息
eg.
$ ls -al
...省略...
drwxr-xr-x. 3 root root 17 Jul 6 11:27 .config
...省略...
内容 | 位置 | 含义 | 备注 |
---|---|---|---|
drwxr-xr-x. | 第 1 段 | 文件类型与权限 | 详见 下方内容 |
3 | 第 2 段 | 文件链接数 | 这里指硬链接的数量 |
root | 第 3 段 | 文件的拥有者 | |
root | 第 4 段 | 文件所属的组 | |
17 | 第 5 段 | 文件的大小 | 默认单位为 byte |
Jul 6 11:27 | 第 6 段 | 文件最后被修改的时间 | 短期显示为 日月时,长期显示为 日月年 |
.config | 第 7 段 | 文件的名称 |
第 1 段 文件类型与权限
位置 | 含义 |
---|---|
第 1 位 | 文件类型 |
第 2 ~ 4 位 | 文件所有者的权限 [1] |
第 5 ~ 7 位 | 文件所有者所在组的权限 [1] |
第 8 ~ 10 位 | 文件所有者与所在组之外用户的的权限 [1] |
第 11 位 之后 | 其他特殊权限设置标记 |
[1] 每个文件权限位置 均包含以下三个内容:读取(r
) 写入(w
) 执行(x
)
第一位 表示 文件类型
标记 | 含义 | 设备类型举例 | 设备特点 |
---|---|---|---|
- | 普通文件 | ||
d | 目录文件 | Linux 中目录也是一个文件 | |
l | 符号链接文件 | ||
b | 块设备 | 硬盘 / 光驱 | 数据以块为单位存储,块与块之间存取互不干扰 |
c | 字符设备 | 键盘 鼠标 调制解调器 | 数据以数据流的方式存取,只能按照时序来读取 |
s | 套字节文件 | 与内核中的 TCP / UDP 栈相关 | 网络传输 |
p | 管道文件 | 多程序同时读写一个文件时出现 |
文件 与 目录 的 读取、写入、执行权限
文件的权限 | 含义 |
---|---|
读取(r ) | 文件内容可以被读取 |
写入(w ) | 文件的内容可以被修改 |
执行(x ) | 文件可以被当做可执行文件而运行 |
目录的权限 | 含义 |
---|---|
读取(r ) | 可以 罗列 当前文件夹中的 文件名 / 文件夹名 |
写入(w ) | 可以 创建 删除 当前文件夹中的 文件 文件夹 |
可以 修改 当前目录中的 文件名 / 文件夹名 | |
执行(x ) | 可以 切换 到该 文件夹下 执行操作 |
注意:文件夹自身名称的是否可以修改是受到 上层目录 的控制,而非自身属性的控制
chgrp
chown
chmod
修改群组、所有者、权限
chgrp [-r] [新群组] [文件名]
chown [-r] [新所有者]|{[新所有者]:[新群组]} [文件名]
chmod [-r] [u/g/o/a] [+/-/=] {[r/w/x/X]|[0/1/2/4/...]}
chmod
用法详细说明
chmod
-> 对哪些人(u
(ser) g
(roup) o
(thers) a
(ll))添加(+
) 删除(-
) / 覆写(=
)哪些(r
/w
/x
)权限r
w
x
可以表示为 三位 二进制码
存在
r
对应的 二进制 是100
,即 十进制 的4
存在
w
对应的 二进制 是010
,即 十进制 的2
存在
x
对应的 二进制 是001
,即 十进制 的1
所以权限也可以写成十进制的 加和结果
eg.
$ chmod u=rwx,go=rx SomeFile.txt # 注意中间的用逗号连接
# 就是 赋予 所有者 读、写、执行 的权限,赋予群组和其他人 读、执行 的权限,同时去除群组和其他人的 写 的权限
等价于
$ chmod 755 SomeFile.sh
eg.
chmod a-x SomeFile.sh
# 只去除所有人的 执行 权限,而不修改其他权限
tips: 特殊设置
chmod [-R] [a/u/g/o][+/-/=]X
# 使用大写的 X,仅会修改 目录的 x 权限,而不会修改 普通文件的 x 权限
FHS
(Filesystem Hierarchy Standard)文件系统层次结构标准
FHS
为 UNIX 和 Linux 建议的文件系统目录标准,定义了主要文件夹的名称和含义
参见:Filesystem Hierarchy Standard Specifications Archive
部分内容列举:
路径 | 含义 | 内容列举 | 备注 |
---|---|---|---|
/ | 根目录 | 所有目录都要基于这个目录而构建 | |
/bin | 单用户模式 下的必要命令 | cat ls cp | |
/boot | 引导程序 相关文件 | vmlinuz inird grub2 | |
/dev | 设备 映射的文件 | sda tty0 random / null | |
/etc | 配置文件的存放目录 | ||
/home | 用户的主目录 | ||
/lib | 被 /bin 和 /sbin 中的程序需要的 基础库 | ||
/lib/modules | 内核模块 | 各种硬件驱动 | |
/media | 可移除的媒体 | CD-ROM / USBDriver | |
/mnt | 临时挂载文件系统 | ||
/opt | 额外的软件 | 原来常置于 /usr/local 中 | |
/run | 运行时变量数据 | 最后一次启动后的系统运行信息 | |
/sbin | 系统必要的程序 | fsck init route | |
/srv | 与网站相关的程序和服务 | ||
/sys | 包含设备、驱动和内核特性的信息 | ||
/tmp | 零时文件 | 一般在系统关机之后清除 | |
/usr | “仅读”用户数据 | 包含主要的用户工具和程序 | |
/usr/bin | 非基础命令行工具 | ||
/usr/include | 标准头文件 | ||
/usr/lib | 被 /usr/bin 和 /usr/sbin 中的程序需要的 库文件 | ||
/usr/local | 与本机相关的本地数据 | ||
/usr/sbin | 非必要系统程序 | ||
/usr/share | 构架无关(共享)数据 | ||
/usr/src | 源码文件 | ||
/var | 随系统的使用产生变化的数据 | ||
/var/log | 各类日志文件 | ||
/var/tmp | 系统重启之后依旧需要保留的临时文件 |
作者:SteveChen 创建时间:2025-04-06 13:59
最后编辑:SteveChen 更新时间:2025-04-06 14:00
最后编辑:SteveChen 更新时间:2025-04-06 14:00