-
Notifications
You must be signed in to change notification settings - Fork 277
Windows
Mainline EncFS with Cygwin (detailed below)
Solution | FUSE replacement | GUI |
---|---|---|
Encfs4win | Dokany (GitHub) | Yes |
EncFSMP | Pismo File Mount | Yes |
Mainline EncFS with Cygwin | WinFsp (GitHub) | Yes, using SiriKali (GitHub) |
An installer may be on the way. For now, follow the steps below.
EncFS can be compiled and used on Cygwin.
Here are the required steps.
- cmake
- make
- gcc-g++
- gettext-devel
- openssl-devel
- procps-ng
- perl-test-harness
-
Install WinFsp, latest stable is preferred.
-
Using Cygwin terminal, install WinFsp FUSE into Cygwin :
cd /cygdrive/c/Program*/WinFsp/opt/cygfuse
sh install.sh
- In
/usr/include/fuse/winfsp_fuse.h
:
If needed, modify : return cygwin_create_path(
To : return (char *)cygwin_create_path(
(see https://github.com/billziss-gh/winfsp/pull/154)
-
Get last EncFS version (at least 1.9.5).
-
Using Cygwin terminal, build and install as usual.
Use as usual, from a Cygwin or Windows terminal.
You should provide EncFS with a drive-like mountpoint, such as X:
(or /cygdrive/x
).
Example : encfs /cygdrive/c/enc /cygdrive/x
Example : encfs C:\enc X:
You may also consider SiriKali GUI (GitHub).
Symlinks are not fully supported, their integration tests may then partially fail.
Symlinks behavior depends on some options, so if you care about them, you may consider :
- value of
winsymlinks
inCYGWIN
environment variable ; - usage (or not) of the limited
-o rellinks
option (see more in billziss-gh/winfsp#153).
For performance matters, you may consider :
- the
exec
/notexec
Cygwin mount option.
For performance and ACLs matters, you may also consider :
- the
noacl
Cygwin mount option.
Regarding IVs, which are based on inode numbers : depending on configuration, they may lead to some problems, as file IDs (used by Cygwin to compute inode numbers) may not be consistent on Windows (see 1 and 2). If not sure, they can be disabled during EncFS configuration.