ZFS documentation?

Can anyone find some ZFS documentation. I explicitely want
an explanation of how it deals with links.

Docs written by Oracle are useless. They do not know how
to communicate with Linux people.

3 Likes

Doe sthis help:

https://openzfs.github.io/openzfs-docs/Getting%20Started/index.html

4 Likes

It is a good start, thanks.
…
Read the whole thing, and nowhere does it explain what a pool is?

Thanks, will give that a read!!!

Hi Neville,
I found these links. See if it is relevant to you.
https://wiki.debian.org/ZFS
https://wiki.archlinux.org/title/ZFS

Jorge

1 Like

Hi Jorge,
Thank you .
After reading several documents, I still have not discovered what a ‘pool’ is?
Maybe your links will tell me
Regards
Neville

1 Like

Neville,
Are you talking about zpool?
https://arstechnica.com/information-technology/2020/05/zfs-101-understanding-zfs-storage-and-performance/

Jorge

2 Likes

At last something that explains how it works
Thank you Jorge.
There are plenty of documents that are ‘recipe books’ or
‘sales brochures’ … real infornation on ZFS is scarce.

Thanks
Neville

3 Likes

This comment from Jorge’s link seems to be an important consideration for home use of ZFS

Something I always understood was ZFS completely trusts 
the data in RAM so any memory corruption can and will hose 
the pool. My ZFS experience is all under FreeNAS. The advice 
was always to build a system with ECC RAM if you plan to 
store anything you care about at all.


I presume this hasn’t changed, but it’s quite a consideration 
for ZFS becoming available to the desktop.

There is a reply comnent

All filesystems, INCLUDING zfs, trust RAM.

But the way I read it, ZFS, being more complicated, is more susceptible to RAM corruption.

Who knows?

1 Like

I actually think ZFS is less complex than Logical Volume management… I kinda hate the whole :

  • pvcreate
  • vgcreate
  • lvcreate
    blah blah blah compared to ZFS… But with ZFS - you need to make sure you do it exactly right, from the outset - it’s not very forgiving for the unwary… and it’s caught me out in the past, trying to do stuff at the CLI - I tried replacing/adding a disk in my RAIDZ1-0 (i.e. RAID 5) i.e. 4 disks (with one as parity) and accidentally converted the whole thing into a stripe (RAID0) - i.e. the replacement disk was a concat - and I had zero redundancy. REMEMBER KIDDIES : RAID is NOT a backup solution!

I ended up having to use rsync and spend several days backing up my NAS to other media (i.e. hard drives internal and external on several of my Linux boxes) - and I rebuilt FreeNAS from scratch once everything was backed up.

I have zero information about ZFS on Linux… Last time I tried it - wasn’t happy with performance, I was booting Ubuntu 20 or 22 off encrypted ZFS - and my sync software (Resilio Sync) was eating CPU with ZFS reads and writes - so I canned that idea and went back to ext4 on LUKS (with LVM) - which has negligible (unnoticeable) performance impact on Linux.

I also seem to recall Linus Torvalds in the last couple of years or thereabouts, said something less than positive about ZFS in the kernel or something?

But I love ZFS on FreeBSD (TrueNAS) - and it’s rock solid on Solaris too… Every now and then, for shits in giggles, I’ll build a Solaris x86 VM in VirtualBox - and re-learn how to add a 2nd disk to a zpool (i.e. converting it to a zfs mirror - RAIDZ0 ?)…

Note : in 2021 I upgraded my 8 GB non-ECC RAM in my FreeNAS to 16 GB ECC. This is the same “build” I deployed in late 2019 - back then it was FreeNAS (11?), but have inplace upgraded to TrueNAS “Core” 12 - but I’m still on the fence about updating to TrueNAS “Core” 13 - I guess I should, 12 is now EOL.

But having said that - I have NEVER had any corruption issues with ZFS on FreeNAS in 12+ years (originally bought the HP N40L Microserver in late 2011) - i.e. most of that time was only using non-ECC RAM.

Interesting point : my house got a brownout yesterday - both my desktop machine, and my TrueNAS lost power, and stayed off… but a Pi4, a Pi3, an Orange Pi2E+ and my Gigabyte Brix (running RHEL 8) all stayed up. Anyway - I have a tiny (7" 4:3) VGA monitor hooked up as the console on the TrueNAS N40L - but - for some reason - it’s ALL in mirror writing! Can’t figure out why - looks weird too :smiley:

 x@baphomet  ~  uptime
11:52AM  up  5:48, 2 users, load averages: 0.37, 0.35, 0.28
 x@baphomet  ~  sudo zpool list          
NAME           SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
BARGEARSE     14.5T  12.9T  1.58T        -         -    26%    89%  1.00x    ONLINE  /mnt
freenas-boot   238G  3.89G   234G        -         -      -     1%  1.00x    ONLINE  -
 x@baphomet  ~  sudo zpool status BARGEARSE
  pool: BARGEARSE
 state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
	still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
	the pool may no longer be accessible by software that does not support
	the features. See zpool-features(5) for details.
  scan: scrub repaired 0B in 13:42:46 with 0 errors on Sun Nov 26 13:42:47 2023
config:

	NAME                                            STATE     READ WRITE CKSUM
	BARGEARSE                                       ONLINE       0     0     0
	  raidz1-0                                      ONLINE       0     0     0
	    gptid/c4f70c63-044f-11e9-b5c1-441ea13dfb0c  ONLINE       0     0     0
	    gptid/941cb3cb-31f4-11eb-98a0-441ea13dfb0c  ONLINE       0     0     0
	    gptid/912aa5ba-329b-11eb-86e3-441ea13dfb0c  ONLINE       0     0     0
	    gptid/ca979ae2-044f-11e9-b5c1-441ea13dfb0c  ONLINE       0     0     0

errors: No known data errors

I have ALL the features I need - so no need to upgrade the pool far as I care… I guess I should upgrade both ZPOOLs before I contemplate doing an inplace upgrade to TrueNAS 13.0…

I keep meaning to buy more spares for this N40L - e.g. a power supply…

1 Like

That may be so. Never tried LVM

All I meant was a system with a larger memory footprint is more likely to
intercept a cosmic ray.
and
a more complex system is more likely to have issues after a ram corruption.

I think both LVM and ZFS are way too much for the average home user.
I was looking because Gentoo and BSD are both pushing ZFS in desktop
systems… Why? What is the point of something as complicated as that
when all you have is one disk?

I can see it helping in your NAS. That is another world.

1 Like

That’s official documentation for you. It just assumed that you know it -_-

1 Like

I think , in some cases , it goes thru the Sales Department, and ends up
all superlatives and no information.

1 Like

Sadly - that’s the case with a lot of the tech that Larry Ellison ransacked from Sun Microsystems… I LOATHE dealing with Oracle… conversely, dealing with Sun Microsystems was the best IT support I’ve EVER experienced!

Sun actually opensourced both Solaris, and ZFS, before Oracle bought them (I bet Larry Ellison was spewing when he got the lawyers involved to see if he could turn back time)… That’s how we got ZFS in FreeBSD and why it so mature on BSD UNIX-like systems - well - maybe FreeBSD anyway…

2 Likes

ZFS seems to work in my GhostBSD… its the default there.

2 Likes

WOW!!! You guys are way over my head on this subject, I have enough problems just dealing with ntfs, ext2 and ext4. Good reading though!!!

Yes, Sun were really the best supplier in the 1980/90’s
CSIRO was full of Sun workstations.
Before then DEC were right up there.

That’s one of the ones that comes with a WM/DE/GUI by default right? XFCE?

Yeah. It defaults to Mate with official support
There is an Xfce Community Edition.

It is a real good effort at making an easily installable, ready to use, desktop.
But why did they choose ZFS? Trying to be modern maybe?

I was doing the Gentoo /etc/fstab today and had to put ext4 in place of zfs for the / file system. Why would Gentoo consider zfs?