Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 26 Oct 2019 19:58:37 +0900
From:      ro Ze <testcb00@gmail.com>
To:        freebsd-arm@freebsd.org
Subject:   Is it possible to build a ZFS Raspberry Pi 3B/3B+/4 image? with other questions.
Message-ID:  <CAL4V3=BkWafOLhUazHQVePbF%2BiY-ovC9J7X_5H0DNOf_9e6W2Q@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi everyone, it is my first FreeBSD post. I am using FreeBSD 12.1-RC2 RPI3
image in my Raspberry Pi 3B+.

I have a few experience on FreeNAS and I know the two system are not the
same. On FreeNAS, there is a tool named iocage which is a FreeBSD Jail
manager. Using the iocage, I am allowed to pass a dedicated network
interface to the Jail via the vnet feature which is default supported in
FreeBSD 12.0. With that feature, I have a idea of using FreeBSD Jail in my
Raspberry Pi and I start to do this.

Before flashing the image to SD card, I had downloaded x86 DVD and
installed as a VM to learn the basic command in FreeBSD. Since the
installation process allowed me to use ZFS as the root file system, I only
had few trouble in installing the iocage and using the Jail with vnet.
However, I found that the root file system of FreeBSD RPI3 image is UFS,
which is not supported by iocage. This means that I will have to use
another storage device to create a new zpool for iocage.

Since Raspberry Pi doesn't have native SATA port and all it's USB ports are
come from USB Hub, I believe that using iocage inside the USB will have a
huge performance drop. However, to try the feature, I adopt this situation,
create a USB zpool for iocage. I have build a zpool for Jail storage in
another USB stick in my FreeNAS and I am now import the pool to my
Raspberry Pi, and mount to the Jail.

Question part.
So, is there a way to build a ZFS image (zroot) so that I could use iocage
natively in my SD card?

I also learned that I could mount a ZFS file system (zpool) as nullfs to
Jail but I don't know the difference between ZFS, zpool, dataset, zvol,
nullfs. I think that ZFS is like NTFS in Windows or EXT4 in Linux. While
zpool is like RAID but zpool itself is already ZFS formatted, normal RAID
should be formatted after creating the RAID volume. And zvol is block
storage while dataset is file storage like a folder.

But I cannot understand the difference between zvol and dataset, and why I
could mount a zpool as nullfs inside the Jail? ZFS and nullfs should be two
different file system.

Thank you to read this thread and sorry for my English as I am not a native
user.

Zero



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAL4V3=BkWafOLhUazHQVePbF%2BiY-ovC9J7X_5H0DNOf_9e6W2Q>