this post was submitted on 23 Nov 2024
66 points (94.6% liked)

Selfhosted

40332 readers
414 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

About a year ago I switched to ZFS for Proxmox so that I wouldn't be running technology preview.

Btrfs gave me no issues for years and I even replaced a dying disk with no issues. I use raid 1 for my Proxmox machines. Anyway I moved to ZFS and it has been a less that ideal experience. The separate kernel modules mean that I can't downgrade the kernel plus the performance on my hardware is abysmal. I get only like 50-100mb/s vs the several hundred I would get with btrfs.

Any reason I shouldn't go back to btrfs? There seems to be a community fear of btrfs eating data or having unexplainable errors. That is sad to hear as btrfs has had lots of time to mature in the last 8 years. I would never have considered it 5-6 years ago but now it seems like a solid choice.

Anyone else pondering or using btrfs? It seems like a solid choice.

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 1 points 23 minutes ago

btrfs has been the default file system for Fedora Workstation since Fedora 33 so not much reason to not use it.

[–] [email protected] 8 points 10 hours ago

Btrfs came default with my new Synology, where I have it in Synology's raid config (similar to raid 1 I think) and I haven't had any problems.

I don't recommend the btrfs drivers for windows 10. I had a drive using this and it would often become unreachable under load, but this is more a Windows problem than a problem with btrfs

[–] [email protected] 4 points 11 hours ago

What kind of disks, and how is your ZFS set up? Something seems amis here.

[–] [email protected] 11 points 15 hours ago (1 children)

Did you set the correct block size for your disk? Especially modern SSDs like to pretend they have 512B sectors for some compatibility reason, while the hardware can only do 4k sectors. Make sure to set ashift=12.

Proxmox also uses a very small volblocksize by default. This mostly applies to RAIDz, but try using a higher value like 64k. (Default on Proxmox is 8k or 16k on newer versions)

https://discourse.practicalzfs.com/t/psa-raidz2-proxmox-efficiency-performance/1694

[–] randombullet 1 points 2 hours ago

I'm thinking of bumping mine up to 128k since I do mostly photography and videography, but I've heard that 1M can increase write speeds but decrease read speeds?

I'll have a RAIDZ1 and a RAIDZ2 pool for hot storage and warm storage.

[–] [email protected] 33 points 18 hours ago (3 children)

Don't use btrfs if you need RAID 5 or 6.

The RAID56 feature provides striping and parity over several devices, same as the traditional RAID5/6. There are some implementation and design deficiencies that make it unreliable for some corner cases and the feature should not be used in production, only for evaluation or testing. The power failure safety for metadata with RAID56 is not 100%.

https://btrfs.readthedocs.io/en/latest/btrfs-man5.html#raid56-status-and-recommended-practices

[–] [email protected] 3 points 9 hours ago (1 children)

I have no problem running it with raid 5/6. The important thing is to have a UPS.

[–] [email protected] 1 points 8 hours ago

I've been running a btrfs storage array with data on raid5 and metadata I believe raid1 for the last 5 or so years and have yet to have a problem because of it. I did unfortunately learn not to fully trust the windows btrfs driver but was fortunately able to restore from backups and redownloading.

I wouldn't hesitate to set it up again for myself or anybody else, and adding a UPS would be icing on the cake. (I added UPS to my setup this last summer)

[–] [email protected] 1 points 7 hours ago (1 children)

I've got raid 6 at the base level and LVM for partitioning and ext4 filesystem for a k8s setup. Based on this, btrfs doesn't provide me with any advantages that I don't already have at a lower level.

Additionaly, for my system, btrfs uses more bits per file or something such that I was running out of disk space vs ext4. Yeah, I can go buy more disks, but I like to think that I'm running at peak efficiency, using all the bits, with no waste.

[–] [email protected] 1 points 3 hours ago

btrfs doesn’t provide me with any advantages that I don’t already have at a lower level.

Well yeah, because it's supposed to replace those lower levels.

Also, BTRFS does provide advantages over ext4, such as snapshots, which I think are fantastic since I can recover if things go sideways. I don't know what your use-case is, so I don't know if the features BTRFS provides would be valuable to you.

[–] [email protected] 7 points 13 hours ago

Or run the raid 5 or 6 separately, with hardware raid or mdadm

Even for simple mirroring there's an argument to be made for running it separately from btrfs using mdadm. You do lose the benefit of btrfs being able to automatically pick the valid copy on localised corruption, but the admin tools are easier to use and more proven in a case of full disk failure, and if you run an encrypted block device you need to encrypt half as much stuff.

[–] [email protected] 21 points 18 hours ago (12 children)

You shouldn't have abysmal performance with ZFS. Something must be up.

load more comments (12 replies)
[–] [email protected] 43 points 20 hours ago (4 children)

A bit of topic; am I the only one that pronounces it "butterface"?

[–] [email protected] 6 points 10 hours ago (1 children)

Isn't it meant to be like "better FS"? So you're not too far off.

[–] [email protected] 7 points 9 hours ago

i call it "butter FS"

[–] [email protected] 47 points 20 hours ago (1 children)
[–] [email protected] 31 points 20 hours ago

You son of a bitch, I'm in.

[–] [email protected] 2 points 11 hours ago

Similarly, I read bcachefs as BCA Chefs 😅

[–] [email protected] 17 points 20 hours ago

Ah feck. Not any more.

[–] [email protected] 4 points 13 hours ago (1 children)

My setup is different to yours but not totally different. I run ESXi 8, and I started to use BTRFS on some of my VM's.

I had a power failure, that was longer than the UPS could handle. Most of the system shutdown safely, a few VM's did not. All of the EXT4 VM's were easily recovered (including another one that was XFS). TWO of the BTRFS systems crashed into a non recoverable state.

Nothing I could do to fix them, they were just toast. I had no choice but to recover using backups. This made me highly aware that BTRFS is still not a reliable FS.

I am migrating everything from BTRFS to something more stable and reliable like EXT4. It's simply not worth the headache.

[–] [email protected] 2 points 12 hours ago

When did this happen?

[–] [email protected] 28 points 21 hours ago (3 children)

No reason not to. Old reputations die hard, but it's been many many years since I've had an issue.

I like also that btrfs is a lot more flexible than ZFS which is pretty strict about the size and number of disks, whereas you can upgrade a btrfs array ad hoc.

I'll add to avoid RAID5/6 as that is still not considered safe, but you mentioned RAID1 which has no issues.

load more comments (3 replies)
[–] [email protected] 1 points 11 hours ago

I am using btrfs on raid1 for a few years now and no major issue.

It's a bit annoying that a system with a degraded raid doesn't boot up without manual intervention though.

Also, not sure why but I recently broke a system installation on btrfs by taking out the drive and accessing it (and writing to it) from another PC via an USB adapter. But I guess that is not a common scenario.

[–] [email protected] 6 points 17 hours ago (2 children)

One day I had a power outage and I wasn't able to mount the btrfs system disk anymore. I could mount it in another Linux but I wasn't able to boot from it anymore. I was very pissed, lost a whole day of work

[–] [email protected] 3 points 12 hours ago (1 children)
[–] [email protected] 2 points 10 hours ago

I think 5 years ago, on Ubuntu

load more comments (1 replies)
[–] [email protected] 8 points 18 hours ago (2 children)

I've been using single-disk btrfs for my rootfs on every system for almost a decade. Great for snapshots while still being an in-tree driver. I also like being able to use subvolumes to treat / and /home (maybe others) similar to separate filesystems without actually being different partitions.

I had used it for my NAS array too, with btrfs raid1 (on top of luks), but migrated that over to ZFS a couple years ago because I wanted to get more usable storage space for the same money. btrfs raid5 is widely reported to be flawed and seemed to be in purgatory of never being fixed, so I moved to raidz1 instead.

One thing I miss is heterogenous arrays: with btrfs I can gradually upgrade my storage one disk at a time (without rewriting the filesystem) and it uses all of my space. For example, two 12TB drives, two 8TB drives, and one 4TB drive adds up to 44TB and raid1 cuts that in half to 22TB effective space. ZFS doesn't do that. Before I could migrate to ZFS I had to commit to buying a bunch of new drives (5x12TB not counting the backup array) so that every drive is the same size and I felt confident it would be enough space to last me a long time since growing it after the fact is a burden.

load more comments (2 replies)
load more comments
view more: next ›