KDE Plasma DEを使ってDebianテストをインストールしましたが、しばらくしてLive USB、chrootを使用してgrubを再インストールして解決したGrubの問題が発生したようです。
grubメニューの直前に黒い画面に表示される2つのエラーメッセージを除いて、起動の問題はありません。
error: no such device: /.disk/info
error: no such device: /.disk/mini-info
これが解決しなければならない問題があり、それを解決する方法を示すかどうか疑問に思います。
ベストアンサー1
Debian 12(明らかに最新バージョン)でセキュアブートが有効になっているUEFIシステムにインストールするときは、/boot/grub/grubx64.efi
次のものが含まれます。メモリディスクイメージ(サイズは約2.4M)Unicodeフォントとgrub.cfg
以下の内容のミニファイルが含まれています。
if [ -z "$prefix" -o ! -e "$prefix" ]; then
if ! search --file --set=root /.disk/info; then
search --file --set=root /.disk/mini-info
set prefix=($root)/boot/grub
if [ -e $prefix/x86_64-efi/grub.cfg ]; then
source $prefix/x86_64-efi/grub.cfg
elif [ -e $prefix/grub.cfg ]; then
source $prefix/grub.cfg
else
source $cmdpath/grub.cfg
また構成ファイルを含める一般的な話す:
normal (memdisk)/grub.cfg
組み込みのデフォルト値$prefix
はに設定されています/EFI/debian
。
したがって、grubx64.efi
実行が開始されると、まずmemdiskイメージの構成ファイルを使用します。
$prefix
まず、プロファイルは、ESPパーティションに定義されていないか、存在しない一致するファイルまたはディレクトリがないことを確認します。その場合は、GRUBの初期値を対応するファイルシステムを$root
含むか指す/.disk/info
パーティション/ファイルシステムに設定します。/.disk/mini-info
$prefix
/boot/grub
私の考えでは、これらのファイルはDebianインストールメディアにあります。これは、Debianが単一の署名付きの再現可能なバイナリビルドを使用してSecure Boot互換ブートローダのすべての要件を満たすことができる方法です。
永久にインストールされたOSの場合は、次のように動作する必要があるようです。
- 組み込みのデフォルトはESPに存在する必要があるディレクトリです
$prefix
。/EFI/debian
- 組み込みの構成では、GRUBに最初にメモリー・ディスク・ベースの構成に従うように指示します。 GRUBのデフォルトのルートファイルシステムはESPです。
- 設定されており、
$prefix
ESPにディレクトリが存在するため、最初のif
...then
条件は維持されず、search
コマンドをスキップする必要があります。 /EFI/debian/x86_64-efi/grub.cfg
ESPには存在しないため(Debianインストールメディアに存在します)、2番目のif
...then
条件も維持されません。/EFI/debian/grub.cfg
ESPには、(/boot/efi/EFI/debian/grub.cfg
オペレーティングシステムが正常に実行されているとき)実際のGRUB構成がどこにあるかを知らせるものが必要です。したがって、elif
条件はtrueで、GRUBはファイルを読み取ります。専用パーティションがある場合は、次/boot
の内容を含めることができます。
search.fs_uuid 12345678-90ab-cdef-0123-456789abcdef root
set prefix=($root)'/grub'
configfile $prefix/grub.cfg
次に、/boot
UUIDを介してファイルシステムをGRUBのルートファイルシステム(= GRUBからアクセスするすべての後続のパスで参照されるファイルシステム)として選択し、それを使用します/boot/grub/grub.cfg
。
/boot
暗号化されたボリュームやルートファイルシステムの通常のディレクトリなど、別の場所にある場合、コンテンツは/boot/efi/EFI/debian/grub.cfg
状況によって異なります。
あなたの場合、if
memdisk設定の最初の条件に問題があります。おそらくあなたのアクティビティはESPディレクトリにありませんか(起動したOSからアクセスするとき)?あるいは、ファームウェアはパス名を大文字と小文字を区別して解釈しますが、ディレクトリ名の実際の文字と大文字と小文字が異なる場合があります。then
grubx64.efi
/EFI/debian
/boot/efi/EFI/debian/
それにもかかわらず、最終的には検索が行われ、インストール/.disk/info
メディア/.disk/mini-info
にのみ存在し、失敗するとエラーメッセージが表示されます。
GRUBは他の方法で動作するため、これらのメッセージは無害である可能性が高く、ほんのわずかな外観上面倒です。ただし、これを削除するには、efibootmgr -v
UEFIブート変数のブートパスと実際のGRUB設定ファイルへの移動中にGRUBが参照するすべてのパス名を確認し(上記のように)、次のように変更を変更する必要があります。それらを。