ZFS vs. BTRFS: Safest Choice for Dummies?

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

rodavo

New Member
Sep 1, 2023
1
0
1
After I finally decide which cloud storage service to subscribe to for my ~ 6TB of precious data (any suggested vendors ???), as a NAS newbie (dummy? Okay, I know what RAID mirroring is and the very basics of parity bit checking using ECC memory but that’s about it), I'm torn between have a local IT guy build me a btrfs or zfs RAID redundant NAS.

If the NAS can playback a ripped DVD movie saved to an uncompressed MKV or ISO file without any latency "hiccups", read/write speed means nothing compared to data protection against bit rot. Therefore, most of what I've read (and can comprehend via my totally non-Linux newbie brain) says ZFS offers substantially better protection than btrfs.
DAS: Which RAID Configuration to Minimize Bit Rot Error Risk?
https://www.reddit.com/r/zfs/comments/107lhbr https://www.reddit.com/r/btrfs/comments/1621lno

But what scares me towards btrfs is that Synology's market presence seems far greater than QNap's. Perhaps that's to be expected as Synology's a US-based brand. However, in any case, it's bizarre that ZFS did not become the standard for home and small business NAS users who care about their data.

Furthermore, it looks like the only other ZFS brand alternative to QNap is TrueNAS. But unless my IT guy would 1.) agree to build my NAS with it and 2.) configure and set the NAS up with it for dummies like me not to accidentally “break”, then what else ends up being the most practical and safest alternative?
 

i386

Well-Known Member
Mar 18, 2016
4,245
1,546
113
34
Germany
in any case, it's bizarre that ZFS did not become the standard for home and small business NAS users who care about their data.
ZFS is not a magical silver bullet/solution to all problems, especially for (very) small budgets. Other solutions work good enough if you check the data/array regularly (not just software, but also hardware raid). Without these regularly checks even zfs won't be able to help you (just google linus tech tips zfs bitrot for an example)
 

DavidWJohnston

Active Member
Sep 30, 2020
242
191
43
Building a NAS from scratch and maintaining it safely and reliably does require a good amount of knowledge. Why not buy a commercial NAS like a QNAP, and integrate it with something like Google Drive for your cloud backups, which QNAP supports natively. Like this:


So you just buy the QNAP and the drives you want, set up RAID the way you want with the wizard, and put your Google creds in to backup to Google drive.

Would that suit your needs better than a custom solution?
 
  • Like
Reactions: ecogit

ericloewe

Active Member
Apr 24, 2017
295
129
43
30
Fundamentally, much of what btrfs offers is offered with significant asterisks or is outright broken and dangerous (in particular, the RAID5/6 equivalent is broken by design and comes with a huge warning in the official wiki that it will corrupt data).
ZFS, on the other hand, is generally considered to be extremely reliable. You also get to not be locked into to Linux, which is always good.
Building a NAS from scratch and maintaining it safely and reliably does require a good amount of knowledge.
I have to agree, no server is going to work properly by plugging it in, placing it in a corner and forgetting about it. That said, ZFS is not any more difficult than other potential solutions.
Furthermore, it looks like the only other ZFS brand alternative to QNap is TrueNAS. But unless my IT guy would 1.) agree to build my NAS with it and 2.) configure and set the NAS up with it for dummies like me not to accidentally “break”, then what else ends up being the most practical and safest alternative?
Or you can buy a TrueNAS Mini from iXsystems (I think they're available on Amazon). You'd still need to learn how administer it, but you'd really have to do that anyway, regardless of what you go for. Full disclosure: I am a mod on the TrueNAS forums, but am not compensated by iXsystems and get no kickbacks if you buy from them.
 
  • Like
Reactions: reasonsandreasons

nva

New Member
Aug 19, 2018
18
3
3
Synology is undoubtedly best for average people. Pretty much plug and play. Use SHR1/SHR2 instead of RAID5/6, or go with RAID10 if you're paranoid about single parity setup but you'd have to buy bigger drives to make up usable capacity.

Since your data is precious, it's important to frequently back up your data to cloud (google, black blaze b2 etc). Pretty much any solution would have that feature
 

BlueFox

Legendary Member Spam Hunter Extraordinaire
Oct 26, 2015
2,091
1,507
113
But what scares me towards btrfs is that Synology's market presence seems far greater than QNap's. Perhaps that's to be expected as Synology's a US-based brand. However, in any case, it's bizarre that ZFS did not become the standard for home and small business NAS users who care about their data.
Synology is not US based. Taiwan like everyone else. There are myriad of reasons why ZFS did not catch on more. It has many shortcomings.

Honestly with your small storage requirements, you should just get a 2 bay NAS with a pair of 12TB or larger drives (in RAID1). I prefer Synology myself, but it's not worth building/managing your own NAS with that little data. Even an inexpensive Synology DS223j will do what you need and that can be bought for under $200.
Fundamentally, much of what btrfs offers is offered with significant asterisks or is outright broken and dangerous (in particular, the RAID5/6 equivalent is broken by design and comes with a huge warning in the official wiki that it will corrupt data).
ZFS, on the other hand, is generally considered to be extremely reliable. You also get to not be locked into to Linux, which is always good.
No one uses RAID5/6 with BTRFS. Synology certainly doesn't. It's really a non-issue.

I don't see how being "locked in" to Linux is really a point either?
 

ericloewe

Active Member
Apr 24, 2017
295
129
43
30
No one uses RAID5/6 with BTRFS. Synology certainly doesn't. It's really a non-issue.
It says a lot about the quality of the overall package, that everyone needs to use something else in addition to btrfs to do something btrfs claims/claimed to do. If there is something for which trust is essential, it's a filesystem, and btrfs' gung-ho approach (the wiki at one point said rebuilds did not actually work, which raises all sorts of interesting questions) is not conducive to the development of trust.
Having to deal with another layer just to have parity RAID (though that is not at all something you always want/need) also sounds like the sort of "fun" that comes with hardware RAID, minus the ultra-proprietary nature.
I don't see how being "locked in" to Linux is really a point either?
Broader availability is pretty clearly beneficial, though I'll grant that it is a secondary concern in many/most cases.
 

BlueFox

Legendary Member Spam Hunter Extraordinaire
Oct 26, 2015
2,091
1,507
113
Using mdadm for RAID is very common and pretty standard. No different than mdadm with ext3/ext4/xfs/etc. If it were so problematic, it wouldn't be the default in a number of popular Linux distributions, nor used in widely supported commercial products.
 
  • Like
Reactions: ecogit

Dev_Mgr

Active Member
Sep 20, 2014
135
48
28
Texas
Synology uses the filesystem side of BTRFS, but not the raid option:


A few caveats I've run into with ZFS are based on my TrueNAS experience using it as a VM to try to see if I wanted to use it:
- you can't expand a raid 6 by 1 disk (modern ZFS version can somewhat, but it doesn't resilver the data, so you don't get the benefits of spreading the data across more drives)
- On the Synology units I have (an ancient DS2411 and a tiny DS220+), I just create a username, create a share and give the user permission to the share. On ZFS I had to create a user, then do several additional steps (had to find documentation across multiple online blogs and manuals) just to see and then access the share.

One thing I'm starting to dislike about Synology is their push towards using their own branded drives on units with more than 4 drive bays. On my DS2411 (from around 2011) the list of supported drives was pretty huge and had drives from pretty much all vendors, but if you pull up the DS2422 HDD support matrix, it only has their own drives, and from what I understand it will not let you ignore/suppress the alerts if you use a non-Synology drive (which are half the price of the Synology drives (at 18TB drive size)). If I was buying a NAS solution with a requirement for 4 hour or next business day warranty/support and my company was dependent on it, that'd be one thing, but for my home, I want the ability to expand by 1 drive at a time (without having to pay a near-double premium to use a drive that won't trigger permanent errors), be able to transcode at least 1080p, but preferably also 2160p (4k) for when I start shifting to that (I have been using my old Synology for 12 years.... it can't stream anything, but is fine for backups and such), and support 8 or more drives.

I've been considering going QNAP (one of their higher end 16-bay units (4 x 2.5" and 12 x 3.5" (and I think 4 x M.2)), but I need to see if there is either an emulator or a QNAP equivalent of Xpenology so I can try out their interface.
 

ericloewe

Active Member
Apr 24, 2017
295
129
43
30
Using mdadm for RAID is very common and pretty standard
Indeed it is, but that's not a high bar. General consensus seems to be that it's somewhat inoffensive, which is good, but it's still a second, completely orthogonal set of tools needed to handle the additional layer that is not integrated with the filesystem.
- On the Synology units I have (an ancient DS2411 and a tiny DS220+), I just create a username, create a share and give the user permission to the share. On ZFS I had to create a user, then do several additional steps (had to find documentation across multiple online blogs and manuals) just to see and then access the share.
Not sure what that's about, since permissions work pretty similarly across filesystems, and the process you describe is close to TrueNAS' workflow anyway.
from what I understand it will not let you ignore/suppress the alerts if you use a non-Synology drive
If true, that's a nasty, scummy move even the likes of Dell, HPE and Lenovo don't pull.
 

Dev_Mgr

Active Member
Sep 20, 2014
135
48
28
Texas
If true, that's a nasty, scummy move even the likes of Dell, HPE and Lenovo don't pull.
Not sure about their servers, but on their SANs, any drive without that specific vendor's firmware will just not work at all.

I think Dell had an initial firmware release on one of their raid controllers that locked out non-Dell drives, but they quickly released a firmware that no longer locked out non-Dell drives (probably due to the flack they got for doing this (though I think they said it was an oversight)).
 

gea

Well-Known Member
Dec 31, 2010
3,163
1,195
113
DE
A few caveats I've run into with ZFS are based on my TrueNAS experience using it as a VM to try to see if I wanted to use it:
- you can't expand a raid 6 by 1 disk (modern ZFS version can somewhat, but it doesn't resilver the data, so you don't get the benefits of spreading the data across more drives)
- On the Synology units I have (an ancient DS2411 and a tiny DS220+), I just create a username, create a share and give the user permission to the share. On ZFS I had to create a user, then do several additional steps (had to find documentation across multiple online blogs and manuals) just to see and then access the share.
This is not related to ZFS. On BSD and LInux you always use SAMBA that knows nothing about ZFS. Only difference are SAMBA settings and defaults by a distribution. ZFS related are only ZFS properties like aclmode or aclinherit that work on filesystem level not share level.

Only when you use a Solaris based ZFS system with the OS/kernel/ZFS based SMB server instead SAMBA, situation is different as this comes with Windows ntfs alike nfs4 ACL instead simpler Posix ACL, use shares as a strict ZFS property that allows ZFS snaps as Windows previous versions without special settings or considerations, can use local SMB groups that can contain groups and use Windows SID ex S-1-5-21-722635049- 2797886035-3977363046- 2147484648 as security reference instead simpler Unix uid like 101 with the then needed complex mappings on a backup system or after a filesystem replication.
 

louie1961

Active Member
May 15, 2023
164
63
28
I think its all about your openness to learn and the amount of time you want to spend learning it. ZFS is fine. I use it in my Proxmox server. I have tried it in TrueNAS scale as well. But if I rebuild my proxmox server, I might not use it again. Its a bit of a memory hog IMHO and I am not sure I really need it. I have three NAS devices currently: I have a two bay Synology that handles most of my heavy lifting. I also have a Raspberry Pi NAS that I built, running open media vault. It is mostly for cold storage of backups. I back up my Synology to the Pi as well as to the cloud (to accomplish a 3,2,1 backup strategy), and I also run a virtual instance of OMV on my proxmox server. That instance runs a raid 5 of three disks, which was created using MDADM, and it is formatted with BTRFS (so not using the BTRFS raid features...very similar to what Synology does). I use that instance to provide storage for my self hosted Nextcloud instance. That instance as well as my Proxmox server also back up to the Raspbery Pi NAS.

TL/DR if you want to learn and experiment either ZFS or BTRFS will be suitable. I prefer BTRFS at the moment, built on top of MDADM for the raid function. Honestly though, I really don't think I need raid at all for my purposes. Even without RAID, BTRFS provides good bit-rot protection/scrubbing, file system snap shots, and is much less memory intensive.

BUT if you want dead simple NAS operations with really great software, and don't want to have to put any work into it, go Synology. I really think the Synolgy software is the best out there right now. YMMV
 

i386

Well-Known Member
Mar 18, 2016
4,245
1,546
113
34
Germany
Another point against BTRFS: the maintainer works for oracle :D
Oracle is "evil" and blocked one of their developers from merging a working fix for parity raid in btrfs (with variable numbers of parity!)
 

ericloewe

Active Member
Apr 24, 2017
295
129
43
30
Which really goes to show that the "Oracle might sue us" line of reasoning is less-than-honest, but that's getting off-topic...