Skip to content

Windows

Ben RUBSON edited this page May 3, 2018 · 26 revisions

Existing solutions

Encfs4win (GitHub)

EncFSMP (GitHub)

Mainline EncFS with Cygwin (detailed below)

Comparison

Solution FUSE replacement GUI
Encfs4win Dokany (GitHub) Yes
EncFSMP Pismo File Mount Yes
Mainline EncFS with Cygwin WinFsp (GitHub) Yes, using SiriKali (GitHub)

Mainline EncFS with Cygwin

Installation

An installer may be on the way. For now, follow the steps below.

Installation from sources

EncFS can be compiled and used on Cygwin.

Here are the required steps.

  1. Install Cygwin (64 bits version preferred because of this) with the following packages :
  • cmake
  • make
  • gcc-g++
  • gettext-devel
  • openssl-devel
  • procps-ng
  • perl-test-harness
  1. Install WinFsp, latest stable is preferred.

  2. Using Cygwin terminal, install WinFsp FUSE into Cygwin :

cd /cygdrive/c/Program*/WinFsp/opt/cygfuse

sh install.sh

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

  1. Get last EncFS version (at least 1.9.5).

  2. Using Cygwin terminal, build and install as usual.

Usage

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

Tuning

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 :

For performance matters, you may consider :

For performance and ACLs matters, you may also consider :

Warnings

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.

Clone this wiki locally