initrdなしでシステムを実行しようとしています。

initrdなしでシステムを実行しようとしています。

私は起動にinitrdを必要としないカーネルを設定しようとしてきました。私はまだ成功していません。私が起動したいファイルシステムはext4で、すべての拡張機能はカーネルにコンパイルされています(モジュールではなくカーネル自体にあります)。私は2.5 " 1TB WDドライブを搭載した2011年初頭にMacBook Proを使用しています。コマンドラインはあり、起動するたびにカーネルパニックが発生し、root=PARTUUID=5c595262-cd6a-48f9-b199-6d72dae95b09 ro rootfstype=ext4 rootwait ルートパーティションをマウントできず、コマンドラインroot=の一部が無効です。 アップデートを見るCONFIG_DEVTMPFSを有効にしてルートファイルシステムの前に/ devをマウントすることはできましたが、もともとこの質問を投稿してからパスを指定する代わりにPARTUUIDaを使用するように切り替えたdevため、もう必要ありませんが、まだ有効になっています。 CONFIG_EFI_STUBオプションを有効にして起動しましたが、コマンドラインがカーネルにハードコーディングされました。

私のカーネルを起動しようとすると、カーネルパニックが発生します。起動しようとすると、カーネルパニックが発生します(ハードドライブが認識されないため)。

私の.configファイル

initrdがHDDと通信せずシステムを正常に動作させるには、どの設定オプションを変更する必要がありますか?起動する唯一の方法は、EFIスタイルでカーネルを直接ロードすることであるため、initrdを使用することはできません。したがって、カーネル自体はinitrdをロードできません(initrdをロードするにはブートローダが必要であることを知っている限り)。どちらかを使用しない

修正する:この質問を投稿した後、私のカーネルが私の2.5 "内部1TB SATAドライブを見ることができないことを除いて、すべてがうまく設定されていることを確認しました(これは私のカーネルが最初にパラメータがroot無効で、sdaが存在することを確認しました。ではないと言った理由です。)どうすればよいですか?

lsmod初期RAMディスクをサポートするためにわずかに変更された構成で実行した結果

lspci同じわずかに変更された構成と初期RAMディスクから

ベストアンサー1

私のSATAコントローラ(libata)を私のカーネルにコンパイルして実行できました。カーネルはもともとモジュールにコンパイルされました(したがって、最初のRAMディスクで正しく実行されました)。

おすすめ記事