From 50d9ff303ee4920bc738f28af5dc4dfb0af9b2e2 Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Sun, 19 Jul 2020 15:49:26 +0300 Subject: [PATCH] =?utf8?q?=D0=9F=D0=BE=D0=BF=D1=80=D0=BE=D0=B1=D0=BE=D0=B2?= =?utf8?q?=D0=B0=D0=BB=20FreeBSD=20=D1=88=D0=B8=D1=84=D1=80=D0=BE=D0=B2?= =?utf8?q?=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=BA=D0=BE=D1=80=D0=BD=D0=B5=D0=B2?= =?utf8?q?=D0=BE=D0=B3=D0=BE=20=D1=80=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Прежде никогда не имел с этим опыта. Собственно, никаких проблем не увидел, даже GPT label можно без проблем везде использовать. Точнее с одним неудобством, похоже hard-coded в ядре: в начале при загрузке он попросит пароль для какого нибудь daXsY и, введя неправильно несколько раз пароль, он начнёт спрашивать уже про gpt/XXX устройства. Вот примерный план как установил систему, с отдельным /boot разделом и зашифрованным ZFS: # gpart create -s GPT diskid/XXX # gpart add -t freebsd-boot -a 4K -s 512K -l MYLOADER diskid/XXX # gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 diskid/XXX # gpart add -t freebsd-ufs -a 4K -s 1G -l MYBOOT diskid/XXX # gpart add -t freebsd-zfs -l MYROOT diskid/XXX # dd if=/dev/urandom of=/tmp/key bs=64 count=1 # geli init -K /tmp/key -s 4K gpt/MYROOT # geli attach -k /tmp/key gpt/MYROOT # geli configure -b -g gpt/MYROOT (не знаю нужен ли эти флаги, или только -b или вообще никого, не пробовал отключать) # zpool create zroot gpt/MYROOT.eli # zfs set mountpoint=/tmp/zroot compression=lz4 atime=off zroot # zfs mount zroot # for what in base kernel ; do tar xfC /usr/freebsd-dist/$what.tar.xz /tmp/zroot ; done # mkdir /tmp/boot # newfs -Ut /dev/gpt/MYBOOT /tmp/boot # cd /tmp/zroot # tar cf - boot | tar xfC - /tmp/boot # zfs set mountpoint=none zroot # zpool export zroot # geli detach gpt/MYROOT # mkdir /tmp/boot/boot/keys # mv /tmp/key /tmp/boot/boot/keys/myroot.key # cat > /tmp/boot/boot/loader.conf <