繁体   English   中英

在Linux中为NTFS实现ls命令

[英]Implementing ls command for NTFS in Linux

我正在尝试构建一个bash之类的脚本,该脚本提供了一些功能,例如ls,pwd,cat等,它们在linux系统中的NTFS上工作。 假设我有一个NTFS映像,并使用fopen将其作为文件打开。 然后,我读取了一些扇区,例如BPB驻留在0x0B,并获取了有关NTFS映像的一些常规信息。 我需要到达根目录指针,然后遍历文件系统才能实现那些功能,尤其是对于ls和pwd。 我在Google上搜索了很多有关NTFS的内部细节和偏移量的信息,但我找不到如何实现该目标的方法。 没有可理解的文档或样本,我无法进一步发展。

任何帮助,文档,提示,偏移量表等将不胜感激。

谢谢。

我猜这是一个学习练习。 因此,首先:

  1. 为特定文件系统编写类似解释器的bash错误的事情。 您应该专注于理解NTFS文件系统的详细信息。

  2. 编写lscat以便能够处理特定文件系统中的文件是错误的事情。 您应该专注于理解NTFS文件系统的详细信息。

  3. 如果编写文件系统驱动程序(例如使用FUSE ),则原始bashlscat将自动与该文件系统一起使用。 因为驱动程序将能够像open文件一样转换系统调用并将其read入特定于文件系统的过程。

最后:

  1. 了解有关FUSE的信息 太棒了 参见此Hello World FUSE模块 运行它,玩它。

  2. 下载NTFS-3G的资源, NTFS-3G是当今大多数GNU / Linux发行版使用的NTFS驱动程序。 它使用FUSE。 了解其工作原理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM