Any plans on EndeavourOS ZFS?

The easiest way to get zfs support in an existing system or on the Arch iso is simply to install the dkms module.

If you don’t want root on zfs, that is really all you need to do. If you do want a zfs root, I recommend adding two repos:

[archzfs]
Server = http://archzfs.com/$repo/x86_64

[archzfs-kernels]
Server = http://end.re/$repo/

You will want to put these at the beginning of your repo list so they take precedence over core. Using the prebuilt zfs support from these repos ensures you will never get a kernel which doesn’t support zfs.

When I install, I usually just use the zfs dkms module to get basic zfs support for the install. You can add the other repos during the install or after.

If you have multiple disks you could migrate some of them to zfs in advance of moving root.

Also, while it is much easier to re-install, you can technically migrate your existing root filesystem to zfs. If you have multiple disks, you can move it out of the way and then rsync it into a zfs dataset.

You don’t need to do this. You can directly install a zfs system.

3 Likes

Thanks a lot @dalto.

Just checking I understood you correctly: with an Arch ISO I would add the dkms module during install and thus would be able to format the actual zfs partition before I run pacstrap.

With EOS I would need to install a small OS I can boot into, as only then I can add the dkms module. With the consequence that root is not on ZFS, at least initially.

Yes. Correct. Although, you don’t really format a partition with zfs. You create a zpool and the underlying datasets.

Yes, although, if you are capable of installing the Arch way, I would argue it is easier to manually install and then just add the EOS repo and install the EOS packages.

2 Likes

This is not only an Arch issue. You will find similar issues on any other distro when you try to install on zfs. For some of them it is completely impossible to do. ubuntu is different because they are the only distro which officially support installation on zfs.

You also need to keep in mind that if you install on zfs you can not just take any live CD and chroot into your system. This makes live a lot harder when you need to recover from a severe incident.

My take on this: Simply dont install on zfs. Use a standard fs for root, like XFS and start using zfs for all the rest (/home, /data, etc.)

2 Likes

I was sold too for a moment, but then you just had to write out all of those commands and steps!! Now I’m scared shitless!!! :grimacing:

And you should! zfs is nothing you want to do “en passant” (for the chess players among us).

zfs is a professional toolset, not just a filesystem. It also comes with state of the art build in reporting and debugging features. Which help you to investigate the filesystem done to lowest levels.

zfs has lots of bells and whistles. This is nothing for the casual user. But if you are not shy and you are willing to learn one of the most professional pieces of software I have ever seen, then you will never regret it. I promise.

By the way, I just did a new fio benchmark for my internal RAID10 is 4x Western Digital 4TB drives. And with openzfs 2.0 the performance is even better than what I had before with version 0.8.5:

Run status group 0 (all jobs):
   READ: bw=390MiB/s (409MB/s), 390MiB/s-390MiB/s (409MB/s-409MB/s), io=64.0GiB (68.7GB), run=168123-168123msec
--
Run status group 0 (all jobs):
  WRITE: bw=289MiB/s (303MB/s), 289MiB/s-289MiB/s (303MB/s-303MB/s), io=64.0GiB (68.7GB), run=227012-227012msec

This is very hard to top.

I know the en passant move, but didn’t know it’s name. I am not very good at chess, and so would pull it out whenever I could, to lead on that I may know how to play better than it looked! :slightly_smiling_face: Castling is another good one, if you remember it when it would help.

I will be trying my hand in setting up an older computer as a local server for my business, and hear that ZFS is a great choice. But let me be honest, all my past attempts in networking mostly failed. :frowning_face: So much way outdated info out there. Nothing like spending weeks of long nights of sifting through huge amounts of info, cross referencing, chasing ghosts and finding out that the tutorials no longer apply, or software’s don’t exist anymore…

“Jim, I’m a General physician, not a brain surgeon!” Dr. McCoy.

I am the one who added support for zfs to Manjaro Architect and I am not sure how well maintained the zfs support is at this point.

If you haven’t already, you should probably report that issue to the Manjaro team so someone can take a look at it.

No worries. I didn’t take it personally. I haven’t looked at in a while and it is entirely possible it isn’t working at the moment.

1 Like

This was a much bigger issue for Manjaro than other Arch-based distros. Since Arch has package archives you can almost always install the headers for the kernel and then use the dkms module.

For me, the advantages of running a zfs root far outweigh the inconvenience.

If you are taking snapshots of yours datasets you should be able to use any ISO with zfs support at the appropriate version to restore the broken system from a snapshot. If you aren’t taking snapshots, using an Ubuntu ISO to repair an Arch installation may be painful depending on how exactly your system is broken.

Just stumbled over this one in the Arch wiki:

Warning: Swap on zvol does not support resume from hibernation, attempt to resume will result in pool corruption. 

If that is still accurate that would mean I can’t use it on my laptop, hibernation is important to me. May still consider it for my server(s) though.

You can still have a swap partition. You don’t need to give zfs the entire disk.

1 Like

The answer from Adriaan for why Calamares doesn’t fit with Zfs for now.To add zfs with all features they need Licence. They could integrate a part of it but you would miss the most interesting features of Zfs…

You need to see that there is a difference when a user install zfs and when Calamares has to distribute it where a user doesn’t !

4 Likes

The current version of Architect is running an older kernel version (5.6 series) and the ZFS drivers are not available any more, nor can you use the dkms since you cannot install the kernel headers.

There is a forum post talking about it as an issue, and the suggested workaround is to use any of the normal desktop images that are up to date and run Architect from there. I tested it in a VM using the minimal I3 ISO and it seems to work just fine.

Sorry to talk manjaro on the EndevourOS forums. :slight_smile:

Not to worry - ZFS is kinda fun - but I don’t know what you would want it in an installer for. It is ‘easy’ enough to follow the Arch wiki (and online tutorials) if you need it / want it - and every setup differs from every other, which would make it tough to decide on a default.

Much better to add the Arch repo for it, and conform it to YOUR expectations…

You can quickly get bogged down in it - how many drives, what level of Raid (if any), how many pools, with encryption or not, snapshots enabled or not, and how to handle them - local or remote access…

Edit: forgot to mention - you need to have a strategy for mounting it on every boot (or importing it, as they refer to it) - even with dkms it isn’t recognized and used by default.

It would make installs where the root filesystem is on zfs much easier. As it stands now, you can’t use the EOS installer if you want zfs on root. I suppose technically you can but it would be harder to do it that way than just to install manually.

That being said, if Calamares doesn’t support it there isn’t much that can be done about it.

You should just need to enable the appropriate service(s) and everything will be automounted.

Any idea what those might be? Apart from whatever operates autostart, anyway - that fires up my startup-sequence script…

This what I usually enable. I have never needed anything else or any scripts.

systemctl enable zfs.target
systemctl enable zfs-import-cache
systemctl enable zfs-mount
systemctl enable zfs-import.target
1 Like

Thanks for the info! Now to find them all, and figure out what they are doing. Blindly enabling them all is not my preferred option! :grin: I have tried that sort of thing before, in hopes of understanding later - but I like a look at the contents first these days…

I didn’t even look at making it a / choice - f2fs does for that job so far. Somehow I expect that the day I get the system setup completely, I will no longer need it for anything!

Thanks to @dalto for the services. I just spent a few hours trudging through Archwiki entries and elsewhere, and STILL didn’t find them all - nor could I find their location on my system(s) - but they definitely WORK! Here I though I would have to invent them all once I did more research… :grin:

1 Like