iNode:索引节点(index node)
iNode是用来存储数据属性信息的,iNode包含的属性包括:
文件大小
属组
归属的用户组
读写权限
文件类型
修改时间
指向文件实体的指针功能(iNode节点和block的对应关系)
但是,iNode不包括文件名
iNode小结:
-
磁盘分区格式化为ext4文件系统后会生成一定数量的iNode和block
-
iNode是索引节点,作用是存放文件的属性信息以及文件的索引(指向文件的实体block)
-
ext3/ext4文件系统的block存放的是文件的实际内容
-
Block的大小一般有1k,2k,4k,其中引导分区为1k,其他分区为4k
-
inode是一块磁盘存储空间,centos6非启动分区iNode默认大小256字节,centos5是128字节
-
iNode是一串数字,不同的文件对应的iNode在文件系统里是唯一的。
-
iNode号相同的文件,互为硬链接文件(硬链接就是文件的又一个入口)
-
一个文件被创建后至少要占用一个iNode和一个block
-
如果一个文件很大,可能占多个block
-
如果文件很小,也要至少占一个block,并且剩余空间不可以使用,浪费了
-
iNode大小和总量查看:
dumpe2fs /dev/sda3|egrep -i “block size|inode size”
dumpe2fs /dev/sda3|egrep -i “block count |inode count”
-
查看iNode的总量和使用量命令df -i
-
生成和指定iNode大小,mkfs.ext4 -b 2048 -I 256 /dev/sdb
block
Block 小结:
Block 是用来存储实际数据的。
理解:可以把iNode理解为一本书的目录,block理解为书的每一页。
- 磁盘读取数据是按block为单位读取的。
- 一个文件可能占多个block,每读取一个block就会消耗一次磁盘I/O
- 如果要提升磁盘I/O性能,那么就要尽可能一次读取数据多。
- 一个block只能存放一个文件的内容,无论内容有多小,如果block为4K,那么存放1k的文件,剩余的就浪费了。
- Block并非越大越好,block太大对于小文件存放就会浪费磁盘空间,
- 大文件(大于16K)一般设置block大一点,小文件(小于1k)一般设置小一点。
- Block太大例如4K,文件都是0.1k,太浪费磁盘空间。
- Block太大例如1k,文件都是1000K,消耗磁盘IO
- 文件较大时,block设置大点会提升磁盘访问效率
- ext3/ext4文件一般设置成4k.
原创文章,作者:zhaobenshan,如若转载,请注明出处:http://www.178linux.com/81685
评论列表(1条)
文件的inode与block对应关系有命令查看吗?