linux - 在 Linux 中打开特定 block 上的文件

标签 linux filesystems ext4

出于调试目的,我想在特定的预定义 block 上打开一个文件。例如,如果我怀疑某个特定 block 已损坏,我想对其进行写入和读取,我宁愿在挂载分区时在用户模式下执行此操作。

有没有办法告诉 Linux,“嘿!如果它是空闲的,请在 block 4579 上打开这个新文件”。

是的,我可以直接编辑 block 设备,但是如果安装了驱动器,这可能会破坏文件系统。

欢迎提供通用答案,但即使是 ext 文件系统系列的答案也足够好。

最佳答案

For instance, if I suspect a specific block is damaged, I want to write and read from it ... Is there a way to tell Linux, "hey! open this new file on block 4579 if it's free".

是的,您可以将底层 block 设备用作文件并查找文件上的那个位置。考虑到您的“调试”用例,这似乎是合适的。请注意,写入此 block 可能会破坏上面文件系统的完整性(甚至写回刚刚读取的内容)。

否则,不,文件系统旨在隐藏,通常会掩盖设备布局下的真实几何形状,因此没有这种机制可以提示文件的位置应该创建。

关于linux - 在 Linux 中打开特定 block 上的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11328315/

相关文章:

linux - IIO(字符)设备输出无输出 - IIO 缓冲区

c - 使用 ld 链接已编译的程序集和 C 文件

objective-c - 如何使用 Objective C 访问特定的 iOS 应用程序目录?

hadoop - pyspark : how to check if a file exists in hdfs

sh - 薛定谔的文件

linux - 处理数百万个文件的 ext 性能

linux - 分机2/3 : Block Type Clarification: IND vs DIND vs TIND

c - Linux UART 传输问题

linux - 如何为 Debian/Ubuntu 打包 Mono 应用程序

c - 如何解析原始 "disk"数据?