磁盘及文件系统
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了磁盘及文件系统相关的知识,希望对你有一定的参考价值。
扇区
磁道
不同盘片的相同磁道组成柱面
MBR:
bootloader位于0磁道0扇区512byte中的前446个byte,后64个byte中的每16个byte标识一个分区,共支持4个主分区。最后2个byte成为magic,标识mbr是否有效。
数据按照柱面进行存贮,以加快速度。
按照柱面进行分区,位于盘片最外面的柱面,读写速度最快。
文件系统把分区分为两大部分:
1、文件元数据,即文件条目,包括文件名,及对应的使用了哪些数据块。
inode位图:单独划分出一段空间用来表示文件条目的索引信息
inode:表示一个文件条目,包括inode号、文件属组、权限等、文件占用的数据块。注意没有 文件名。如果该文件过大,inode还有二级或三级索引。
文件名保存在目录中。
目录也是文件,占用磁盘块,目录磁盘块的信息分为2段:他下面可以找到的文件名及 其对应的inode号。 目录项(dentry)
块位图,用一个bit表示数据块是否在用
2、文件内容按数据块存贮(一个数据块包含多个物理扇区)
超大分区:在元数据区把分区分为若干逻辑快组,用超级快描述快组信息,快组内部同上
建立一个文件的过程:
1、扫描inode文图,找一个空闲的inode,并标记该inode被占用
2、在目录文件的数据块上添加dentry(新建文件名和对应inode号)
3、扫描块位图文件,找到空闲的数据块,标记已占用
4、向数据块中写入文件内容。
删除一个文件的过程:
1、删除dentry项
2、inode位图中标记该inode号未占用
3、在块位图中标记数据块未占用
文件剪切:
1、增加dentry项
2、删除原dentry项
链接文件:
linux系统
1、硬链接:指向同一个inode的不同路径。他们之间的关系成为硬链接
只能指向文件,而不能是目录
不能跨文件系统
创建硬链接会增加文件被硬链接的次数
/path/a/m.txt
/path/b/n.txt 共同指向/path/x/x.txt
2、符号链接:该文件没有占用数据块,而是在该文件的inode中存储了一条文件路径。
可以应用于目录
可以跨文件系统
不会增加文件被链接的次数
其大小为指向的路径所包含的字符个数
ln [-s -v] srcfile destilink
-s 建立符号链接
-v 显示过程
不带选项是建立硬链接
du
du /directory :显示该目录下每个文件的大小
du -s /directory:显示整个目录文件的总大小
du -sh /directoy: 单位换算
df
显示文件系统使用空间大小
以上是关于磁盘及文件系统的主要内容,如果未能解决你的问题,请参考以下文章