Go to file
Miklos Szeredi b2cf9561fe fix
2004-09-16 08:42:40 +00:00
doc fix 2004-09-02 18:13:57 +00:00
example add fuse_invalidate() to library API 2004-07-29 09:27:49 +00:00
include fix 2004-09-16 08:42:40 +00:00
kernel *** empty log message *** 2004-09-13 14:56:57 +00:00
lib fix 2004-09-16 08:42:40 +00:00
lufis patch by Luca Ferroni 2004-07-14 16:16:59 +00:00
patch fix 2004-04-05 11:24:24 +00:00
perl clean up mount option passing 2004-07-23 17:35:27 +00:00
python Changed the '#include <fuse.h>' to '#include "fuse.h"' to allow symlinking 2003-12-22 23:26:52 +00:00
util security fixes + other enhancements 2004-07-24 19:56:16 +00:00
.cvsignore optimize reading 2004-07-20 14:22:26 +00:00
AUTHORS change email address 2004-07-07 19:19:53 +00:00
BUGS permission checking implemented 2001-12-20 15:38:05 +00:00
ChangeLog fix 2004-09-16 08:42:40 +00:00
configure.in *** empty log message *** 2004-09-13 14:56:57 +00:00
COPYING build with automake 2001-11-07 12:09:43 +00:00
COPYING.LIB version change + cleanups 2002-10-25 12:41:16 +00:00
Filesystems fix 2004-09-02 18:13:57 +00:00
fuse.spec specfile fix 2003-06-02 06:12:27 +00:00
makeconf.sh build shared library 2004-06-03 13:21:08 +00:00
Makefile.am *** empty log message *** 2004-01-26 16:05:34 +00:00
NEWS *** empty log message *** 2004-01-26 14:43:12 +00:00
README fix 2004-07-26 19:38:45 +00:00
README-2.4 integrated 2.6 kernel support 2004-01-07 12:16:45 +00:00
README-2.6 integrated 2.6 kernel support 2004-01-07 12:16:45 +00:00
README.NFS fix 2004-01-26 11:28:44 +00:00

General Information
===================

FUSE (Filesystem in USErspace) is a simple interface for userspace
programs to export a virtual filesystem to the linux kernel.  FUSE
also aims to provide a secure method for non privileged users to
create and mount their own filesystem implementations.

You can download the source code releases from

  http://sourceforge.net/projects/avf

or alternatively you can use CVS to get the very latest development
version by setting the cvsroot to

  :pserver:anonymous@cvs.avf.sourceforge.net:/cvsroot/avf

and checking out the 'fuse' module.

Installation
============

./configure
make
make install

Also see the file 'INSTALL'

How To Use
==========

FUSE is made up of three main parts:

 - A kernel filesystem module

 - A userspace library

 - A mount/unmount program


Here's how to create your very own virtual filesystem in five easy
steps (after installing FUSE):

  1) Edit the file example/fusexmp.c to do whatever you want...

  2) Build the fusexmp program

  3) run 'example/fusexmp /mnt/fuse -d'

  4) ls -al /mnt/fuse

  5) Be glad

If it doesn't work out, please ask!  Also see the file 'include/fuse.h' for
detailed documentation of the library interface.

Security
========

If you run 'make install', the fusermount program is installed
set-user-id to root.  This is done to allow normal users to mount
their own filesystem implementations. 

There must however be some limitations, in order to prevent Bad User from
doing nasty things.  Currently those limitations are:

  - The user can only mount on a mountpoint, for which it has write
    permission

  - The mountpoint is not a sticky directory which isn't owned by the
    user (like /tmp usually is)

  - No other user (including root) can access the contents of the mounted
    filesystem.