52

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

phuclv
  • 26,555
  • 15
  • 113
  • 235
Tobias Kienzler
  • 4,421
  • 7
  • 44
  • 76
  • 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 01: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 04:30
  • 1
    No one has mentioned winfsp yet. github.com/billziss-gh/winfsp – Cobertos Feb 18 '19 at 03: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 07: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 05:23
  • @Peter great, thanks! I didn't want to to self-answer – Tobias Kienzler Apr 24 '19 at 06:47

8 Answers8

22

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.

Gilles 'SO- stop being evil'
  • 69,786
  • 21
  • 137
  • 178
20

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.

Peter
  • 841
  • 1
  • 8
  • 13
  • 2
    For other developers interested in this, there's also [`winfspy`](https://github.com/Scille/winfspy/tree/master/src/winfspy), a python binding for winfsp and [`fusepy`](https://github.com/fusepy/fusepy), python bindings for FUSE that supports winfsp. – Cobertos Apr 24 '19 at 07:14
  • @Coburn Do you mean `fusepy` works on Windows? I was able to `pip install fusepy`, but `import fuse` gives `OSError: Unable to find libfuse`. – Basj Dec 06 '20 at 21:42
  • @Basj You have to install WinFsp on your system as well. https://github.com/fusepy/fusepy/pull/54 – Cobertos Dec 15 '20 at 05:02
  • 2
    Since this answer we engaged the author of winfsp to help us build a Windows file system under the commercial license. It worked well for us (the license makes no difference to the technology, just allows us to keep our API and code commercial). – Peter Mar 11 '21 at 22:57
  • 1
    https://github.com/winfsp/cgofuse for Go – Christian Stewart Aug 27 '22 at 07:10
11

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.

Allanrbo
  • 308
  • 3
  • 9
8

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.

czerny
  • 586
  • 1
  • 6
  • 15
  • 3
    I think this is now the most correct answer. There is also the [Cloud Files API](https://docs.microsoft.com/en-us/windows/win32/cfapi/cloud-files-api-portal) to add indicators if a files is immediately available. – Nathan Apr 16 '20 at 23:17
8

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

Liryna
  • 41
  • 5
mbq
  • 757
  • 2
  • 7
  • 15
4

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

phuclv
  • 26,555
  • 15
  • 113
  • 235
1

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).

JanC
  • 1,313
  • 7
  • 7
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.

Matthew Lock
  • 4,671
  • 2
  • 35
  • 44
  • 7
    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 03:00
  • They sell all kinds of libraries that are useful for RootKits and DRM implementers. – beppe9000 Jul 20 '19 at 19:27
  • @Lothar that was an incorrect statement back then and it is so now. – Eugene Mayevski 'Callback Sep 19 '20 at 11:10
  • Callback File System never was a port of FUSE. – Eugene Mayevski 'Callback Sep 19 '20 at 11:11
  • 1
    Lets clarify that $2500 only gives you the license to distribute 10 runtime copies (usefull for test and build server). To use in in an application you will need a CDCF-A-OES license and it is true that they do ask for your business plan. – Lothar Sep 21 '20 at 19:26