38

(FUSE). Preferably without admin rights. An example would be sshfs, maybe via MSYS?

  • Out of curiosity: What did you end up using? Dokan? Linux in a VM? Or where you curious how one could do it? – panzi Jun 20 '14 at 1:57
  • @panzi back then I think I used colinux, but unfortunately it still doesn't support 64bit and haven't had the time or motivation to search for alternatives since... – Tobias Kienzler Jun 20 '14 at 4:30
  • 1
    No one has mentioned winfsp yet. github.com/billziss-gh/winfsp – Coburn Feb 18 '19 at 3:40
  • 1
    @Coburn Great, thanks, I'll have a look! Too bad this question got protected, I'd love to see this as answer... Needs just one more upvote on your only post here ;) – Tobias Kienzler Feb 18 '19 at 7:34
  • 2
    @Coburn and Tobias I added it as an answer - I only saw the comments when checking to make sure no one had already put it in an answer. – Peter Apr 24 '19 at 5:23
6

There is a FUSE compatibility layer for the Windows File System Proxy (winfsp).

This project seems to be live (as of 2019) - although it looks to be almost entirely a 1-developer show.

Code is hosted on github under GPLv3 - "If you find the constraints of the GPLv3 too onerous, a commercial license is also available."

Someone in my office has got winfsp running, but not using the FUSE compatibility layer.

  • For other developers interested in this, there's also winfspy, a python binding for winfsp and fusepy, python bindings for FUSE that supports winfsp. – Coburn Apr 24 '19 at 7:14
18

As far as I understand, Windows doesn't ship with anything that would let you define your own filesystem without adding some code to the kernel (i.e., a driver). So you would need admin rights.

In 2010 The FUSE FAQ mention a few potential alternatives, but they all looked like vaporware except for Dokan. Dokan has been abandoned but some forks live on: Dokanx, Dokany, and more as well as at least two .NET bindings. Dokany has an SSHFS component.

  • Dorkan link = parked domain – Joshua Oct 12 '15 at 19:50
  • @Joshua Thanks, I've updated my answer to point to some successor projects. – Gilles 'SO- stop being evil' Oct 12 '15 at 20:05
  • Any new ways to do this? CloudBerry? – wayofthefuture May 28 '16 at 18:03
8

While not ideal, a way you could achieve "FUSE for Windows" could be by running a small Linux installation in a VM, with just FUSE and Samba installed, where Samba then exposes the mounted FUSE folders as shares.

7

There is something called Dokan, but it does not work too well; it supports SSHFS.

2

Windows doesn't include support for userspace filesystems by default so you would need admin rights to install a Windows equivalent of FUSE like Dokan (such a driver needs to hook into the kernel after all).

1

I've seen links to this Windows library Callback File System that seems to be a commercial port of FUSE. I haven't tried it though. And it seems to be $2,500+ for commercial usage.

  • 3
    It's even more, i heared from others that they ask for a mid range 5 digit number. You have to send your business plan and then they come up with a price that leaves you with just enough profits to buy a bowl of rice for your hungry programmers. Thank you Oracle for teaching all others how this is done. – Lothar Sep 26 '18 at 3:00
  • They sell all kinds of libraries that are useful for RootKits and DRM implementers. – beppe9000 Jul 20 '19 at 19:27
1

When MS introduced GVFS they created a new filter driver that's more or less FUSE-alike

GVFS relies on a new Windows filter driver (the moral equivalent of the FUSE driver in Linux) and we’ve worked with the Windows team to make an early drop of that available so you can try GVFS.

Scaling Git (and some back story)

See also

  • Thanks, great to know, I'll have a look at it – Tobias Kienzler May 12 '19 at 8:24
0

Windows Projected File System (ProjFS) allows to create user-mode apps to back virtual file systems. It was introduced in Windows 10 1809. This feature needs to be enabled in Windows Features dialog. This technology is used by GVFS.

Not the answer you're looking for? Browse other questions tagged or ask your own question.