Linux基础篇学习——Linux文件系统之文件存储与读取:inode,block,superblock

Linux文件类型

代表符号含义
-常规文件,即file
ddirectory,目录文件
bblock device,块设备文件,支持以"block"为单位进行随机访问
ccharacter device,字符设备文件,支持以"character"为单位进行线性访问
lsymbolic link,符号链接文件
ppipe,命名管道
ssocket,套接字文件

文件命名规则

1.严格区分大小写
2.目录也是文件
3.除过/以外的任意字符表示
4.长度不超过255

文件存储与读取

1.文件存储在硬盘
2.文件存取最小单位是(block),块(block)由扇区组成,最常见的块大小为4KB,即8连续sector组成一个block
3.硬盘的最小存储单位叫做扇区(sector),每个扇区存储512字节

操作系统读取硬盘数据:一次性读取一块数据

读取文件流程

以要读取/etc/passwd文件内容为例
在这里插入图片描述

Linux文件系统

Linux文件系统可以简单分为inode table和data area,inode table中存有inode,文件系统通常会将文件的权限属性放置到inode中,至于实际内容则放置到data block区块中。另外,还有一个超级区块(superblock)会记录整个文件系统的整体信息

inodeblocksuperblock
记录文件的元数据记录文件的数据记录文件系统的整体信息

文件的元数据 :权限(rwx)与属性(拥有者、群组、时间参数、大小等)
文件的数据:实际记录文件的内容若文件太大时,会占用多个block
文件系统的整体信息:inode/block的总量使用量剩余量, 以及档案系统的格式与相关信息等

inode补充
1.可以通过stat命令查看文件的元数据

[root@localhost ~]# stat anaconda-ks.cfg
  File: ‘anaconda-ks.cfg’
  Size: 1241            Blocks: 8          IO Block: 4096   regular file
Device: 802h/2050d      Inode: 16797762    Links: 1
Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:admin_home_t:s0
Access: 2019-09-07 16:17:23.995429241 +0800
Modify: 2019-09-07 16:17:24.005456452 +0800
Change: 2019-09-07 16:17:24.005456452 +0800
 Birth: -

File 文件名称
Size 文件大小
Blocks 占用的磁盘块数
IO Block IO块大小
regular file 文件类型
Device 所在设备
InodeInode节点号
Links被链接次数
Access①访问权限
Uiduid号属主
Gidgid号属组
Access② 文件最近一次的访问时间
Modify 文件的修改时间
Change 文件的改变时间
2.inode同时也记录此文件的资料所在的block号码
3.inode消耗磁盘空间
  在磁盘格式化时,操作系统会自动将磁盘分为两个区域,一个数据区,一个inode区。整个磁盘的可用容量由inode磁盘空间共同决定,当inode消耗完之后,磁盘空间还有剩余也无法存储数据。


补充

1.小文件问题:可能会使inode耗尽,使得文件文法创建。(磁盘利用率低)—>对于小文件比较多的场景,将block划分小一点。
2.大文件问题:一个文件占用多个block,使得文件读写速率慢。---->将block划分大一点。
3.ext文件系统——xfs文件系统

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值