web-dev-qa-db-ja.com

Linuxカーネルだけで起動可能なUSBを作成するにはどうすればよいですか?

Linuxカーネルを単独で起動し、GUIを含まないbusyboxを実行したいと思います。

どうやってやるの?カスタムのbzImageinitrd.imgを作成するにはどうすればよいですか?また、その画像のファイル構造を変更するにはどうすればよいですか?

7
zither

これはあなたを助けるかもしれません: http://www.linuxfromscratch.org/ あなたはあなたが望むようにカスタマイズすることができます。

5
phoxis

あなたがする必要がある2つのこと:

  1. カスタムカーネルとinitrdイメージを構築する
  2. 上記を含む起動可能なUSBを作成します

最初の部分では、「genkernel」ツールを使用するのが最適です。 genkernel --menuconfig allを発行することで、おそらくあなたが望むことを達成することができます。これにより、最初にカーネルを構成してから、モジュール(存在する場合)およびramdiskイメージ(initrd/initramfs)と一緒にカーネルを構築できます。

ただし、カスタムカーネルを作成したことがない場合は、カーネルの構成は簡単な作業ではないことに注意してください。できるだけ多くのデフォルトを使用するのが最善です。

そのステップの後、カーネルイメージとinitramfsが/boot/の下にあります。これらの名前はkernel-genkernel-<something_including_your_kernel_version>initramfs-genkernel-<the_same_ending>のようになります。

それができたら、ファイルを含むカスタムの起動可能なUSBスティックを作成することができます。これを行うには、 Gentoo Linuxドキュメント に従い、emergeをディストリビューションに適したパッケージマネージャーコマンドに置き換えることをお勧めします。

3
jankes