Live data from Hacker News

Windows on Btrfs

lilysthings.org

91–100 of 286 posts

Re: Windows on Btrfs

#91
My laptop is a small Windows + Arch (f2fs) partitions + a big btrfs "cold storage" partition. Some notes:

- "The btrfs driver for Windows is incredibly solid" is true... but (on NVMe) its also extremely slow. Like dramatically slower than NTFS, with or without compression.

- You can share data, but writing with winbtrfs will screw up the permissions on linux unless you get the mount options exactly right.

- Booting windows and ntfs conversion: there be dragons. The MS store isnt the only thing that breaks...

Re: Windows on Btrfs

#92
post #12

Earlier quoted context omitted.

Why keep different filesystems outside of specific performance needs? I've experimented with weirder things, like Linux running on NTFS with the new kernel driver.

> Linux running on NTFS with the new kernel driver. As the root file system? Does that work?

Well enough if you know what you're doing :)

With posix perms, users and everything, there's no reason it shouldn't!

Re: Windows on Btrfs

#93
post #41
post #29

Earlier quoted context omitted.

I haven't had a chance to dig in to it yet. Most of the time, Docker uses `overlayfs` to emulate COW, but on btrfs it can just use the filesystem's native COW. In my mind it's about equally likely that it's Docker's fault as it is btrfs's fault; that perhaps Docker's btrfs storage driver is doing something dumb. https://docs.docker.com/storage/storagedriver/select-storage...

For VMs and containers isn't it pretty common to use a subvol where CoW is disabled for their disk images? Same thing for ZFS with datasets that disabled CoW for things like that.

> Same thing for ZFS with datasets that disabled CoW for things like that.

Does ZFS let you disable CoW?

Re: Windows on Btrfs

#94
post #23

I'm intending to write up some docs and announce it in the next few days, but since this thread is here, I might as well mention it now: On the topic of alternative btrfs implementations, I've been working on https://git.lukeshu.com/btrfs-progs-ng/ which is written entirely in Go. Its `btrfs-rec inspect mount --pv=/dev/whatever` is a read-only FUSE implementation of btrfs that is more fault-tolerant (of corrupt files…

> On the topic of alternative btrfs implementations, I've been working on https://git.lukeshu.com/btrfs-progs-ng/ which is written entirely in Go.

Is this actually a blessed "next-generation" implementation? If not, could you please rename it so it doesn't confuse people?

Re: Windows on Btrfs

#96

Earlier quoted context omitted.

Until the day it touches it and replaces your selection from the UEFI firmware. Or repartitions the recovery partition. Or decides to move the recovery partition from the beginning of the disk to the end of the disk. All stuff I have personally seen Windows Update do. I am sure your custom bootloader will not be overwritten. All types of hell can happen, borking the entire installation -- and your bootloader will sti…

Windows update moving partitions around automatically? Have you got a reference for that?

There won't be any reference, as touching other OS partitions never happened for real.

For the rest, there could be references, but it's just lingering legends now: yes, in the past, it could happen BUT only for the Windows partitions (recovery 2700, efi EF00, msr 0701 c: 0700) and only if your partition was too small for a specific update. Then windows would do some careful resizing, in the worst case creating another partition out of its C: to avoid touching the rest. So it would't break anything, just like how ntfsresize works on linux!

For the selection from the UEFI, it was only if you used the default bootx64.efi and tried to repair the boot (windows detected this is not normal and would replace it by something to chainload bootmgfw.efi with)

Anyway, since Windows 10 it doesn't happen, and I never had any problem at all with 11.

Just use the recommended partition size (or more, I regularly make my EFI 4Gb), name your bootloader something else than bootx64.efi and it will be fine.

The most windows might do is to reorder your UEFI boot entries (then go to settings and you can boot another system, same in recovery: just select your linux UKI or grub EFI)

Re: Windows on Btrfs

#97
post #93
post #41

Earlier quoted context omitted.

For VMs and containers isn't it pretty common to use a subvol where CoW is disabled for their disk images? Same thing for ZFS with datasets that disabled CoW for things like that.

> Same thing for ZFS with datasets that disabled CoW for things like that. Does ZFS let you disable CoW?

Huh. Looks like it doesn't! I knew that BTRFS did and saw that it was on the roadmap for bcachefs, and assumed it was something you could tweak in ZFS as well.

Re: Windows on Btrfs

#98

Related tangent: Something I don't fully understand (perhaps I just haven't found a project that facilitates it) is why there isn't a Windows extension (driver?) that allows for native mounting of ext4 partitions within Windows explorer. Surely, given the Linux native file system is open source, adding the ability to mount ext4 partitions natively should be something people can add to Windows? I have seen third party…

> I think exfat has recently gained support in all three platforms but it's not reliable for an internal hard drive (I think?).

It's not, and recovery tools are still lacking. Keep using NTFS for now.

Re: Windows on Btrfs

#99
This is insane and I love/hate it. Besides the MS Store stuff, which I try to avoid anyway as, in my experience, trying to launch them on Windows via SSH doesn't always work because of permissions, it's interesting as this opens up the ability to possibly dual boot windows from a subvolume without separate partitions/drives.

Re: Windows on Btrfs

#100
post #28

Earlier quoted context omitted.

File systems are drivers and user space software shouldn’t really see the difference.

There is no way to have btrfs caps insensitive. So some software (poorly coded) could have capitalization issues that would not appear in NTFS that would in btrfs. But other than that I believe you are right (barring utilities specifically designed to interact with FS attributes)

> There is no way to have btrfs caps insensitive.

There is no way to make NTFS case insensitive either, it being case insensitive in Windows is a Windows implementation detail.

Post reply on HN