0

我最近在进行一个实验室,我刚刚发现 linux 3.7.1 没有 /include/linux/magic.h。这是否意味着 linux 3.7.1 不支持 ext2?如果我真的需要在magic.h中做一些修改,例如,将 更改#define EXT2_SUPER_MAGIC 0xEF53#define EXT2_SUPER_MAGIC 0X6666,并且我有另一个文件需要这个头文件,我该怎么办?

4

2 回答 2

4

你检查过了吗:

include/uapi/linux/magic.h 
于 2012-12-30T17:24:25.000 回答
-2

Linux 3.7.1 绝对支持 ext2。Linux 内核在 1993 年初发布后不久就支持 ext2,并且从未删除过支持。可以构建一个支持 ext2 的工作 Linux 内核,但这不会将其从头文件中删除。

根据您使用的发行版,该文件(和其他 Linux)标头可能位于其他位置。Icarus3的回答可能会解决你的问题;否则,请记住:

  1. 可以在多个位置安装 Linux 头文件。
  2. 最常见的自动安装位置是/usr/include/linux.
  3. 其他人在此系统上手动安装了它们,他们可能已将它们安装到/usr/local/include/linux.

此类文件通常位于目录的linux子目录中include。所以你可以看看那些地方,从/usr/include/linux.

如果这没有帮助,并且一个uapi目录的子目录include那么 Icarus3 的答案可能会解决您的问题。

假设您使用的是具有包管理器的发行版,请尝试使用特定于发行版的搜索实用程序(即使您无法从本地计算机执行此操作,通常也存在于网络上)来找出哪些包提供名为magic.h.

于 2012-12-30T17:45:05.207 回答