扇区和文件对应关系

本文介绍了文件系统的块和内存的页的概念,以及它们大小的获取方法。通过详细步骤说明了如何从扇区定位到具体文件的过程,包括使用fdisk和debugfs等工具。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文件系统块和内存页

在说fdisk之前,先说一下操作系统通过分页的方式使用内存,文件系统通过block使用存储,那么他们大小怎么获取呢
首先是获取内存分页大小

# getconf PAGESIZE
4096

然后是获取系统block大小

# sudo /sbin/tune2fs -l /dev/vda1|grep "Block size"  
Block size:               4096

因为文件系统嫌扇区太小,不好操作,所以一般都是将8个扇区合并成一个block,每个扇区大小是512个字节,所以block大小是4096字节。而且保持分页大小和块大小一致便于内存换出等操作。
磁盘本身是通过CHS的方式管理,文件系统是通过block。

fdisk的一点区别

fdisk这个命令大家可能都比较了解,我这篇blog不是和大家说怎么用它,而是它在不同系统上面的差异,先看一个
这里写图片描述
这个里面的start和end是柱面
而对于下面的系统
这里写图片描述
它的start和end代表的是扇区,所以要根据情况而定。而这里的blocks就更奇怪了,它是扇区数的一半。

查找对应关系

这里写图片描述
如果你通过内核得知扇区的位置,怎么有找到文件呢,下面就逐一介绍一下

1.扇区找块

fdisk -lu /dev/设备名称

就可以知道扇区所在操作系统分区,并且可以知道分区的起始扇区

2.确定block

Blocks值 = (出错扇区 – 分区起始扇区)/ 8

3.确定inode

debugfs  分区名称
icheck <block值>

4.确定文件

debugfs  分区名称
ncheck <inode>

这样就能找到相应的文件位置了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柳清风09

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值