Date: Mon, 5 Nov 2018 10:45:17 +0100 From: Piotr Kubaj <pkubaj@anongoth.pl> To: freebsd-current@freebsd.org, freebsd-ppc@freebsd.org, freebsd-stable@freebsd.org, freebsd-fs@freebsd.org Subject: FreeBSD/powerpc64 (POWER9) with ZFS on / Message-ID: <20181105094517.GA42797@smtp.iq.pl>
next in thread | raw e-mail | index | archive | help
--zhXaljGHf11kAtnf Content-Type: text/plain; charset=utf-8; format=flowed Content-Disposition: inline Content-Transfer-Encoding: quoted-printable ZFS is by default not available for partitioning in bsdinstall. We can, how= ever, use manual partitioning in shell to make ZFS partitions. But what if we want to do ZFS on /? This is currently not supported out-of-= the-box. The reason is that Petitboot, used on POWER9 to boot kernel, doesn= 't support loading modules (at least when booting FreeBSD). ZFS is by defau= lt distributed only as a module, to overcome licensing issues. There are two ways to boot ZFS on root with Petitboot: 1. We can use initramfs, which will load necessary modules. It's said to be= supported on FreeBSD/powerpc64, but no one knows how to create one for Fre= eBSD :) 2. We can actually compile a custom kernel with ZFS in it (not as a module)= =2E This the approach that I use. Unfortunately, I can't redistribute this = kernel, because of ZFS's license. I created a custom installation iso, whic= h uses my kernel with ZFS included. Here are the steps to do it (on an installed powerpc64 system, but should b= e possible on other architectures after redefining TARGET and TARGET_ARCH): 1. cd /usr/src/sys/powerpc/conf 2. cat << EOF > ZFS include GENERIC64 options ZFS EOF 3. cd ../../../ 3. make buildworld buildkernel KERNCONF=3DZFS 4. cd release 5. make release When it's done, there will be iso files in /usr/obj/usr/src/powerpc.powerpc= 64/release. You can use it to install ZFS on root. Note that you need a FAT32 partition to mount on /boot. This partition needs to have /boot/etc/kboot.conf file, with a line like: FreeBSD=3D'/kernel/kernel kernelname=3D/boot/kernel/kernel vfs.root.mountfr= om=3Dzfs:zroot/ROOT/default' You also need the appriopriate /etc/fstab: /dev/nda0p1 /boot msdosfs rw 2 2 Other than that, howto at https://wiki.freebsd.org/RootOnZFS/GPTZFSBoot#Cre= ate_Partitions (from point 2., omit 1.) is totally ok to follow. Thanks to mmacy for informing me about this little trick with including ZFS= to kernel. --=20 _________________________________________=20 / It has been said that man is a rational \ | animal. All my life I have been | | searching for evidence which could | | support this. | | | \ -- Bertrand Russell / -----------------------------------------=20 \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || || --zhXaljGHf11kAtnf Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQJkBAABCgBOFiEEycyIeNkkgohzsoorelmbhSCDnJ0FAlvgES0wFIAAAAAAFQAS cGthLWFkZHJlc3NAZ251cGcub3JncGt1YmFqQGFub25nb3RoLnBsAAoJEHpZm4Ug g5ydkKMP/0Xuk8dEY5/ZTu9Olokm4JRw2hXOzVvOhMQG4lJFUfDnAHStWkGEfiYT 4a/6OZJ27mp6g90Rt9vwaMCvD7cSIaVuUYQWDYZ2F0kXVdHzIJdTciFa+CBGEH82 cxirf+hO8sF87jionIhSo9U7U8UKQPYhYtUiH7OdTtFkCUlOIV7TbebdUrlSm90e 4Bf1Sy4g45V58Cn942kyvh8e+xs3lPs/v/lEvi/AoIv9jBkURp/8U8TIGn/Hp/t2 I84wvnRQvlj8oH5m8w6Uzxg9Xj9FFJXzJOcmc/sDpfcKOs+hZBIw1+FybI/Y+sdz yNU+QttBymFJWSDJVG1i5XcKj5WQWJCV4vYKofjI8KiHYgMq+IUnRXO0tWhqrnYB L0S+q8OBI7R7EjrOfETJqxmhouXmIyb5NOXXcA94QI40oMbeLIWCiPJps0tyW53V UCdj4VfdbBfZq8moKaLU5WDsBu5ggxAE4UOStFavDLfomH9CpfYoHgiyEsUEoK7a Nxx+i1+mImGwqGx/u5v8XO4eBWf6UEFR4DU+8rwTUH03QuEVXWApKg8gim7+bbc0 wolPNm1PODjqIjX/6oFKpYDBYWpYv5nJn66SFLGMAE8ecz0+fTPZhULgP7+QMoQp 51HtwiM0X1a8D+nu8W7XaGaGJ9UTzQEvQoytErTp4ZG56SqudOAR =UvqB -----END PGP SIGNATURE----- --zhXaljGHf11kAtnf--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20181105094517.GA42797>