122 lines
3.4 KiB
Groff
122 lines
3.4 KiB
Groff
|
.\" $NetBSD: perfused.8,v 1.1 2010/08/25 07:18:01 manu Exp $
|
||
|
.\"
|
||
|
.\" Copyright (c) 2010 Emmanuel Dreyfus. All rights reserved.
|
||
|
.\"
|
||
|
.\" Redistribution and use in source and binary forms, with or without
|
||
|
.\" modification, are permitted provided that the following conditions
|
||
|
.\" are met:
|
||
|
.\" 1. Redistributions of source code must retain the above copyright
|
||
|
.\" notice, this list of conditions and the following disclaimer.
|
||
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||
|
.\" notice, this list of conditions and the following disclaimer in the
|
||
|
.\" documentation and/or other materials provided with the distribution.
|
||
|
.\"
|
||
|
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
||
|
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||
|
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||
|
.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
||
|
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||
|
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||
|
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||
|
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||
|
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||
|
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||
|
.\" POSSIBILITY OF SUCH DAMAGE.
|
||
|
.\"
|
||
|
.Dd August 12, 2010
|
||
|
.Os
|
||
|
.Dt PERFUSED 8
|
||
|
.Sh NAME
|
||
|
.Nm perfused
|
||
|
.Nd "PUFFS Enabled Relay to FUSE Daemon"
|
||
|
.Sh SYNOPSIS
|
||
|
.Nm
|
||
|
.Op Fl f
|
||
|
.Op Fl d Ar types
|
||
|
.Op Fl s
|
||
|
.Sh DESCRIPTION
|
||
|
.Nm
|
||
|
is a userland daemon mplementing the FUSE kernel level API. It creates a
|
||
|
.Pa /dev/fuse
|
||
|
socket for FUSE filesystem daemons to conenct to.
|
||
|
.Nm
|
||
|
takes care of mouting the filesystem using
|
||
|
.Xr puffs 3 .
|
||
|
.Pp
|
||
|
When the kernel sends a
|
||
|
.Xr puffs 3
|
||
|
operation for the mounted filesystem,
|
||
|
.Nm
|
||
|
will translate it into a FUSE request, and will send it to the filesystem
|
||
|
daemon through
|
||
|
.Pa /dev/fuse .
|
||
|
The FUSE reply will be converted back into a
|
||
|
.Xr puffs 3
|
||
|
reply and will be relayed to the kernel.
|
||
|
.Pp
|
||
|
FUSE filesystems daemons must be modified so that they request
|
||
|
.Nm
|
||
|
for performing the
|
||
|
.Xr mount 2
|
||
|
system call instead of doing it on their own. This is done by
|
||
|
replacing in the sources
|
||
|
.Xr mount 2
|
||
|
and the
|
||
|
.Xr open 2
|
||
|
call for
|
||
|
.Pa /dev/fuse
|
||
|
by
|
||
|
.Fn perfuse_mount
|
||
|
and
|
||
|
.Fn perfuse_open .
|
||
|
.Xr libperfuse 3
|
||
|
must be used at link time.
|
||
|
Most FUSE filesystem daemons use
|
||
|
.Nm libfuse
|
||
|
and will work unmodified, provided
|
||
|
the modification is done in
|
||
|
.Nm libfuse
|
||
|
itself .
|
||
|
.Pp
|
||
|
The following options are availlable:
|
||
|
.Bl -tag -width indent
|
||
|
.It Fl f
|
||
|
Do not fork and stay in the foreground.
|
||
|
.It Fl d Ar types
|
||
|
Print additionnal debug information.
|
||
|
.Ar types
|
||
|
is a comma-separated list of informaton type to print:
|
||
|
.Bl -tag -width indent
|
||
|
.It Ar puffs
|
||
|
Display PUFFS requests and replies
|
||
|
.It Ar fuse
|
||
|
Display FUSE requests and replies
|
||
|
.It Ar dump
|
||
|
Dump content of FUSE frames
|
||
|
.It Ar fh
|
||
|
Display filehandles activity
|
||
|
.It Ar reclaim
|
||
|
Display reclaim activity
|
||
|
.It Ar readdir
|
||
|
Display readdir activity
|
||
|
.It Ar requeue
|
||
|
Display requeue activity
|
||
|
.El
|
||
|
.It Fl s
|
||
|
Enable debug output only when receiving SIGINFO.
|
||
|
.El
|
||
|
.Sh ERRORS
|
||
|
The program logs to the syslog daemon as facility
|
||
|
.Dq daemon .
|
||
|
For detailed debugging use the
|
||
|
.Fl d
|
||
|
(debug) option.
|
||
|
.Sh SEE ALSO
|
||
|
.Xr puffs 4 ,
|
||
|
.Xr mount 2 ,
|
||
|
.Xr perfuse_mount 3
|
||
|
.Sh AUTHORS
|
||
|
The program was written by
|
||
|
.An Emmanuel Dreyfus
|
||
|
.Aq manu@NetBSD.org .
|