this post was submitted on 07 Jul 2023
74 points (96.2% liked)

Selfhosted

40006 readers
714 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
top 45 comments
sorted by: hot top controversial new old
[–] [email protected] 32 points 1 year ago (1 children)

Ext4, my needs are simple and in all the years I've been using extX, never had a problem

[–] [email protected] 18 points 1 year ago

Same. I tried btrfs and ended up with a corrupted drive. I've never had ext4 fail on me in a way that wasn't recoverable. Boring and safe are features I like in my filesystems.

[–] [email protected] 30 points 1 year ago (2 children)

ZFS. I want snapshots, volumes, encryption etc. btrfs fucked me over too often. Also I prefer the semantics of the zfs and zpool utils and the way mount points are handled. Thanks to ZFSBootMenu I can even have /boot as a zfs volume and have it therefore incluced in my snapshots. And did I mention that all of that is encrypted? Anyway. Love it.

[–] [email protected] 17 points 1 year ago (1 children)

ZFS is really like the god filesystem: it supports basically everything you might want out of the box. Compression, encryption, snapshots, CoW, RAID, checksumming, casefolding/case insentivity, block volumes, you name it.

You can get compression, snapshots and CoW with btrfs and some basic RAID, but not encryption. You can get encryption with ext4 but pretty much nothing else. Gotta do LUKS and LVM if you want volume management, mdadm if you want any sort of RAID. f2fs does pretty much nothing but flash friendly storage.

[–] [email protected] 9 points 1 year ago

It’s a shame it can’t be included in the mainline kernel. Especially over what seems to be a legal technicality.

[–] [email protected] 1 points 1 year ago

ZFS for RAID array and BTRFS for root is the way to go!

[–] [email protected] 18 points 1 year ago (1 children)

Btrfs because I've had constant issues with zfs in multiple different times.

Everyone praises zfs so I'm sure it's something I'm missing, but I've had very little issue with btrfs, other than it's incomplete feature set.

[–] [email protected] 4 points 1 year ago (1 children)
[–] [email protected] 9 points 1 year ago (1 children)

Its mostly that due to licensing issues it can't be included in the Linux kernel like btrfs and thus is prone to breaking at very in-opportune times.

IMHO both are fine, but btrfs is more hassle free and good enough (tm) for hobby self-hosters.

[–] [email protected] 0 points 1 year ago (1 children)
[–] [email protected] 3 points 1 year ago

He's talking about kernel taint. That is annoying in Linux.

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

I have enough to think about without the damn file system getting complicated. So plain old ext4. It's stable, it works it's great.

I used btrfs once and it went really badly. When it gets corrupted it refuses to even let you mount read only. The documentation isn't good and you end up finding obscure wiki's with big warnings to only run these commands if you know what you're doing - but of course I don't, there's no where to learn it and the only people who do know are the developers who wrote the file system. No thanks! It holds your data captive, so you better have some spare time and some backups. Never again.

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

That's my issue with btrfs as well. If you can't recover a file system when something goes wrong it isn't production ready imo.

[–] [email protected] 1 points 1 year ago

Totally agree, plus it's 14 years old, and at this point I think it's fair to just give up on it.

[–] [email protected] 6 points 1 year ago

Btrfs, because of compression. And I've never had any issues with it.

[–] [email protected] 6 points 1 year ago

Right now just ext4 because I'm just hosting a minecraft server and a website that's not even up right now. I'm thinking about btrfs when I build my next system. Transparent file compression and sub-volumes looks appetizing

[–] [email protected] 6 points 1 year ago

Zfs I lost so much data trying to use btrfs. And zvols are neat.

[–] [email protected] 5 points 1 year ago

I love em all, especially btrfs. But I have to stay away from xfs. Had so many weird issues with it that made no sense.

[–] [email protected] 5 points 1 year ago

ext4 on boot drives just because it's so standard and uncomplicated. Data drives either xfs or btrfs, depending on how froggy I'm feeling when I set it up. I don't use the fancy features of the filesystem. Hell, I barely even use lvm. I find all that stuff just gets in the way. I just want to put files on disk.

I've tried zfs, and it seems nice, but when you have a lot of storage, you need to have a lot of RAM to actually make it useful, and I don't.

[–] [email protected] 5 points 1 year ago* (last edited 1 year ago) (1 children)

ZFS raidz1 or raidz2 on NetBSD for mass storage on rotating disks, journaled FFS on RAID1 on SSD for system disks, as NetBSD cannot really boot from zfs (yet).

ZFS because it has superior safeguards against corruption, and flexible partitioning; FFS because it is what works.

[–] [email protected] -1 points 1 year ago (1 children)
[–] [email protected] 4 points 1 year ago (1 children)

What are the advantages of raid10 over zfs raidz2? It requires more disk space per usable space as soon as you have more than 4 disks, it doesn't have zfs's automatic checksum-based error correction, and is less resilient, in general, against multiple disk failures. In the worst case, two lost disks can mean the loss of the whole pack, whereas raidz2 can tolerate the loss of any 2 disks. Plus, with raid you still need an additional volume manager and filesystem.

[–] [email protected] -1 points 1 year ago

@Hopfgeist Speed on large spinning disks. Faster rebuilds. Less chance of complete failure because or URE.

[–] [email protected] 5 points 1 year ago* (last edited 1 year ago)

Zfs for data, vms, lxc, file server.

Ext4 for basically root partitions, maybe ufs on the non-jailed freebsd.

Old policy, separate data and OS so you can switch quickly, had it since dos and never really switched.

Zfs is perfect but heavy, especially the arc so try not to wave it at everything. Ext4 is good enough for anything where I really don't care about integrity.

Tried btrfs but zfs is awesome because when I'm done I can always send a snapshot from my workers to the main fileserver with zfs-send and keep it around. Zfs-send/receive really change the game, as does zfs's trusted raid and zlog/l2arc which makes spinning rust fly.

[–] [email protected] 4 points 1 year ago

Just ext4 pooled together with mergerfs for my media files. Seems to fit my use perfectly.

[–] [email protected] 4 points 1 year ago (2 children)

ext4 on an mdadm raid. It works well enough, and supports growing your array.

Although if I rebuilt this from scratch, I would skip mdadm and just let minio control all the drives. Minio has an S3 compatible API, which I'd then mount into whatever apps need it.

[–] [email protected] 5 points 1 year ago (1 children)

Love MinIO but it’s not a filesystem and mounting object storage as a filesystem is not a great experience (speaking from commercial experience).

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

Same experience here. S3 is essentially a key/value store to simply put and retrieve large values/blobs. Everything resembling filesystem features is just convention over how keys are named. Comminication uses HTTP, so there is a lot of overhead when working with it as an FS.

In the web you can use these properties to your advantage: you can talk to S3 with simple HTTP clients, you can use reverse proxies, you can put a CDN in front and have a static file server.

But FS utils are almost always optimized for instant block based access and fast metadata responses. Something simple like a find will fuck you over with S3.

[–] [email protected] 2 points 1 year ago

Love mdadm, it's simple and straightforward.

[–] [email protected] 4 points 1 year ago

Ext4 because it is rock solid and a reasonable foundation for Gluster. Moving off of ZFS to scale beyond what a single server can handle. I would still run ZFS for single-server many-drive situations, though MDADM is actually pretty decent honestly.

[–] [email protected] 4 points 1 year ago

Btrfs. been 7 years no issues. Those with lots of issues may have setup an unsupported Raid configuration.

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

btrfs on my gentoo box because I couldn’t be bothered to set up ZFS, although I love it.

ZFS on my proxmox boxes.

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

BTRFS on OS volumes for the rollback features and ext4 for data volumes because I have never had total data loss from ext3 or ext4.

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago)

For most systems, ext4 because it seems stable and uncomplicated.

For my NAS and big data, ZFS. People whose opinions I trust recommend it, and to the best of my technical ability to evaluate said things, the claims make sense and seem to be extremely beneficial against the threats I perceive to my data.

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago)

Ext4 (for my laptop and stuff) and ZFS (as mirrors or raidz2 for my proxmox host and data).

[–] [email protected] 2 points 1 year ago

Zfs on freebsd file server, for the error checking, error correction and flexibility.

FFS everywhere else, because I'm an OpenBSD guy. I don't love FFS, but it works.

[–] [email protected] 2 points 1 year ago

XFS for the moment, but transitioning towards ZFS. I'd never touch btrfs again, it simply is not resilient or as recoverable as a quality file system should be.

[–] [email protected] 2 points 1 year ago

ZFS on file server, fully luks encrypted btrfs on desktop, and probably ext4 or whatever is default on the buntus for laptop and work desktop.

ZFS on freenas/truenas has been rock solid for 10+ year raid. I love working with btrfs snapshots and the ease of adding drives on demand to expand. I don't think much about ext4 on those systems.

[–] [email protected] 2 points 1 year ago (1 children)

Ext4 for my root filesystem, although I've been eyeing BTRFS for a while now as a replacement.

BTRFS for all my arrays and auxillary drives - aside from one oopsie where some drives had power issues and retained corrupted data (BTRFS managed to recover everything just fine), it's been a fine experience I guess.

Judging by the amount of responses mentioning being burnt by data loss, I wouldn't be surprised if most of these were probably caused by running "btrfs fsck" 😱😅

[–] [email protected] 2 points 1 year ago (1 children)

I am also pretty interested in btrfs. I recently redid my laptop and did btrfs for everything there. No btrfs on my server yet though. Ext4 is just really optimal for data recovery. Maybe if I redo my server sometime in the future I'll start with btrfs.

[–] [email protected] 0 points 1 year ago

@stephenc @lemann

I have been using #btrfs for years now. I have not had any issues with it.

[–] [email protected] 1 points 1 year ago

I tend to use btrfs on single disks for reasons of snapshots (that I never use...), subvolumes, CoW, etc.

For my multi-disk needs (and single-disk stuff when it gets mainlined), bcachefs is my file system of choice. I'm currently running a 90tb spinning rust + 24tb metadata and cache on ssds on my archive / nas box.

[–] [email protected] 1 points 1 year ago

ZFS on server. Btrfs on laptop.

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago)

jfs+lvm on personal machines, ceph on storage, I used to use zfs on solaris and freebsd but haven't touched it in linux (there isn't any good reason, and I prefer to not break licensing)

[–] [email protected] 1 points 1 year ago

Btrfs except for /boot. Boot is ext4 but all other volumes are btrfs. Important stuff like docker, lxc or VMs are on subvolumes for quick snapshots just in case

load more comments
view more: next ›