Tahoe-LAFS works with pyFilesystem. It is not officially maintained by Tahoe-LAFS devs, but it works.
Here is the email that this is based off of: http://tahoe-lafs.org/pipermail/tahoe-dev/2011-August/006663.html
- Get and install Dokan lib at http://dokan-dev.net/en/download/#dokan
- Get pyfilesystem at http://code.google.com/p/pyfilesystem/downloads/list or do a pip install fs and skip to step 4.
- Install pyfilesystem:
cmd> python setup.py build cmd> python setup.py install
- Verify that pyfilesystem is installed:
cmd> python python>>> import fs python>>> fs.__version__
- Mount test/public grid to F:\ letter
cmd> python python>>> from fs.contrib.tahoelafs import TahoeLAFS python>>> from fs.expose import dokan python>>> fs = TahoeLAFS('URI:DIR2:ddg5n76x6stjb35psrcn7i3ytu:etbtnftlaeylm4gmi7mxzq6pg2ntgra7dyjeronyoo4pvkgtttqa') python>>> mp = dokan.mount(fs, "f", foreground=True)
This works fine. I have a slightly different setup since this also works with FUSE.
On Windows, follow the above steps up to and including step 4.
On Linux, do a pip install fs and make sure fuse is installed.
Then you can edit this script:
#!/usr/bin/env python URI='URI:DIR2:ctmtx2awdo4xt77x5xxaz6nyxm:n5t546ddvd6xlv4v6se6sjympbdbvo7orwizuzl42urm73sxazqa' mountPoint='f' #Windows with dokan # mountPoint='/mnt/tahoe' #Linux with FUSE import time from fs.contrib.tahoelafs import TahoeLAFS try: from fs.expose import dokan fs = TahoeLAFS(URI) mp = dokan.mount(fs, mountPoint) except: from fs.expose import fuse fs = TahoeLAFS(URI) mp = fuse.mount(fs, mountPoint)
Replace URI with your URI on your grid. The above URI is the test writable URI in the TestGrid. Replace the mountPoint variable with the Windows drive letter or the UNIX filesystem path for the fuse mount point on all other systems.
Run the script and it will mount the URI at the specified location. If you want to unmount it, find out where dokanctl.exe is and run it from the command line dokanctl.exe /u f:. Sometimes I have to force the unmount on Windows. Use fusermount -u /mnt/tahoe on the FUSE systems.