Metto nero su bianco qualche informazioni su Debian GNU/kFreeBSD con filesystem ZFS, dato che in rete non è che ci sia tanto, o meglio, non sono in tanti quelli che hanno un installazione su hard disk ed un blog dove condividere l'esperienza. Inizio subito col segnalare che al momento si può installare solo su sistemi a 64bit-amd64.
Download kfreebsd-zfs-amd64
Download ultima versione febbraio 2011
La prima parte dell'installazione procede velocemente, quando si arriva al partizionamento del disco, le cose diventano lentissime. Una volta create le partizioni di / e swap, l'installer ci metterà circa 4-5 minuti per avviare la finestra di conferma di scrittura dei dati su hard disk, ed altri 6-7 minuti per formattare la partizionie (15G) ed avviare l'installazione del sistema di base. Preciso questo, in quanto nei 2 procedimenti lentissimi sopra elencati, e facile credere che qualcosa sia andato storto e quindi abortire l'installazione, causa anche una ingannevole finestra blu totalmente immobile. Il resto dell'installazione fila liscia, e quando si arriva all'installazione di Grub, bisogna per forza installarlo nel MBR, anche se al riavvio non troveremo più le altre voci dei diversi OS, questo perchè abbiamo bisogno di conoscere l' uuid (il comando blkid non dà l'uuid della partizione zfs), e la partizione zfs da linux non si monta. Una volta avviato Debian GNU/kFreeBSD, montiamo una partizione ext3 (con ext4 non funziona, o comunque io non so come montarla):
identificare la partizione:
$
ls /dev/|grep ^ad
montarla:
#
mount -t ext2fs /dev/adXX /mnt
a questo punto copiamo grub.cfg nella partizione ext3
# cp /boot/grub/grub.cfg /mnt/grub.cfg.kfreebsd
adesso non ci rimane che ripristinare da cd live Grub, per riavere tutti i nostri OS, ed una volta avviato dalla nostra distribuzione abituale, possiamo copiare il menuentry del file grub.cfg.kfreebsd in /etc/grub.d/40_custom, e quindi poi fare un update-grub per trovare la voce di Debian GNU/kFreeBSD 8.1-1-amd64 nel menù di Grub.
es: menuentry:
menuentry 'Debian GNU/kFreeBSD, with kFreeBSD 8.1-1-amd64' –class debian –class gnu-kfreebsd –class gnu –class os {
insmod part_msdos
insmod zfs
set root='(hd0,9)'
search –no-floppy –fs-uuid –set d33229d75b9005cc
echo 'Loading kernel of FreeBSD 8.1-1-amd64 …'
kfreebsd //@/boot/kfreebsd-8.1-1-amd64.gz
insmod part_msdos
insmod zfs
set root='(hd0,9)'
search –no-floppy –fs-uuid –set d33229d75b9005cc
kfreebsd_module_elf //@/lib/modules/8.1-1-amd64/opensolaris.ko
kfreebsd_module_elf //@/lib/modules/8.1-1-amd64/zfs.ko
insmod part_msdos
insmod zfs
set root='(hd0,9)'
search –no-floppy –fs-uuid –set d33229d75b9005cc
kfreebsd_module //@/boot/zfs/zpool.cache type=/boot/zfs/zpool.cache
set kFreeBSD.vfs.root.mountfrom=zfs:debian-ad0s9
set kFreeBSD.vfs.root.mountfrom.options=rw
}
enjoy 😉