web-dev-qa-db-ja.com

カーネルをビルドした後、vmlinuzとinitrdが見つかりませんか?

Makeを使用してカーネルを構成および構築した後、vmlinuz-<version>-default.imgおよびinitrd-<version>.img、しかし巨大なvmlinuxバイナリ(〜150MB)しか取得していませんか?

9
Amumu

圧縮された画像はArch/xxx/boot/の下にあります。ここで、xxxはArchです。たとえば、x86AMD64の場合、/usr/src/linux/Arch/x86/boot/bzImage/usr/src/linux/vmlinuxで圧縮画像を取得します。

それでもイメージがない場合は、bzip2がインストールされて動作しているかどうかを確認します(ただし、それが問題である場合は、「bzip2が見つかりません」などの説明的なエラーメッセージが表示されます)。

また、カーネル構成では圧縮方法を選択できるため、そのカーネル設定を変更した場合、実際のファイル名と圧縮アルゴリズムは異なる場合があります。

他の人がすでに述べたように、initrdsはnotがLinuxコンパイルプロセスによって生成されますが、他のツールによって生成されます。何らかの理由で外部ファイルが必要でない限り(たとえば、/を識別またはマウントするには、モジュールまたはudevが必要です)、起動するためにinitrdは必要ありません。

9
njsg

ドキュメントによると:

http://tldp.org/LDP/lame/LAME/linux-admin-made-easy/kernel-custom.html

あなたがするとき:

bzImageを作る

その後:

cp bzImage vmlinuz

vmlinuzファイルを作成します。つまり、同じファイルです:-)。

4
Peter Teoh