Network-oriented Filesystems using FUSE. This refers to distributed file systems, access to generic online storage, and access to provider-specific online storage.
If you find outdated information, feel free to correct it.
PLEASE READ THIS BEFORE ADDING A NEW ENTRY
- new entries go at the *end* of each section
- keep the descriptions short and sweet, a couple of lines is perfectly adequate. Details can go on the homepage or a separate article in this Wiki
- no new tags please, preferably only Author, Homepage, Description
The Linux kernel has an option to compile the kernel UML. UML has a set of tools available at http://user-mode-linux.sourceforge.net/uml_utilities_20060622.tar.bz2 .
When compiling these tools you get an error: cc -g -Wall -D_FILE_OFFSET_BITS=64 -I/usr/local/include -c -o uml_mount.o uml_mount.c uml_mount.c:1:32: error: fuse/fuse_lowlevel.h: No such file or directory ...
To compile the Linux kernel UML you need fuse-dev .
Distributed File Systems
Clustered Ordinary Raid Network File System
Author: Ian C. Blenke / icblenke at nks net
CORNFS is an attempt at creating a distributed filesystem that mirrors N copies of files across a group of M number of servers. Everything in CORNFS is stored as a file. At any time, it is possible to reconstruct the entire filesystem via a simple overlay rsync from the remote filesystems.
Author: J. Cameijo Cerdeira (cerdeira at co sapo pt)
PUFS - peer union fs - is a poor man's naïve distributed filesystem. Its philosophy is in line with a peer network paradigm in the form of a filesystem. The filesystem contents is the union of the directories exported by each peer who joins the union.
Author: Tx0 <firstname.lastname@example.org>
Magma is a network filesystem based on a Distributed Hash Table. It's under developement since August 2006 and so far is able to behave like a single homed fileserver. Future developement will add multinode network structure, redundacy, ACL and more. Uses libfuse in its mount.magma client.
Simple TCP FUSE File System
Author: Tomi Ollila
Stfufs is a network filesystem that uses ssh to create connection between stfufs-client and stfufs-server. After connection is made and operation parameters exchanged, a singple TCP connection is used to tranfer data (in clear). So this aims to trade security with speed/processing requirements.
Author: Vishal Kher <vkher at cs dot umn dot edu>
CoreFS is a very basic network file system built on top of FUSE. The goal of this file system is to give file system developers some form of basic distributed file system, which can be later modified as per the implementor's requirement.
Author: Gluster Team
GlusterFS is a clustered file-system capable of scaling to several peta-bytes. It aggregates various storage bricks over Infiniband RDMA or TCP/IP interconnect into one large parallel network file system. Storage bricks can be made of any commodity hardware such as x86-64 server with SATA-II RAID and Infiniband HBA).
Author: Douglas Thain
A distributed filesystem for grid computing and cluster computing. Provides strong authentication using Globus or Kerberos credentials. Multiple file servers can be bound together to create large filesystems. Supports advanced features such as space reservation and active storage.
Author: Digital Bazaar, Inc.
Starfish is a highly-available, fully decentralized, clustered storage file system. It provides a distributed POSIX-compliant storage device that can be mounted like any other drive under Linux or Mac OS X. Starfish strives to be a scalable replacement for centralized network file systems (Samba, NFS, Intermezzo, etc.). It allows you to build a multi-petabyte scalable file system that performs automatic, transparent data backup.
A read-only peer-2-peer file system that allows sharing of files from different machines. Features include fault tolerance, load balancing, and providing a unified file view.
Author: Jakub Kruszona-Zawadzki / contact at moosefs dot com
MooseFS is a networking, distributed, fault tolerant file system designed for petabyte class clusters. It spreads data over several servers visible to a user as one resource. It is a proven foundation of highly reliable storage systems.
SMB for FUSE
Author: Vincent Wagelaar / vincent at ricardis tudelft nl
With SMB for Fuse you can seamlessly browse your network neighbourhood as were it on your own filesystem.
Author: Lennart Poettering / mzshfrqni at 0pointer de
fusedav is a Linux userspace file system driver for mounting WebDAV shares. It makes use of FUSE as userspace file system API and neon as WebDAV API.
Author: Miklos Szeredi / miklos at szeredi hu
This is a filesystem client based on the SSH File Transfer Protocol. Since most SSH servers already support this protocol it is very easy to set up: i.e. on the server side there's nothing to do. On the client side mounting the filesystem is as easy as logging into the server with ssh.
Author: Mikhail Kshevetskiy / kl at laska dorms spbu ru
SMBNetFS is a Linux/FreeBSD filesystem that allow you to use samba/microsoft network in the same manner as the network neighborhood in Microsoft Windows. Main features: periodic rescan of workgroup/computer entries, filenames/shares with national character supported, you can specify user/password on per share basis. Currently it works on Linux-2.4, Linux-2.6 and FreeBSD-6.x/7.0.
Author: Takuya Ishibashi / takuya at soum co jp
GfarmFS-FUSE enables you to mount a Gfarm filesystem in userspace. Grid Datafarm is a Petascale data-intensive computing project initiated in Japan. The challenge involves construction of a Peta- to Exascale parallel filesystem exploiting local storages of PCs spread over the world-wide Grid.
httpfs mounts any file, that is accessible by http, read only. It's clearly less than webdav. But it don't need a cooperating server. Only HTTP/1.1 is necessary.
wdfs - webdav filesystem
Author: jens m. noedler (noedler at web dot de)
wdfs is a webdav filesystem with a lot of nice features. In combination with Subversion and Apache it can be used as a versioning filesystem for Subversion repositories.
Author: Robson Braga Araujo (robsonbraga at gmail dot com)
A filesystem for accessing FTP sites. It's based on libcurl and automatically reconnects when the server times out. As of April 2007, it is continously updated and is being added to major Linux distributions such as Fedora and openSUSE (with 10.3)
FSFS - the Fast Secure File System
Author: Nicola Cocchiaro
The Fast Secure File System exports files and directories securely over the network, and lets users store and retrieve encrypted data. It moves most cryptography to clients, achieving better scalability.
NOOFS - Network Object Oriented File System
Author: NOOFS development team (contact at noofs dot org)
NOOFS (Network Object Oriented File System) is a filesystem which is storing its data in an SQL relational database. It supports virtual directories, extended attributes, dynamic ACLs, advanced search functions, advanced security managament, native data integrity management. The project is developed within the framework of an end of studies project in EPITECH whose source code is distributed under the terms of the GNU General Public License.
Grifi: GridFTP File System
Author: Leandro Franco (leo dot franco at gmail dot com)
grifi is a virtual file system (developed with FUSE) that allows a user to mount a remote directory using the GridFTP protocol. It is based on the UberFTP client and on FTPFS from the LUFS project.
Author: Rohan ( email@example.com )
Mount your WordPress (and maybe other MetaWeblog compatible) blog(s). Supports reading and writing posts.
Author: Antonio Messina (antonio.messina at ictp dot it)
A filesystem interface to the LCG-2 GRID storage.
Author: Nedko Arnaudov
FUSE filesystem for wiki, uses wiki xml-rpc interface v2.
Author: Christoph Lohmann / 20h at r-36 dot net
9pfuse is a file system that allows you to mount 9P shares into your namespace. See "v9fs" or "Plan 9 from Bell Labs" for more details. There is another 9pfuse below.
Author: Russ Cox / firstname.lastname@example.org
9pfuse is a FUSE <-> 9P translator. It is part of Plan 9 from User Space There is another 9pfuse above.
Author: Geoff Johnstone
usmb lets you mount SMB/CIFS shares, as per "Map Network Drive" in Windows' Explorer. Unlike the other SMB FUSE filesystems, which emulate Network Neighbourhood, usmb lets you mount arbitrary SMB shares, including hidden ones that you can't browse. 2009-04-11 - Samba 3.3 support, etc.
Author: Alex Kritikos
FUSE module that connects to a running Tracker document indexing deamon and populates a directory with symlinks corresponding to a Tracker query on document (full-text) content and meta-data.
Author: Christian W. Zuckschwerdt
A FUSE based filesystem using ObexFTP to access OBEX compatible devices, through IR, Bluetooth, USB, and any transport supported by OpenOBEX.
Author: Alex deVries <email@example.com>
afpfs-ng is an implementation to mount network filesystems with the Apple Filing Protocol (AFP) over TCP. This is used by Mac OS 7, 8, 9 and Mac OS X (Darwin) to share files over a network.
Author: Diego Zamboni <firstname.lastname@example.org>
MetaweblogFS allows you to mount any weblog that uses the Metaweblog API (e.g. wordpress), edit and create posts as files in the mounted filesystem.
Author: Tsukasa Hamano
memcachefs is fuse based filesystem which mount the memcache server. It allows to view cache data of memcached as like regular files.
Author: Danny Milosavljevic
imapfs is a fuse-python based filesystem which mounts a remote mailbox via IMAP4.
coLinux runs almost any version of Linux on WinXP by allowing the kernel to access the hardware (partial support) through a custom console. You don't have direct access to the screen or other hardware.
You can use the coLinux console (tiny screen) or use Cygwin X11. The keyboard and mouse are accessed through coLinux devices.
The disks are through cofuse /dev/cobdX which allows mounting WinXP drives including cdrom and DVD.
coLinux's cofuse uses fuse.
For a 3rd-party value-added version of coLinux see andLinux at http://wiki.gp2x.org/wiki/AndLinux or http://www.andlinux.org/ - it integrates coLinux to the WinXP toolbar. Launch Linux programs direct from WinXP and better cut-and-paste support between WinXP programs and Linux programs.
coLinux also allows other FUSE filesystems, mounted inside it, to be exported to Windows using the network connection and Samba.
Author: Xuan Luo
imapfs is a filesystem that uses an IMAP account as storage space. (This is completely different from the other imapfs above.)
Author: Alexey Biznya
LftpFS is FUSE filesystem with caching for smart mirror of sites. It's based on LFTP client, which provides the best features as file transfer program and supports FTP, HTTP, FISH, SFTP, HTTPS, FTPS protocols and over proxies (curlftpfs not support). LftpFS is fork from unmaintained FuseFTP. Useful for mirroring of Linux repositories.
Author: David McNab / david at conscious dot co dot nz
Allows a directory on a remote web host to be mounted into the local filesystem. Local FUSE filesystem program transparently talks to a CGI XML-RPC script which you install on the server. Can be useful for getting direct access to your files on cheap web hosts, where comforts like SSH, scp, nfs, vnc etc are not available. If your hosting account allows running CGI scripts, and has a reasonably recent Python installation, then XmlRpcFs might be a good solution for you. Latest version features caching of inodes, directories and symlinks, which eliminates unnecessary server hits and achieves a huge speed boost. Please let me know if you try this, find it useful, or come up with improvements.
Author: Derek Anderson / sales at enomaly com
ElasticDrive allows you to mount a remote storage resource such as Amazon's Simple Storage Service (s3), Nirvanix and AOL's Xdrive as a local storage device. The benefits of ElasticDrive is that you can have an infinitely large block device that can be mounted and used as a fast and secure remote backup storage resource. The block device can also made into a RAID as well as used as part of a LVM volume (snapshotting) or even utilized via ISCSI.
Author: Augusto Ferrarini / augusto at teradesk dot com
TeradeskFS implements Teradesk Java API for remote file storage using Fuse. Users can mount their remote virtual drives to execute operations as a local disk. TeradeskFS also provides access to the Teradesk Relational Filesystem (TRF).
The Linux Terminal Server Project uses ltspfs to mount devices of the terminal client on the terminal server, making them available to the applications running on the terminal server. ltspfs is a remote filesystem consisting of two parts: 1) A network server daemon that runs on the LTSP terminal. 2) A FUSE module that runs in user-space on the server, that connects with the daemon on the client.
Author: Nikolaus Rath <Nikolaus@rath.org>
S3QL is a file system that stores all its data online. It supports Amazon S3 as well as arbitrary SFTP servers and effectively provides you with a hard disk of infinite capacity that can be accessed from any computer with internet access.
S3QL is providing a standard, full featured UNIX file system that is conceptually indistinguishable from any local file system. Furthermore, S3QL has additional features like compression, encryption, data de-duplication, snapshotting and dynamic file system size. This makes S3QL especially suitable for online backup and archival.
S3QL is designed to favor simplicity and elegance over performance and feature-creep. Care has been taken to make the source code as readable and serviceable as possible. Solid error detection and error handling have been included from the very first line, and S3QL comes with extensive automated test cases for all its components.
Author: Aleksey Tulinov / Jean-Jacques Sarton
Remotefs is a fast network file system designed for use with home NAS. Simple to use, few dependencies, reasonable security, completely in user space.
Description: CC Network Filesystem (ccgfs). A transport-agnostic filesystem.
Remote Filesystem <-> ccgfs-storage <-> some sort of connection <-> ccgfs-mount <-> FUSE <-> Local filesystem
Author: Frank W. Bergmann / nagiosfs2011 at tuxad com
MonitoringFS (formerly known as NagiosFS) is a remote monitoring filesystem to get data of remote Linux hosts (other OS support will follow). Requests are done with UDP or HTTP and the remote server is extremely fast and lightweight. A typical "cat" of one of the files in MonitoringFS needs 1 to 12 milliseconds. Example: To get the current load per one minute average of host123 in your network you just have to do a
Author: Jonny Tyers
pCacheFS provides a simple caching layer for other filesystems, which can make slow, remote filesystems seem very fast to access. The cache does not disappear when you start/stop pCacheFS or reboot - it is persistent.
It is designed for caching large amounts of data on remote filesystems that don't change very much, such as movie/music libraries.
Any filesystem can be cached, however, and the cache itself can be stored on any other filesystem, enabling a variety of more novel uses.
Author: Richard Jones / richard at jones name
GmailFS provides a mountable Linux filesystem which uses your Gmail account as its storage medium. GmailFS is a Python application and uses the FUSE userland filesystem infrastructure to help provide the filesystem, and libgmail to communicate with Gmail.
HTTP-FUSE-KNOPPIX-4.0 is only 5MB CD image and enables us to use same contents of 3.8GB DVD KNOPPIX 4.0. We don't need to download 3.8GB iso image at one time and burn DVD.
Author: Mathieu Blondel
WikipediaFS is a mountable Linux virtual file system that enables you to deal with Wikipedia articles as though they were real files on your hard drive.
Author: Manish Rai Jain
Flickr virtual filesystem which allows easy uploading/downloading/searching of photos through standard linux commands.
Author: Maurice Codik / email@example.com
OpenomyFS uses the Ruby FUSE bindings to create a filesystem that lets you access data from your Openomy account. OpenomyFS lets you download/upload files from your account and manage your tags.
Author: Came Zo <firstname.lastname@example.org>
GSpaceFS is another GMail Filesystem, and might be more compatible with GSPACE as GMail File Space.
Author: Dan Muresan
BurryFS (formerly DuggFS) uses the Digg API to organize Digg.com content as a file system.
Author: Domenico Rotiroti
boxfs lets you access files stored on your box.net account.
PersistentFS provides unlimited online storage backed by Amazon Simple Storage Service (Amazon S3). All data written to the file system is uploaded to Amazon S3 for reliable and cost effective off-site storage, while remaining instantly accessible. PersistentFS is POSIX-compliant and offers a large local disk cache for maximum speed and efficiency.
Author: Ryan Wynn
goofs is a userspace filesystem which aims to expose Google services such as picasa images, contacts, blogs, documents, spreadsheets, presentations, calendars, etc. It is written using the python binding for fuse together with the python gdata api.
Author: Archie L. Cobbs
s3backer is a filesystem that contains a single file backed by the Amazon Simple Storage Service (Amazon S3). As a filesystem, it is quite small and simple: it provides a single normal file having a fixed size. The file is divided up into blocks, and the content of each block is stored in a unique Amazon S3 object. In other words, what s3backer provides is really more like an S3-backed virtual hard disk device, rather than a filesystem. In typical usage, a `normal' filesystem is mounted on top of the file exported by the s3backer filesystem using a loopback mount (or disk image mount on Mac OS X).
Author: Randy Rizun
SubCloud presents your Amazon S3 buckets as local file systems. It is the fastest, easiest way to integrate your applications and IT infrastructure with Amazon S3.
Author: Johannes Müller / johannes.mueller1 at mail.inf.tu-dresden.de
CloudFusion lets you access your Dropbox or Sugarsync files like any file on your desktop. It is implemented in Python, providing a convenient PyFuseBox interface, and ships with a testsuite.
Old, Unmaintained Projects
Author: Marcus Thiesen (marcus at thiesen dot org)
As of April 2007, the latest update has been released in December 2005, so it can be considered as unmaintained. FuseFTP is a FTP filesystem written in Perl.
Status: Halted Development
Author: Michael Grigoriev (Net Integration Technologies) / mag at luminal org
FunFS was meant to be an advanced network file system with a simple goal: to be better than NFS. Unfortunately the developer no longer had time to devote to the project.
Author: Mark Morgan and others (uvacse at virginia dot edu)
GeniiFUSE is a file system driver that allows users to access an Open Grid Forum (OGF) based grid file system through a traditional file system interface. By mounting the grid namespace using GeniiFUSE, users can easily manipulate remote grid resources without having to use specialized grid tools.