Installing zfs-fuse or zfs on Pureos?

I’m wondering how to get started with zfs-fuse or zfs on PureOS. (I have a Librem 13.) I was able to install zfs-fuse but I don’t know what to do next or even if it is supposed to work at all. There is no ‘zfs’ or ‘zpool’ command and while the ‘members’ are visible they aren’t readable. The ‘home page’ given in the debian package info goes to a dead-domain page. The only thorough linux documentation I’ve found is quite old and is for zfs, not zfs-fuse. Also it says to add contrib and nonfree to the packages list, which I really don’t want to do. Can someone point me in the right direction?

I don’t have any expertise in ZFS but the first obvious question is whether you are trying to do this for the root file system (likely to be more problematic) or another file system.

The second question is … as ZFS appears to be an Oracle proprietary thing, it doesn’t sit well with PureOS. Or are you trying to use OpenZFS? Either way, you may have to go outside the PureOS repository, and understand and manage that risk.

Anything using FUSE is likely to be safer but perhaps not as performant.

Speculating a lot … perhaps the FUSE package only allows you to access an existing ZFS file system and does not include the tools needed to manage it i.e. need some other package for that?

1 Like

[note: apparently, as a “new user” to this forum, I’m only allowed to post two links… I had a lot more, hopefully all of them useful, but since I can’t do that, I’m stripping it down to just the most critical-seeming two, and I’ll omit or obfuscate (depending on how easy I think it would be to find) the rest.]

The response above left some questions in my mind, so I did a bit of research… Here’s a bit more information, for anyone (such as myself) who’s wanting to better understand what is (presumably) meant by “doesn’t sit well with PureOS”.

So… ZFS started as a Sun/Solaris thing, and of course with Sun having been bought by Oracle, now belongs to them. When I discovered OpenZFS, I figured that meant someone had done a Free (Libre) Software implementation. Especially when I saw that it ships with Ubuntu (wiki dot ubuntu dot com/ZFS) by default. However, upon further reading, it seems it’s the same thing as described above, and that while it’s “open source”, it’s less than “free”, per the GNU (philosophy/free-sw.en.html) and FSF (about/what-is-free-software) senses of that word. More specifically, it seems that the CDDL license under which it is released is incompatible (according to the FSF) with the GPLv2 license (under which the Linux kernel is released).

The licensing section in the FAQ provides some additional references (from several sources) that further discuss those incompatibilities.

And so… while I now concur with Purism’s decision not to include the kernel version of ZFS in PureOS. Still, I had a filesystem that I wanted to mount. So, I tried what I was slightly reluctant to try at first, and installed the zfs-fuse module, (added /usr/sbin to my path,) and gave that a try. Unfortunately, even though this filesystem was created on a system that, to the best of my knowledge, had a version of ZFS installed on it that was several years old, doing zpool import still failed with a message saying that pool is formatted using a newer ZFS version. :frowning:

Running zpool upgrade -v | head -1, I see that:

This system is currently running ZFS pool version 23.

If I’m correctly interpreting this version list (docs dot oracle dot com/cd/E37838_01/html/E61017/gjxle.html), version 23 is from 2011. So… Well, it’s not August yet, so not quite 10 years old. Oof. I’m not sure the other system is actually terribly much newer of a version, but the same command on it results in:

This system supports ZFS pool feature flags.

And it goes on to list some numbered versions that are also supported, with higher numbers. So, it’s at least somewhat newer.

Which brings me back to something that’s said in FSF’s article:

Privately, You Can Do As You Like

The GNU GPL has no substantive requirements about what you do in private; the GPL conditions apply when you make the work available to others.

So, since my goal is simply to have access to a filesystem that I can share between an old non-Linux system (which has ZFS, but not, say, ext4 or whatever), and this Librem Mini, I figure my next step is to try to figure out how to get the native package.

I tried running something closely resembling some various sets of instructions found online (e.g. github/zfsonlinux/pkg-zfs/wiki/HOWTO-install-Ubuntu-to-a-Native-ZFS-Root-Filesystem/42c46cee46bc518df273bd5cb00bc0929ee48ba8), but the generated file in /etc/apt/sources.list.d referenced ‘hirsuit’ as a distribution, which didn’t exist within the pools subdirectory of the linked directory,… I tried changing hirsuite to trusty (the most recent distribution that does exist there), which at least allowed sudo apt update to work, but trying to install ubuntu-zfs still didn’t work in any sort of happy way.

I’ve run out of energy working on this for tonight (I’d just add the latest ubuntu repository, but I don’t want everything from it, and I’m still new enough to Ubuntu-based administration to not quite know how to limit things, if that’s even possible, to just the ZFS-related stuff… and it looks like that PPA has been abandoned, since the files are now in Ubunto.)

So, perhaps I’ll keep working on this – if I do, I’ll be sure to update anything that gives me success. In the mean time, hopefully this at least provides a bit more information for anyone else who might want to understand why ZFS isn’t available on PureOS, with perhaps some hints in the general direction of acquiring it.