Most active commenters

    ←back to thread

    144 points ksec | 12 comments | | HN request time: 0.225s | source | bottom
    1. zahlman ◴[] No.44468213[source]
    Does the filesystem actually need to be part of the kernel project to work? I can see where you'd need that for the root filesystem, but even then, couldn't one migrate an existing installation to a new partition with a different filesystem?
    replies(4): >>44468621 #>>44468749 #>>44470079 #>>44471033 #
    2. teekert ◴[] No.44468621[source]
    We ZFS for that. What we want is something in kernel, ready to go, 100% supported on root ok any Linux system with no license ambiguity. We want to replace ext4. Maybe btrfs can do it. I hear it has outgrown its rocky puberty.
    replies(1): >>44468869 #
    3. gizmo686 ◴[] No.44468749[source]
    Even the root filesystem can be FUSE if you want it to. The only thing that needs to be in the kernel is the initial root filesystem driver. Nowadays that is pretty much always just compressed CPIO (initrd). At that point user space can do pretty much whatever before doing a pivot_root operation to wherever.
    replies(1): >>44473636 #
    4. alphazard ◴[] No.44468869[source]
    Bcachefs and Btrfs are not really competing with Ext4. There are basically 2 filesystem niches.

    First niche is the full featured CoW filesystem; it has snapshots, detects and repairs corruption, transparent compression, all that good stuff.

    The other niche is being an allocator of sectors. There's one storage device, divide it up amongst all these processes asking for storage. That's Ext4: an allocator of disk sectors, dressed up in a filesystem API. When you are running databases or VMs, all you want is an allocator of sectors. You don't want lots of stuff getting in the way of your writes. You don't want checksumming, you don't want your writes going to a new place every time. You just want write access to part of the disk.

    replies(4): >>44470271 #>>44470974 #>>44471079 #>>44474304 #
    5. topspin ◴[] No.44470079[source]
    No, it does not. It might need to be part of the kernel to be included downstream in Linux distributions, if the file system developer fails to maintain distro buildable modules that don't eat people's data. Should developers provide workable modules, getting these modules into most distros is generally unhindered.

    And no, it's not necessary even for root file systems. Linux can load modules, such as file system drivers, before it mounts root. That's what initramfs is about.

    ZFSoL has thrived for 15 years, fostering several commercial empires, and has never been in Linus's mainline.

    Bcachefs development may continue as Kent Overstreet wishes, and he need not squabble with Linus going forward. Seems like an entirely workable outcome. Kudos to Linus for a.) giving Kent a chance, despite known issues with Kent, and b.) making the difficult decision to reverse himself. Both of these decisions were correct.

    What I learn from all of this is that Linus is still in the saddle and still making good calls. We are blessed.

    6. ◴[] No.44470271{3}[source]
    7. teekert ◴[] No.44470974{3}[source]
    I want COW everywhere because I want to revert to snapshots on my laptop as much as on my servers. I want it integrated into the bootloader and boot into snapshots, I want ransomware protection on my laptop, etc.
    replies(1): >>44472408 #
    8. samus ◴[] No.44471033[source]
    I think using an experimental file system is actually perfectly fine for the root partition, as long as it doesn't include `/home` and you keep a USB stick in your drawer so you can reinstall whenever it loses data.

    I'd be highly conservative about using it for my home directory though. Or at least make a subfolder where all my really important files (legal documents, master thesis, etc.) go and mount that on another partition that uses a more conservative filesystem.

    9. samus ◴[] No.44471079{3}[source]
    At the same time, many VM and containerization solutions build these features themselves. It seems attractive to reuse the heavily optimized machinery that a COW filesystem offers. And indeed at least Docker can use Btrfs snapshots to create images. It has been a while since I looked into it though; no clue how mature and performant it is nowadays.

    https://docs.docker.com/engine/storage/drivers/btrfs-driver/

    10. bombcar ◴[] No.44472408{4}[source]
    I want the default file system everywhere be CoW and snapshot-enabled (a perfection would have snapshot on the file and directory level) so that tooling starts to assume it is available and begins to use it.
    11. tremon ◴[] No.44473636[source]
    It's not really initrd though; the kernel uses initramfs, which is more like tmpfs (emulating a filesystem in the VFS cache) than a ramdisk (a preallocated piece of memory that emulates a block device).

    The files are still loaded from a compressed cpio archive though, and because of the initrd legacy that file is still called initrd in most distributions.

    12. kzrdude ◴[] No.44474304{3}[source]
    Technological progress comes from us all being lifted to new levels and higher standards, I think. The Bcachefs/Btrfs niche is the standard we want/expect now and I think people are right to imagine it, develop it and make it happen.