MBRパーティションディスクが1つ入ったボックスがあります。
4つのプライマリパーティションがあります。それらについて:
UFS2を使用したDragonFlyのチェーンロードが可能です。
GRUB2はブートローダーです。
私はまだGRUB HAMMERを使用するDragonFlyをロードすることに成功していません。
/etc/grub.d/40_custom
には何が必要ですか?
DragonflyBSDは、デフォルトで、スライスのパーティション分割中にdisklabel32ではなくdisklabel64を使用します(BSD用語では、またはLinux用語ではパーティションをサブパーティション化します)。残念ながら、disklabel64はGRUB&GRUB2では表示されません。GRUBで表示できるようにするための議論や試みを見てきましたが、実際に機能するかどうかはわかりません。また、HAMMER -fsはGRUBでは表示されません(ただし、/boot
DFlyBSDではUFSであるため、表示されます)。 GNU/Linux用のHAMMER-fs(Google: "Hammerfs for Linux")の読み取り専用のFuse実現を見たことがありますが、Linuxカーネルは最初にdisklabel64-edスライスを確認する必要があるため、試していません。その上にHAMMERパーティションがあります。したがって、HAMMER-Fuseを試すには、すべてのDragonflyBSDパーティションをdl64-sliceからdl32-sliceに移動するか、bsdラベルのないMBR-partitions/EBR-onesを分離する必要があります...
したがって、最も簡単な方法はチェーンロードです。
menuentry "Dragonfly BSD x64 @(hd [〜#〜] x [〜#〜]、[〜#〜] y [〜#〜])" { set root =(hd [〜#〜] x [〜#〜]、msdos [〜#〜] y [〜#〜]) チェーンローダー+1 }
ちょうど今、Grub2-module "part_dfly"が[your_boot_partition]/boot/grub /にあることがわかりました。 i386-pc。 PCで使用しているカーネルモジュールのリストは、[your_dragonfly_partition]/boot/loaderにあります。 conf。私の「kfreebsd_module_elf/kernel/.ko」をloader.confからyour`sに変更するだけです。
Grub2は、カーネルおよびRAMディスクイメージよりもdfly-partition-shemeをUFS2(/ boot)パーティションからロードし、DF-BSDはHammer-FS(ルート)をロードします。したがって、「/ boot」パーティションは、Grub2とDF-BSDの両方で読み取り/書き込み可能である必要があります。この役割の唯一の候補は、UFSとUFS2です。
Grub2は大文字と小文字を区別するため、「kfreebsd_module」は「小さい」文字を使用して記述する必要がありますが、「setkFreeBSD」は大文字と「小さい」文字の両方を使用して記述する必要があることに注意してください。したがって、次のようなことを試すことができます。
menuentry "Dragonfly BSD x64 @ (hdX,Y)" {
insmod part_msdos
insmod part_dfly
insmod ufs2
set root=(hdX,msdosY)
kfreebsd /kernel/kernel
kfreebsd_loadenv /boot/device.hints
kfreebsd_module /kernel/initrd.img type=md_image
kfreebsd_module_elf /kernel/acpi.ko
kfreebsd_module_elf /kernel/ahci.ko
kfreebsd_module_elf /kernel/ehci.ko
kfreebsd_module_elf /kernel/dm.ko
kfreebsd_module_elf /kernel/md.ko
kfreebsd_module_elf /kernel/dm_target_crypt.ko
kfreebsd_module_elf /kernel/wlan.ko
kfreebsd_module_elf /kernel/wlan_ccmp.ko
kfreebsd_module_elf /kernel/wlan_tkip.ko
kfreebsd_module_elf /kernel/ath_hal.ko
kfreebsd_module_elf /kernel/ath_rote.ko
kfreebsd_module_elf /kernel/if_ath.ko
kfreebsd_module_elf /kernel/sound.ko
kfreebsd_module_elf /kernel/snd_hda.ko
set kFreeBSD.vfs.root.mountfrom=ufs:md0s0
set kFreeBSD.vfs.root.realroot=crypt:hammer:\
/dev/serno/<your_partition_serno>:dragon
}
次の代わりに暗号化されていないハンマーパーティションを使用している場合:
set kFreeBSD.vfs.root.mountfrom=ufs:md0s0
set kFreeBSD.vfs.root.realroot=crypt:hammer:\
/dev/serno/<your_partiton_serno>:dragon
使用するだけです:
set kFreeBSD.vfs.root.mountfrom=\
hammer:/dev/serno/<your_partition_serno>:dragon
幸運を!