Windowsのインストール後、Fedoraは起動しなくなりました。エラーが発生しました。 '/vmlinuz'ファイルが見つかりません。開始を修正するには?

Windowsのインストール後、Fedoraは起動しなくなりました。エラーが発生しました。 '/vmlinuz'ファイルが見つかりません。開始を修正するには?

Windows 10をインストールする必要があります。インストールの問題により、最初の2つのドライブ(Fedoraデータが含まれています)を取り外しました。そのため、ハードドライブを接続するだけでWindowsを正常にインストールできました。

これですべてのドライブが接続されました。 Windowsを正常に起動できましたが、Fedoraは起動しなくなりました。

grubでFedoraを選択したときに発生するエラーは次のとおりです。

エラー:該当デバイスなし:3b9c12dc-6ed0-4e2f-a28b-3e0931ccfea2

エラー:「/vmlinuz-4.13.9-300.fc27.x86_64」ファイルが見つかりません。

エラー:まずカーネルをロードする必要があります。

だからGoogleでこれを見つけました。質問しかし、正直なところ、答えを完全に理解していません。とにかく、私はcgrubコマンドラインを打った。lsコマンドラインに入力すると、次のように表示されます。

(lvm/fedora_hdd-swap) (lvm/fedora_sdd-root) (lvm/fedora_sdd-home) (hd0) (hd0,gpt4) (hd0,gpt3) (hd0,gpt2) (hd0,gpt1) (hd1) (hd1, gpt12) (hd1,gpt11) (hd2) (hd3) (hd3,gpt4) (hd3,gpt3) (hd3,gpt2) (hd3,gpt1)

入力すると、ls (lvm/fedora_hdd-root)//boot、/etcなどの必須Linuxファイルがすべて表示されます。それから私のファイルは安全で健全です。 grubを正しく設定すればよいとしましょう。

grubに戻り、eedit Fedora listと入力すると、次のようになります。

getparams 'Fedora (4.13.9-300.fc27.x86_64) 27 (Workstation Edition)
    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_gpt
    insmod ext2
    set root='hd0,gpt2'
    if [ x$feature_platform_search_hint = xy ]; then
        search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=achi0,gpt2 3b9c12dc-6ed0-4e2f-a28b-3e0931ccfea2
    else
        search --no-floppy --fs-uuid --set=root 3b9c12dc-6ed0-4e2f-a28b-3e0931ccfea2
    fi  

grubコマンドラインに表示されている内容に基づいて、それに応じてリストを編集する必要があると思います。

ベストアンサー1

GRUBはLinuxルートパーティションにはまったく興味がありません。 Linuxルートパーティションにのみ興味があります。 Linuxカーネルだけがこれに興味を持っています。 GRUBはファイルシステムを含むパーティションを探しています/boot。 GRUBはいくつかの理由でこれを「GRUBルートファイルシステム」と呼びます。

エラーメッセージのカーネルパス名にプレフィックスerror: file '/vmlinuz-4.13.9-300.fc27.x86_64' not foundはありません/boot。これは/boot別のファイルシステムがある可能性があることを示し、set root='hd0,gpt2'Fedoraを起動するために使用されたGRUB構成の行がGPTパーティションディスク上の特定の時点で2番目のパーティションであったことを示します。

と入力すると、ls (lvm/fedora_hdd-root)/boot/単に空のディレクトリであることがわかります。これは/boot物理ファイルシステムのマウントポイントとして機能します。

ファイルシステムのUUIDもありますが、error: no such device: 3b9c12dc-6ed0-4e2f-a28b-3e0931ccfea2見つからないというエラーメッセージが表示されます。

私の考えに最適なシナリオでは、ドライブの検出順序が変更された可能性があり、以前の順序hd0,gpt2は今hd3,gpt2

最悪のシナリオでは、/bootパーティションが実際にWindows 10がインストールされているディスクにあり、Windowsインストールがパーティションを上書きすることがあります。しかし、パーティションの交換は比較的簡単です。/boot起動メニューオプションTroubleshooting- >Rescue a Fedora systemまたは起動オプションを使用して、inst.rescueFedoraインストールメディアから回復モードで起動する必要があります。

回復モードが開始すると、コマンドプロンプトが表示されます。すべてが順調に進んでいる場合は、Fedoraシステムをインストールする必要があります/mnt/sysimage。したがって、最初にコマンドを使用すると、すべてのパス名の前にプレフィックスを付けるchroot /mnt/sysimage必要がなく、/mnt/sysimage汎用パッケージ管理ツールを使用できます。

新しい/bootパーティションを作成してマウントするか、GRUBが明らかにLVM論理ボリュームを読み取ることができるので、/bootファイルシステムの内容を/bootルートファイルシステムのディレクトリに再マウントするだけです。

明らかにUEFIベースのシステムを使用しているので(すべてのパーティションがGPTタイプなので)、これは/boot/efiまだ存在しない場合は空のディレクトリ(EFIシステムパーティションまたはESPのマウントポイントとして)を作成できることを意味します。を実行し、mount /boot/efi設定が/etc/default/grub現在の構成と一致していることを確認して、を使用して最新のカーネルパッケージを再インストールしますrpm --reinstall

カーネルパッケージにはこの/vmlinuz-*ファイルが含まれており、パッケージのインストールプロセスで適切なinitramfsファイルが自動的に生成されます。完了したら、存在する必要があるすべての重要なファイルを/boot回復する必要があります。カーネルパッケージの再インストールプロセスでは、実際のGRUB構成ファイルも更新する必要があります。

GRUBには、単純化された構成ファイル/etc/default/grubと実際の自動生成された構成ファイル(/boot/efi/EFI/fedora/grub.cfgUEFIシステムの場合)の2つの構成ファイルがあります。カーネルパッケージを再インストールした後に前者を更新する場合は、次のコマンドを使用して後者のファイルの更新を手動でトリガーできます。

grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

おすすめ記事