Dado um volume raiz em um conjunto de dados /ROOT/archlinux
em um zpool mypool
e arquivos de inicialização dentro do conjunto de dados em /boot
, os seguintes comandos inseridos no Grub devem inicialize:
insmod part_gpt
search --set --label mypool
linux /ROOT/archlinux@/boot/vmlinuz-linux zfs=mypool rw
initrd /ROOT/archlinux@/boot/initramfs-linux.img
boot
Você pode inserir esses comandos em um prompt grub>
(pressione c
no menu do Grub) ou use-os como base para atualizar seu /boot/grub/grub.cfg
.
- O Grub espera um conjunto de dados;
- O ponto de montagem do seu conjunto de dados de volume raiz deve ser
/
; - seus arquivos de inicialização estão em
/boot
dentro desse conjunto de dados; - seu initramfs tem
HOOKS=(base udev autodetect modconf block keyboard zfs filesystems)
; - seu zpool pode ter todos os recursos ativados (padrão);
- a localização do Grub (disco igual ou diferente do zpool) é irrelevante.
Note que eu sofri significativa dor tentando listar (com ls
) o conteúdo de /ROOT/archlinux@/boot
do prompt do Grub. Se você tentar isso e receber erros, faça o que eu fiz: ignore-os e tente inicializar!