文件系统的定义
对用户来说,文件系统是存储信息的文件和目录的集合。
对操作系统来说,文件系统是以一些数据的集合。
磁盘文件系统
Solaris定义了3种文件系统类型:
ufs – UNIX文件系统。是Solaris缺省的文件系统。
hsfs – 高密度CD-ROM文件系统,是只读文件系统。
pcfs – PC文件系统,支持DOS格式化的软盘。
网络文件系统
NFS是Solaris系统支持的网络文件系统。
内存文件系统
指操作系统运行时存在于内存中的文件系统。
流分区已经定义了分区的大小和位置,但未创建文件系统。
块分区已经创建了文件系统。
它们之间的逻辑设备名分别存放在/dev/rdsk河/dev/dsk中。
磁盘卷标包含了磁盘的分区表。磁盘卷标存放在磁盘的第一个扇区。
启动块
启动块存放着启动程序。位于磁盘的1-15扇区。
超级块
超级块包含启动块后面的16个扇区。超级块是文件系统的信息表,包含:
数据块的数量
柱面组的数量
数据块和碎片的大小
硬件的描述
挂接点
文件系统的状态:干净、稳定或激活
备份的超级块
由于超级块包含了许多关键数据,因此,必须要备份。备份是在文件系统创建时产生的。
Solaris下以inode的方式记录文件
Inode包含文件的下列信息:
文件类型和访问模式
文件的拥有者和所在组的
文件大小
上次访问和更改的时间以及inode更改的时间
已用数据块的数量
inode包含两种指针:直接指针和间接指针
直接指针
有12个,直接指向数据块。这12个指针可以支持96K字节的文件。
间接指针
单倍间接– 单倍间接指针指向包含指针的数据块。这样可以支持16M字节的文件。
双倍间接–双倍间接指针指向包含单倍间接指针的数据块。这样可以支持32G字节的文件。
三倍间接–三倍间接指针指向包含双倍间接指针的数据块。这样可以支持70T字节的文件。
newfs创建文件系统
# newfs /dev/rdsk/c0t2d0s0
newfs: construct a new file system /dev/rdsk/c0t2d0s0: (y/n)? y
/dev/rdsk/c0t2d0s0: 41040 sectors in 57 cylinders of 9 tracks, 80 sectors
21.0MB in 4 cyl groups (16 c/g, 5.90MB/g, 2688 i/g)
super-block backups (for fsck -F ufs -o b=#) at: 32, 11632, 23232, 34832,
文件系统检测工具(fsck)用于检测文件系统是否出错。
比如,某个数据块不能同时被两个不同的inode占用。Fsck程序可以检测这种错误。
# fsck /dev/rdsk/c0t3d0s7
** /dev/rdsk/c0t3d0s7
** Last Mounted on /export/home
** Phase 1 - Check Blocks and Sizes
** Phase 2 - Check Pathnames
** Phase 3 - Check Connectivity
** Phase 4 - Check Reference Counts
** Phase 5 - Check Cyl groups
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 系统 介绍 文件 指针 间接 包含 数据 错误 磁盘 字节 |
注册
个人空间
