Como criar uma entrada do GRUB para um FreeBSD na instalação do ZFS?

2

Para deixar claro o que eu quero é uma entrada do FreeBSD GRUB2 que carregue o FreeBSD em um ZFS (nome: zroot) com firmware do BIOS (não UEFI). O sistema operacional que o GRUB está instalado é o Arch Linux, se isso ajudar, o Arch está usando uma raiz ext4, é o FreeBSD que está usando o ZFS.

Minha tabela de partições é (GPT):

/dev/sda1 - BIOS boot (1M) 
/dev/sda2 - Linux swap (4G) 
/dev/sda3 - Linux filesystem (ext4, 50G) 
/dev/sda4 - FreeBSD boot (128k) 
/dev/sda5 - FreeBSD ZFS filesystem (74G)

Eu vi esta resposta mas ele pertence ao FreeBSD em uma raiz UFS, e eu também vi esta resposta que pertence ao Arch Linux no ZFS , não o FreeBSD no ZFS.

Eu tentei usar esta entrada:

menuentry "FreeBSD" --class freebsd --class bsd --class os {
    insmod zfs
    insmod bsd
    set root=(hd0,4)
    kfreebsd /boot/kernel/kernel
    kfreebsd_loadenv /boot/device.hints
    set kFreeBSD.vfs.root.mountfrom="zfs:zroot"
    set kFreeBSD.vfs.root.mountfrom.options=rw
    set kFreeBSD.hw.psm.synaptics_support=1
}

mas recebi este erro:

UsandoobootloaderdoFreeBSD(queinfelizmenteeucanceleiinstalandooGRUBnomeudisco,apesardesersimplesderestaurá-lo)euconseguiinicializarminhainstalaçãodoFreeBSD,entãonãohánadadeerradocomisso.InstaleioFreeBSDeconfigurei-oparainicializarseguindooqueeucoloqueinestediretório: link .

    
por Brenton Horne 09.11.2018 / 20:07

1 resposta

3

Não importa que tenha encontrado a resposta, graças aos fóruns do FreeBSD . Isto é o que eu precisava no meu grub.cfg:

menuentry "FreeBSD" --class freebsd --class bsd --class os {
    insmod zfs
    insmod bsd
    search -s -l zroot
    kfreebsd /@/boot/zfsloader
    kfreebsd_loadenv /@/boot/device.hints
}

Para deixar claro que eu tentei isso com sucesso, eu até tentei escrever um arquivo e reiniciar para verificar se ele não era apenas de leitura e o arquivo ainda estava lá e não tinha sido alterado pela reinicialização (nem mesmo suas permissões eram).

    
por 10.11.2018 / 11:00