是否有任何命令可以输出文件的开始和结束硬盘块? (解决方案标记为已接受)
更新:
以下答案解决了初始查询。我感谢所有人。但我对 LBA 不适合所示的块范围感到有点困惑fdisk
。(但是,将数字减半符合范围;那么这是否意味着 LBA 块大小为 2048?!?)
答案1
使用hdparm
:
sudo hdparm --fibmap FILENAME
FILENAME
您的文件的路径在哪里。
关于你的计算:
97504*512/1024^2=47,6 这就是你这样做的方法。
关于不适合在块范围内:
您在输出中圈出了 NTFS 驱动器fdisk
,该驱动器以 LBA 251863039 结束,输出hdparm
报告称,测试文件所在的文件系统以 LBA 251863040 开始。因此,您在输出中查看了错误的文件系统fdisk
,因为您的文件位于sda2
而不是sda1
。
答案2
您可能正在寻找的工具是tail
和head
。
tail -5 file.txt
head -5 file.txt
这将为你提供最后 5(尾巴)和前 5 行file.txt 的 (head)
答案3
对于 ext4 文件系统,命令
sudo debugfs /dev/sda1 <<<"blocks /boot/vmlinuz-3.11.0-14-generic"
显示给定文件使用的所有块,以便您可以根据需要提取第一个和最后一个块。