web-dev-qa-db-ja.com

「不明なパーティションテーブル」-カーネルの設定ミス

新しくインストールしたマシン用にカスタムLinuxカーネルをコンパイルしていましたが、新しいカーネル(3.12)を起動した後、initプロセスがルートデバイスを見つけることができず、システムでunknown partition tableエラーが発生するまでトレースしました。問題のデバイス(/dev/sda)。汎用カーネルが起動し、ルートパーティションを正常にマウントします。カーネル構成に関連しているように見えるものが見つからないようですが、何が欠けている可能性がありますか?

3
SaltyNuts

主にCONFIG_.*_PARTITIONという名前のオプションがたくさんありますが、おそらく必要なものを設定していません。これらは、CONFIG_PARTITION_ADVANCED(高度なパーティション選択)に「はい」と答えた場合にのみ表示される場合があります。

あなたは少なくとも(PC上で)欲しいと思うでしょう:

CONFIG_MSDOS_PARTITION=y       # traditional MS-DOS partition table
CONFIG_EFI_PARTITION=y         # EFI GPT partition table

そして多分:

LDM_PARTITION=y                # Windows logical (dynamic) disks

また、実際に実行されている可能性のある他のオペレーティングシステムのディスクからパーティションテーブルを読み取るために、さらにいくつか(CONFIG_MAC_PARTITIONBSD_DISKLABELなど)が必要な場合もあります。

すべてのパーティションテーブルオプションは、カーネルソースツリー(block/partitions/Kconfig内)または Linux相互参照 で確認できます。

6
derobert