元数据在哪里?

时间:2012-09-17 04:44:21

标签: file operating-system metadata

所以我只是在玩用十六进制编辑器打开文件和做一些事情。我发现了一件事......  我可以访问存储在文件中的数据,但文件属性,时间戳和其他内容等元数据存储在哪里?

它绝对不会存储在文件中但它存在于何处?它存储在HardDrive文件系统或其他任何地方?我还注意到NTFS文件系统也可以存储权限,就像我可以在NTFS文件系统上使用dos命令cacls(或icacls),但它不支持像FAT32这样的文件系统。  如果它在硬盘上,那么我们可以使用linux更改元数据(文件属性隐藏,存档等)(我是对的)?

请有人解释或告诉我在哪里可以找到有关此主题的正确信息。

2 个答案:

答案 0 :(得分:2)

元数据与文件数据分开存储。通常在名为inode的结构中,但它取决于所使用的文件系统。在Linux上,您通过函数chmod(2),chown(2)等提供的API处理元数据。括号中的数字是节号,您可以使用man命令读取这些:{{1 }}。对于命令行,linux具有类似名称的命令(chmod,chown,touch等)。

答案 1 :(得分:0)

是的,文件系统本身会分配额外的空间来存储磁盘上的元数据。  所有操作系统都为您提供了一个API,允许更改文件的元数据(时间戳,属性,名称等)。

您可以打开分区或硬盘的相应设备文件(例如“\。\ C:”)并读取/写入它。了解文件系统的详细信息后,您可以确定磁盘上特定文件的元数据位置。