第六章 UNIX 文件系统
description
Transcript of 第六章 UNIX 文件系统
![Page 1: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/1.jpg)
第六章 UNIX 文件系统UNIX 文件的概念UNIX 文件的分类UNIX 文件系统UNIX 文件系统内部存储方式UNIX 文件系统的动态管理技术用于文件管理的系统调用文件随机存取技术文件记录管理技术文件系统的备份何恢复
![Page 2: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/2.jpg)
6.2 UNIX 文件的分类 文件类型 ls –l 命令输出信息的第一列表示文件信息
![Page 3: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/3.jpg)
普通文件 文本文件
ASCⅡ 码的字符流,组成文件的每个字节都是 ASCⅡ 码字符
二进制文件 编译后的执行文件 各种数据文件
![Page 4: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/4.jpg)
目录文件 目录 / 文件名 索引节点号
![Page 5: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/5.jpg)
特殊文件 ( 设备文件 ) UNIX 对文件和设备进行统一的管理,它把所有
的外部设备都按文件的形式提供给用户使用 字符设备文件(无缓冲)
键盘、终端、打印机 块设备文件(采用缓冲机制)
磁盘、 CD-ROM
![Page 6: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/6.jpg)
管道文件 作为进程间数据传递的通道,发送进程将数
据写入管道,接受进程按照相同的顺序从管道中读取数据 特点:先进先出( FIFO ) 无名管道
命令中的 | 或使用 pipe() 函数创建 有名管道
使用函数 mknod() 创建
![Page 7: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/7.jpg)
链接文件 硬链接
相当于原文件的别名。具有相同的物理地址和 inode 号
ln file1 file2 软链接
快捷方式 ln –s file1 file2
![Page 8: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/8.jpg)
相关的命令 获得文件信息
ls -i 显示 inode
od -c 显示 ASCII 码 -h 十六进制
![Page 9: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/9.jpg)
6.3 UNIX 文件系统 系统目录结构
UNIX 的文件系统是以目录形式组织和管理文件的
![Page 10: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/10.jpg)
文件的组织结构 UNIX 采用索引文件组织结构来管理文件
方便查询 对文件中的每一个可能成为检索条件的域都可
以建立索引,对记录的访问通过索引完成 索引技术使得文件存储结构清晰,访问速度快
![Page 11: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/11.jpg)
系统中的特殊文件和目录 / 根目录 /bin 存放必要的命令 /boot 存放 MBR 的复制 /dev 存放设备驱动文件 /etc 存放配置文件 /home 用户文件主目录 /lib 存放必要的运行库 /mnt 存放临时的映射文件系统 /proc 存放存储进程和系统信息 /root 超级用户的根目录 /sbin 存放系统管理文件 /tmp 存放临时文件 /usr 存放应用程序包的主目录 /var 存放系统产生的文件
![Page 12: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/12.jpg)
文件系统的安装与卸载 mount –t 类型 设备名 安装点
文件系统的类型可以缺省, OS 读取超级块来确定类型
#mount /dev/hdb1 /mnt/windiskfat #mount /dev/hdb2 /mnt/windiskntfs
umount 安装点 #umount /mnt/windiskfat #umount /mnt/windiskntfs
![Page 13: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/13.jpg)
文件系统的安装与卸载 Linux 下的分区概念是,硬盘上的每个分区
也是一个设备。他们的标志是 /dev/hdxy ,其中 hdx 表示哪个硬盘, y 表示第几个分区。以 hda 为例。 hda1 就是第一个分区,hda4 就是第四个分区位置。逻辑分区从 hda5 开始。
hda1 是主分区,格式是 windows 。 hda2 是扩展分区,在它上划出了 hda5,hda6… ,格式是 windows 。
![Page 14: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/14.jpg)
文件系统表 系统的 /etc/fstab
存放了文件系统的信息
![Page 15: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/15.jpg)
6.4 UNIX 文件系统内部存储方式 UNIX 文件系统按文件卷( volume) 进行构造,文
件卷与物理设备相对应
![Page 16: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/16.jpg)
文件系统的存储结构 一个 UNIX 文件系统分为四个部分。
0 #
1 #
2 #~ k#
k+1 #~ n#
![Page 17: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/17.jpg)
文件系统的存储结构 一个 UNIX 文件系统分为四个部分。
0 #
1 #
2 #~ k#
k+1 #~ n#
![Page 18: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/18.jpg)
文件系统的存储结构 一个 UNIX 文件系统分为四个部分。
0 #
1 #
2 #~ k#
k+1 #~ n#
![Page 19: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/19.jpg)
文件系统的存储结构 一个 UNIX 文件系统分为四个部分。
0 #
1 #
2 #~ k#
k+1 #~ n#
![Page 20: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/20.jpg)
文件系统的存储结构 一个 UNIX 文件系统分为四个部分。
0 #
1 #
2 #~ k#
k+1 #~ n#
![Page 21: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/21.jpg)
索引节点和目录文件的作用 传统的 Unix 目录文件登记项:
Unix System V 的目录结构
索引节点号 (2 字节 ) 文件名 (14 字节 )
![Page 22: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/22.jpg)
索引节点和目录文件的作用 1078 File1.c
1080 File2.c
2276 dir1
3476 A.exe
File2.c 索引指针
索引节点表
File2.c 数据
数据区
![Page 23: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/23.jpg)
多重索引存储结构 (自学 ) 0
1
9
1011
12
直接寻址数据
块
一次间接
二次间接
三次间接
![Page 24: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/24.jpg)
6.5 UNIX 文件系统的动态管理技术 支持多种文件系统的机制
数据结构的动态管理
文件的检索过程
文件的共享方式
![Page 25: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/25.jpg)
支持多种文件系统机制 Linux 可以识别的文件系统:
Affs Extfs Hpfs Iso9660 Minix Msdos …
![Page 26: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/26.jpg)
支持多种文件系统机制 虚拟文件系统和实际文件系统 图 6-11
![Page 27: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/27.jpg)
数据结构的动态管理 (自学 ) 内存超级快 活动索引节点表 用户代开文件表 系统打开的文件表 安装表 图 6-12
![Page 28: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/28.jpg)
文件的检索过程 见图 6-13
![Page 29: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/29.jpg)
文件共享的方式 不同用户不同级别的共享 父子进程对文件的共享 文件的链接共享 在同祖先的进程之间建立管道线的文件共享
![Page 30: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/30.jpg)
文件的链接共享 ln abc.c xyz.c ln –s xyz def.c
![Page 31: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/31.jpg)
6.6 用于文件管理的系统调用 和 C语言的文件函数相似 (略讲 ) creat() open() close() read/write()
![Page 32: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/32.jpg)
6.7 文件随机存取技术 和 C语言的文件函数相似 (略讲 ) lseek() tell()
![Page 33: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/33.jpg)
6.8 文件记录管理技术 lockf() :文件记录锁定
![Page 34: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/34.jpg)
6.9 文件系统的备份与恢复技术 (自学 ) 备份
恢复
![Page 35: 第六章 UNIX 文件系统](https://reader035.fdocuments.net/reader035/viewer/2022081416/5681555f550346895dc32a1e/html5/thumbnails/35.jpg)
总结 UNIX 文件的概念 UNIX 文件的分类 UNIX 文件系统 UNIX 文件系统内部存储方式