groupadd _cachefs useradd -d /var/empty -g _cachefs _cachefs cat <<"EOF">/etc/rc.d/cachefs #!/bin/sh daemon="/usr/local/sbin/cachefs" daemon_flags="-src /mnt/nfs -dst /mnt/cache -data /var/cachefs/md.json -listen :9090 -v 2" daemon_logger="daemon.info" daemon_user="_cachefs" . /etc/rc.d/rc.subr pexp="${daemon}.*" rc_bg=YES rc_reload=NO rc_pre() { if ! mount | grep -q /mnt/cache; then bioctl -c C -p /root/sd1_key -l sd1a softraid0 && { sleep 1; fsck /dev/sd2a && mount /mnt/cache; } fi } rc_cmd $1 EOF chmod 555 /etc/rc.d/cachefs mkdir -p /mnt/cache /var/cachefs fdisk -iy sd1 disklabel -E sd1 </dev/null|sha256 >/root/sd1_key chmod 600 /root/sd1_key bioctl -c C -p /root/sd1_key -l sd1a softraid0 fdisk -iy sd2 disklabel -E sd2 <>/etc/fstab echo "sync; umount /mnt/cache && bioctl -d sd2" >>/etc/rc.shutdown chmod 700 /etc/rc.shutdown mount /mnt/cache chown _cachefs:_cachefs /mnt/cache /var/cachefs rcctl enable cachefs rcctl start cachefs