rEFInd ブート マネージャー - 'volume' を GUID として使用しますか?

rEFInd ブート マネージャー - 'volume' を GUID として使用しますか?

パーティションの GUID を使用して、「refind.conf」のブート オプションでボリューム設定を適切に設定するにはどうすればよいですか?

現在の設定は「refind」ですが、指定されたファイルが見つからなかったというメッセージが表示されて失敗します。これは真実ではないと確信しています。

timeout 5

#scanfor manual

#scanfor internal


menuentry "openSUSE_bs_ld" {
    icon EFI/Tools/rEFIt/icons/os_linux.png         #os_suse.png

    ostype Linux

    #openSUSE partition GUID

    volume {cd55b59a-ed82-4883-89ad-b02bc505e117}

    loader /boot/vmlinuz-3.16.7-7-desktop

    initrd /boot/initrd-3.16.7-7-desktop

    options "ro root=UUID=cd55b59a-ed82-4883-89ad-b02bc505e117"
}

私も試しました:

volume cd55b59a-ed82-4883-89ad-b02bc505e117

しかし、運もなかった。

答え1

うまくいくはずだそれなし中括弧 ( {}) を使用します。Arch Linux を実行しているテスト システムで再確認したところ、次のコードが機能しました。

menuentry "Test" {
    icon \EFI\refind_test\icons\os_arch.png
    volume 904404F8-B481-440C-A1E3-11A5A954E601
    loader vmlinuz-linux
    options "initrd=initramfs-linux.img root=/dev/sda2"
}

おそらく間違ったGUID値を指定しているのでしょう。現在、rEFIndはパーティションこのエントリの GUID 値であり、ファイルシステムの UUID 値ではありません。また、GUID は、タイプ コードとして使用される GUID ではなく、一意の GUID である必要があります。次のように、gdiskまたはを使用して GUID 値を確認できますsgdisk

$ sudo sgdisk -i 2 /dev/sda
Partition GUID code: 0FC63DAF-8483-4772-8E79-3D69D8477DE4 (Linux filesystem)
Partition unique GUID: 904404F8-B481-440C-A1E3-11A5A954E601
First sector: 512040 (at 250.0 MiB)
Last sector: 79656926 (at 38.0 GiB)
Partition size: 79144887 sectors (37.7 GiB)
Attribute flags: 0000000000000000
Partition name: 'Linux filesystem'

この出力の行の値は、Partition unique GUID例のスタンザで使用した値と一致することに注意してください。

ああ、そして、volume仕様は、他のボリューム上のファイルに依存する宣言の後に来る必要があります。私の場合、iconESP (rEFInd が存在するのと同じボリューム) からアイコンをロードしたので、行の後loader、カーネルを識別する行の前に置きました。ブート ローダーと同じボリュームからアイコンをロードする場合は、volume行を最初にする必要があります。

ちなみに、rEFIndの開発者として言えば、このような混乱があるため、私は人々にないやむを得ない理由がない限り、手動ブート スタンザを使用してください。sasho648 さんの例では、rEFInd の自動検出メカニズムで処理できないものは何も見当たりません。ファイルと組み合わせると、/boot/refind_linux.confデフォルトで表示されるものが気に入らない場合は特定のアイコンを設定するいくつかの方法のいずれかを使用できます。実際、 rEFInd は、ルート ( ) ファイルシステム上のディレクトリから仕様/boot/refind_linux.confを取得できるため、現在のものと非常に近いものを取得する必要さえありません。もちろん、単に簡素化した例を示し、それを通常とは異なる方法で拡張するつもりであれば、それは別の問題です。ただし、ほとんどの場合、一部の人々 (特に LILO または GRUB Legacy を手動で構成することに慣れている人々) は、不必要に手動ブート スタンザに引き寄せられるようです。 (これは批判や非難ではありません。私が最初に rEFIt から rEFInd をフォークしたとき、同じ精神的罠に陥りました。その後、もっと良い方法があることに気づき、自動検出コードを書きました。)root=/etc/fstab/boot/

関連情報