カーネルルートを起動と同じパーティションに設定する

カーネルルートを起動と同じパーティションに設定する

GRUBを実行しながら、カーネルルートパラメータをブートローダを持つディスクと同じパーティション(またはより一般的には同じデバイスのパーティション)に設定したいと思います。

最初にインストールすると、GRUBメニュー項目が/dev/XXルートパラメータに設定されます。

title XXXXX
    root (hd#,#)
    kernel /boot/vmlinuz-XXXX root=/dev/XX1 resume=/dev/XX2 splash=silent quiet showopts vga=0x###
    initrd /boot/initrd-XXXX

kernelディスクラベルを参照するようにその行を変更して、さまざまな順序で表示される許容範囲を増やすことができます。

    kernel /boot/vmlinuz-XXXX root=LABEL=??? resume=LABEL=swap? splash=silent quiet showopts vga=0x###

ブートパーティション(または)を参照できるようにその行を変更したいと思います。/dev/sda2または、カーネルがブートパーティション(GRUB)に基づいて解釈する/dev/hdb6パーティション番号のみを参照することをお勧めします。root (hd#,#)

ベストアンサー1

grubを正しくインストールした場合、この情報は関係ありません。 /bootパーティションを指定する必要はなく、grubをインストールするときにインストールするだけです。 Grubはインストール中にデバイス(ディスク)とvmlinuzと/ initrdの場所をMBRに保存するため、grub構成で参照する必要はなくなります。

編集する

「ブートパーティションに基づいてルートパーティションを参照」したいことを明確にした後。私が知っている限り、これをサポートするオプションはありませんが、直接追加することができます(したがって、ここで私の最後の説明に線を引いて消去してください)。これには、initrd イメージの init スクリプトを変更する作業が含まれます。たとえば、bootrel = + 1などのパラメータをカーネルラインに追加し、initrdイメージにいくつかのコードを追加してブートパーティションがどこにあるかを確認し、bootrelパラメータを確認してルートパーティションを見つけ、それに応じてルートパラメータを設定できます。 。

もちろん、これは過度に複雑でハッキーな方法です。たぶん問題に間違ってアクセスしている可能性があります。達成すべき事項をより一般的に説明すると、誰かがより多くのオプションを提供できるようになります。

おすすめ記事