week5
文件系统
类别 | 描述 |
---|---|
根文件系统 | 整个文件系统的基础,不能脱卸(unmount) |
子文件系统 | 包含硬盘,软盘,…,以根根文件系统中某一目录的身份出现 |
注: 根文件系统和子文件系统都有其自己独立的文件存储结构,甚至文件系统的格式也不同。
创建与删除
1 | 1. 在块设备文件 /dev/sdb上创建文件系统 |
文件系统的结构
组成 | 描述 |
---|---|
引导块 | 用于启动系统,仅根文件系统的引导块有效 |
专用块 | 存放文件系统的管理信息,例如文件系统的大小,i节点区的大小 |
i节点区 | 存放指向文件存储区数据块的一些索引指针,即逻辑地址与物理地址的映射,文件类型,不包含文件名 |
文件存储区 | 存放文件数据,包含目录表 |
i节点区
- i节点区由若干块构成,在 mkfs 命令 创建 文件系统时 确定
- 每块 可容 若干 个i节点,每个 i节点的大小是固定(比如 64kB)
- i节点从0开始编号,根据编号可以索引到磁盘块
- 每个文件度对应1个i节点
- i 节点包含的信息:
- 指向文件存储区数据块的一些索引 指向文件存储区数据块的一些索引指针
- 文件类型,属组,权限,link数,大小,时戳,不包含文件名
注:
- 目录表包含:文件名和i节点号
- ls命令列出的目录大小为目录表文件本身的长度
- 目录表和i节点两级结构主要是为了提高目录检索的效率
软,硬连接
硬连接:目录表中的“文件名-i节点号”映射关系,可以在同一目录或者不同目录中的两个文件项有相同的i节点号。
硬连接数目:同一i节点被目录项引用次数
创建硬连接: ln chapt0 intro
注:
- chapt0与intro同时存在时,地位平等
- 删除chapt0文件,则intro仍存在但link数减1
- 硬连接,只限于同一文件系统的普通文件
符号连接:又叫做软连接
- 文件仅包含一个路径名
1 | ln -s users_on sym.link |
符号连接中的相对路径:
- 若符号连接文件包含绝对路径名,引用绝对路径名
- 若包含相对路径名,是相对符号连接文件的位置,而非调用进程的当前工作目录
异同点:
- 软连接在算法实现,可以在目录和不同的文件系统中使用
文件的权限
普通文件的权限:
读、写、可执行,
不可写文件也可能被删除
可执行文件:
程序文件: 可执行文件
脚本文件: 文本文件, 第一行#!执行解释器,脚本运行时,是由解释程序创建一个进程
目录的权限
读权限, 是说能否访问目录表文件
写权限,是说能否写目录表文件
- 修改文件会修改i节点,不需要修改目录文件
- 目录无写权限不是指目录下所有文件禁止写
- 创建文件和删除文件,文件改名会修改目录文件
- 无写权限,目录表文件不许写
- 执行权限: 意味着分析路径名过程中可检索该目录
修改权限
chmod [ugoa][+-=][rwxst] 文件名表
u 文件主权限
g 同组用户权限
o 其他用户
a 所有
chmod 644 文件列表
注: 只允许文件主和超级 用户修改文件权限
unmask: 控制文件/目录的初始权限
unmask 打印当前值
unmask 022 将mask值设置为8进制的022,000 010 010 取消新文件和新目录的其他用户的w权限