Filesystem in Userspace
From Wikipedia, the free encyclopedia
Filesystem in Userspace (FUSE) is a Free (GPL and LGPL'ed) Unix kernel module that allows non-privileged users to create their own file systems without the need to write any kernel code. This is achieved by running the file system code in user space, while the FUSE module only provides a "bridge" to the actual kernel interfaces. FUSE was officially merged into the mainstream Linux kernel tree in kernel version 2.6.14.
FUSE is not limited to, but particularly useful for writing virtual file systems. As opposed to traditional filesystems which essentially save data to and retrieve data from disk, virtual filesystems do not actually store data themselves. They act as a view or translation of an existing filesystem or storage device. In principle, any resource available to FUSE implementation can be exported as a file system. See Examples for some of the possible applications.
The FUSE system was originally part of the A Virtual Filesystem (AVFS) project, but has since split off into its own project on SourceForge.
FUSE is also available on FreeBSD and OpenSolaris.
[edit] Examples
- SSHFS: Provides access to a remote filesystem through SSH
- GmailFS: Filesystem which stores data as mail in Gmail
- EncFS: Encrypted virtual filesystem
- Captive NTFS and ntfsmount, both allowing access to NTFS filesystems
- CurlFtpFS: Provides access to a remote filesystem through libcurl
[edit] See also
- v9fs also allows implementing user space file systems using the 9P protocol.
- Davfs2 WebDAV filesystem Linux kernel module
[edit] External links
- FUSE Home Page
- List of user-space file systems using FUSE
- Source Forge FUSE web site
- Fuse Project on OpenSolaris
- ZFS on Linux/FUSE due August 21st, 2006.
- Tips on sshfs