Grubを使用してLinuxシステムを起動したいです。システムのルートファイルシステムはZFSデータセットにあり、一般的なEFIブートパーティションがあります/boot
。記入:/boot
/boot/efi
update-grub
Found linux image: vmlinux-5.15.0-101-generic in rpool/UBUNTU
Found initrd image: initrd.img-5.15.0-101-generic in rpool/UBUNTU
/usr/sbin/grub-probe: error: unknown filesystem.
私はGrubがZFSを完全にサポートしていないことを知っていますが、これが私がこの追加のbtrfsパーティションを持っている理由です/boot
! ZFSエントリがここでブートに影響を与える理由は何か混乱しています。私はGrubがZFSからinitrdをロード/boot
し、Linux自体が残りのプロセスを処理すると思いました。
何が間違っているのか、どうすれば修正できますか?
追加するには編集してください。update-grub
:これで、実際にLinux用にGrubエントリが作成されましたが、動作しないことを確認しました。問題を解決する方法はわかりませんが、これは問題を追跡するのに非常に関連する情報かもしれません。
問題は、生成されたファイルに次の項目が含まれていることです/boot/grub/grub.cfg
。
menuentry 'Ubuntu 22.04 LTS' --class ubuntu --class gnu-linux --class gnu --class os ${menuentry_id_option} 'gnulinux-rpool/UBUNTU-5.15.0-101-generic' {
recordfail
load_video
gfxmode ${linux_gfx_mode}
insmod gzio
if [ "${grub_platform}" = xen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
linux "/UBUNTU@/boot/vmlinuz-5.15.0-101-generic" root=ZFS="rpool/UBUNTU" ro quiet splash ${vt_handoff}
initrd "/UBUNTU@/boot/initrd.img-5.15.0-101-generic"
}
パラメータはにroot
正しく設定されていますが、代わりにおよびで誤って開始されます。root=ZFS=rpool/UBUNTU
linux
initrd
/UBUNTU@/boot
(hd0,3)