Arch Linux ZFS用のGrubの構成

Arch Linux ZFS用のGrubの構成

ZFSシステムにインストールされているArch LinuxをマウントするようにGrubを設定する方法を知っている人はいますか?

/dev/sda1(起動パーティション)と(ルートパーティション)があります/dev/sda2。 ZFS システムには、次のデータコンテナを含む zpool main があります。

main/root mountpoint=none
main/root/default mountpoint=legacy
main/home mountpoint=legacy

またmkinitcpio.conf

システムを起動しようとすると、常にルートパーティションをマウントできないというメッセージが表示されます。

Grub設定を変更する必要がありますか?正直言って、私はGrubにはあまり興味がありません。できればsyslinux変えていきます。

編集する:

起動時に発生するエラーは次のとおりです。

starting version 238
no pools available to import
ERROR: Failed to mount the real root device.
Bailing out, you are on your own. Good luck.

答え1

ルートボリュームが与えられるとデータセット /ROOT/archlinuxチチ mypool次に、/bootGrubに次のコマンドを入力してデータセットのファイルを起動します。

insmod part_gpt
search --set --label mypool
linux /ROOT/archlinux@/boot/vmlinuz-linux zfs=mypool rw
initrd /ROOT/archlinux@/boot/initramfs-linux.img
boot

grub>プロンプトでこれらのコマンドを入力するか(cGrubメニューを押す)アップデートとして使用できます/boot/grub/grub.cfg

  • Grub にはデータセットが必要です。
  • ルートボリュームデータセットのマウントポイントは、次のようにする必要があります/
  • /bootスタートアップファイルはこのデータセットにあります。
  • あなたのinitramfsにHOOKS=(base udev autodetect modconf block keyboard zfs filesystems);
  • zpoolはすべての機能を有効にできます(デフォルト)。
  • Grubの場所(zpoolと同じディスクまたは別のディスク)は重要ではありません。

苦労しました。かなりの痛みGrubプロンプトのls内容を一覧表示(使用)してみてください。/ROOT/archlinux@/bootこれを試してエラーが発生した場合は、何をしてください。無視して起動してみてください!

関連情報