Arch Linux のインストール時に "grub-mkconfig" 問題: "grub-mkconfig" が lvmetad に接続できません。

Arch Linux のインストール時に "grub-mkconfig" 問題: "grub-mkconfig" が lvmetad に接続できません。

再インストールに問題があります。アーキテクチャLinuxWindows 10 でダブルブートされたコンピューターで。

関連していないいくつかの理由で、私は以前のArch Linuxインストールのすべてをバックアップして再起動することにしました。私はUSBにArch Linuxライブメディアを持っていたのでそこから起動しました。UEFI)、LinuxパーティションをフォーマットしてArch Linuxインストールガイドを完了します。

「ブートローダのインストール」セクションに達するまで、すべてが正しく機能しているようです。以前に使用していた初心者向けガイドが削除され(非常に、非常に簡単な)インストールガイドに置き換えられたため、ここで何をすべきか100%確信できません。

私は私のことを知っていますEFIパーティションには必要なすべてのGRUBエントリがすでに含まれていますが、新しくインストールするには変更する必要があるようです。

  • /boot/EFI/grub.efiスタブを削除し、名前/boot/grub//boot/grub.bak
  • 私は走った
    pacman -S grub os-prober
    
    および(マイEFIパーティションのマウントポイント)を使用してgrub-installアーチインストールガイドのコマンドを実行し、次に実行します。target=x86_64-efidirectory=/boot
    grub-mkconfig -o /boot/grub/grub.cfg
    

これが私の問題が始まるところです。コマンドを実行すると、grub-mkconfigエラーが発生し、failed to connect to lvmetad代替モードに戻っていると言いました。正しいディレクトリにファイルが正常にgrub.cfg作成されましたが、メニュー項目はありません。

起動しようとすると、GRUBコマンドラインのみが表示されます。私のArch Linuxライブメディアに戻り、再度実行してArch Linuxメニュー項目セクションarch-chrootに移動してそこからコピーし、以前のUUIDを現在報告されているUUIDに置き換えました。/boot/grub.bakfstab私のルートディレクトリについて。再起動するとGRUBメニューが正常に戻りましたが、Arch Linuxを選択するとエラーが発生しました/vmlinux couldn't be found

chrootライブメディアに戻って再び走りましたgrub-config。まだメニュー項目がありません。私が見つけたこの問題同様の問題は、grub-mkconfigヘルパースクリプトの既知の問題を示しています。これは2014年のものなので、私の質問は同じようには思えませんが、最高の答えに従いました。次のことをお勧めします。

同じ問題が発生し、別の解決策を見つけました。デフォルトでは、ゲストがホスト/runディレクトリを使用できるようにすることが含まれます。

まず、/runゲストがアクセスできる場所に設置します。インストールパーティションが/mnt

mkdir /mnt/hostrun
mount --bind /run /mnt/hostrun

その後、chrootゲストに移動して/run/lvmゲストの/run

arch-chroot /mnt /bin/bash
mkdir /run/lvm
mount --bind /hostrun/lvm /run/lvm

これにより、LVMエラーなしgrub-mkconfigで実行できます。grub-installLVMを使用してインストールしてもコマンドは機能します。これはそれほど価値があります。

完了したら、/run/lvmchrootを終了する前に削除することを忘れないでください。

これにより実際に私のfails to connect to lvmetadエラーは削除されましたが、/dev/sdx not initialized in UDEVそのコマンドはまだgrub.cfgメニュー項目を持たないメニューを生成しました。

ノートブックの「Hammer on Boot」メニューからF12Windowsブートマネージャを選択すると、Windowsに入ることができます。

答え1

問題はをarch-chroot使用しているために発生しますos-prober。私の問題を解決した方法は次のとおりです。

  • grub.cfgまだバックアップしていない場合は、現在のバックアップをバックアップしてください。
  • 削除するos-proberpacman -R os-proberまたは無効にすることもできます)
  • 走るgrub-mkcondig
  • アーチで再起動
  • インストールするos-prober
  • grub-mkconfig再びジャンプ

答え2

私も同じ問題があります。これは古い投稿ですが、誰かに役立つように回避策を投稿します。

あなたのように、私は作業ファイルを含むフルバックアップを持っていますgrub.cfggrub.cfg前のファイルから必要なメニュー項目を抽出し、次に/etc/grub.d/40_custom再実行しました。

grub mkconfig -o /boot/grub/grub.cfg

今、すべてが大丈夫です。

os-proberあまり必要ない優先順位が低い方のアイテムだ。個人的には、私はこれを行うのにあまり時間を費やすことはありません。これは個人的な選択です。何人かの人々はこのタイプの問題を解決するのが好きで、彼らの努力に感謝しますが、他の人は実際に動作するためにシステムが必要であり、時間の制約があり、操作と実行が必要です。

結局のところ、この問題はソフトウェアまたは文書によって解決されます。ファイルでメニュー項目を設定する方法について質問がある場合は、40_customWebを検索して多くの例を見つけることができます。

関連情報