最近ラボを行っていますが、Linux3.7.1には/include/linux/magic.hがないことがわかりました。これは、Linux 3.7.1がext2をサポートしていないことを意味しますか?たとえば、magic.hで何らかの変更を行う必要が#define EXT2_SUPER_MAGIC 0xEF53
あり#define EXT2_SUPER_MAGIC 0X6666
、このヘッダーファイルを必要とする別のファイルがある場合は、どうすればよいですか?
2 に答える
チェックしましたか:
include/uapi/linux/magic.h
Linux3.7.1は間違いなくext2をサポートしています。Linuxカーネルは1993年初頭のリリース直後からext2をサポートしており、サポートが削除されることはありません。ext2をサポートしない動作するLinuxカーネルを構築することは可能ですが、それではヘッダーから削除されません。
使用しているディストリビューションによっては、そのファイル(および他のLinux)ヘッダーが他の場所にある場合があります。Icarus3の答えはあなたの問題を解決するかもしれません。それ以外の場合は、次のことを覚えておいてください。
- Linuxヘッダーを複数の場所にインストールすることができます。
- それらが自動的にインストールされる最も一般的な場所はです
/usr/include/linux
。 - 他の誰かがこのシステムに手動
/usr/local/include/linux
でインストールしました。彼らはそれらをにインストールした可能性があります。
このようなファイルは通常、linux
ディレクトリのサブディレクトリにありinclude
ます。したがって、で始まるそれらの場所を見ることができます/usr/include/linux
。
それでも問題が解決せず、ディレクトリのサブディレクトリがある場合は、Icarus3の回答で問題が解決する可能性があります。uapi
include
パッケージマネージャーを備えたディストリビューションを使用していると仮定して、ディストリビューション固有の検索ユーティリティ(ローカルマシンからこれを実行できない場合でも通常はWeb上に存在します)を使用して、と呼ばれるファイルを提供するパッケージを見つけてmagic.h
ください。