HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
maharmstone
btrfs
C2016–2026
maharmstone / btrfs

btrfs

WinBtrfs - an open-source btrfs driver for Windows

29Distinct people
30Mentions
0Explicit recommenders
7.9KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

WinBtrfs - an open-source btrfs driver for Windows

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year30 dated mentions

Observed mentions: 2016-02-22 17:14:24 UTC to 2026-07-08 05:34:01 UTC.

02462016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 5 mentions; 3 submissions, 2 comments20162017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 7 mentions; 1 submissions, 6 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC532
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC211
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC303
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC220
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC202
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC202
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC110
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC101
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC716
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC303
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC202

From the project README

An excerpt from the repository, fetched Nov 13, 2026.

Read the project’s introduction
WinBtrfs v1.10 WinBtrfs is a Windows driver for the next-generation Linux filesystem Btrfs. A reimplementation from scratch, it contains no code from the Linux kernel, and should work on any version from Windows XP onwards. It is also included as part of the free operating system ReactOS. If your Btrfs filesystem is on a MD software RAID device created by Linux, you will also need WinMD to get this to appear under Windows. See also Quibble, an experimental bootloader allowing Windows to boot from Btrfs, and Ntfs2btrfs, a tool which allows in-place conversion of NTFS filesystems. First, a disclaimer: You use this software at your own risk. I take no responsibility for any damage it may do to your filesystem. It ought to be suitable for day-to-day use, but make sure you take backups anyway. Everything here is released under the GNU Lesser General Public Licence (LGPL); see the file LICENCE for more info. You are encouraged to play about with the source code as you will, and I'd appreciate a note (mark@harmstone.com) if you come up with anything nifty. See at the end of this document for copyright details of third-party code that's included here. Features Reading and writing of Btrfs filesystems Basic RAID: RAID0, RAID1, and RAID10 Advanced RAID: RAID5 and RAID6 Caching Discovery of Btrfs partitions, even if Windows would normally ignore them Getting and setting of Access Control Lists (ACLs), using the xattr security.NTACL Alternate Data Streams (e.g. :Zone.Identifier is stored as the xattr user.Zone.Identifier) Mappings from Linux users to Windows ones (see below) Symlinks and other reparse points Shell extension to identify and create subvolumes, including snapshots Hard links Sparse files Free-space cache Preallocation Asynchronous reading and writing Partition-less Btrfs volumes Per-volume registry mount options (see below) zlib compression LZO compression LXSS ("Ubuntu on Windows") support Balancing (including resuming balances started on Linux) Device addition and removal Creation of new filesystems with mkbtrfs.exe and ubtrfs.dll Scrubbing TRIM/DISCARD Reflink copy Subvol send and receive Degraded mounts Free space tree (compat_ro flag free_space_cache) Shrinking and expanding Passthrough of permissions etc. for LXSS Zstd compression Windows 10 case-sensitive directory flag Oplocks Metadata UUID incompat flag (Linux 5.0) Three- and four-disk RAID1 (Linux 5.5) New checksum types (xxhash, sha256, blake2) (Linux 5.5) Block group tree (Linux 6.1) Todo Full fs-verity support (Linux 5.15) Zoned support (Linux 5.11) (HM-SMR not supported on Windows?) Defragmentation Support for Btrfs quotas Full transaction log support Support for Windows transactions (TxF) Installation To install the driver, download and extract the latest release, right-click btrfs.inf, and choose Install. The driver is signed, so should work out of the box on modern versions of Windows. If you using Windows 10 or 11 and have Secure Boot enabled, you may have to make a Registry change in order for the driver to be loaded - see below. It's easier though just to turn off Secure Boot in your BIOS, unless you have a particular need for it. Bear in mind that Windows 11 soft-requires Secure Boot to be installed, but will work fine afterwords with it turned off. WinBtrfs is also available on the following package managers: Chocolatey choco install winbtrfs Scoop scoop bucket add nonportable scoop install winbtrfs-np -g Uninstalling If you want to uninstall, from an elevated command prompt first run: pnputil /enum-drivers There should be two entries for btrfs.inf and btrfs-vol.inf, with files of the form oemNN.inf. Make a note of their names. Then for each run... pnputil /delete-driver oemNN.inf /uninstall /force ...and reboot. If you need to uninstall via the registry, open regedit and set the value of HKLM\SYSTEM\CurrentControlSet\services\btrfs\Start to 4, to disable the service. After you reboot, you can then delete the btrfs key and remove C:\Windows\System32\drivers\btrfs.sys. Compilation To compile with Visual C++ 2019, open the directory and let CMake do its thing. If you have the Windows DDK installed correctly, it should just work. To compile with GCC on Linux, you will need a cross-compiler set up, for either i686-w64-mingw32 or x86_64-w64-mingw32. Create a build directory, then use either mingw-x86.cmake or mingw-amd64.cmake as CMake toolchain files to generate your Makefile. Mappings The user mappings are stored in the registry key HKLM\SYSTEM\CurrentControlSet\services\btrfs\Mappings. Create a DWORD with the name of your Windows SID (e.g. S-1-5-21-1379886684-2432464051-424789967-1001), and the value of your Linux uid (e.g. 1000). It will take effect next time the driver is loaded. You can find your current SID by running whoami /user. Similarly, the group mappings are stored in under GroupMappings. You can find your group SIDs by running whoami /groups. The default entry maps Windows' Users group to gid 100, which is usually "users" on Linux. You can also specify user SIDs here to force files created by a user to belong to a certain group. The setgid flag also works as on Linux. Note that processes running under User Access Control tokens create files as the BUILTIN\Administrators SID (S-1-5-32-544), rather as a user account. LXSS ("Ubuntu on Windows" / "Windows Subsystem for Linux") The driver will passthrough Linux metadata to recent versions of LXSS, but you will have to let Windows know that you wish to do this. From a Bash prompt on Windows, edit /etc/wsl.conf to look like the following: [automount] enabled = true options = "metadata" mountFsTab = false It will then take effect next time you reboot. Yes, you should be able to chroot into an actual Linux installation, if you wish. Commands The DLL file shellbtrfs.dll provides the GUI interface, but it can also be used with rundll32.exe to carry out some tasks from the command line, which may be useful if you wish to schedule something to run periodi
Read the full README on GitHub

What Hacker News says

30 sources
btrfs has 1, 2 and 3, and if you count projects like WinBtrfs [0], then possibly 0 as well. Been using it happily for years on my workstations, and about a year on my home server mainly because of the licensing issue and a kernel update possibly resulting in the ZFS pool not being imported. ZFS is still great, but the kernel issue is still problematic on anything other than Ubuntu, where Canonical ships kernels with ZFS built right in. [0]: https://github.com/maharmstone/btrfs
In Linux 6.9 Released
That's not quite right. Linux btrfs supports raid5 in general, but has known edge cases which make it not safe to use. Basically it's "available, but experimental, for developers only". Winbtrfs only says the raid5 mode is one of the features, but doesn't really address how well it works. The questions in a related issue (https://github.com/maharmstone/btrfs/issues/293) have been closed without real answers. I wouldn't risk raid 5/6 on it without getting good answers about the status / testing from the developers first.
In WinBtrfs – an open-source btrfs driver for Windows

Showing the 15 most recent of 30 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.