mirror of
https://github.com/samba-team/samba.git
synced 2024-12-31 17:18:04 +03:00
Move VFS documentation to SGML
This commit is contained in:
parent
e424b08050
commit
cf9c1c2584
195
docs/docbook/projdoc/VFS.sgml
Normal file
195
docs/docbook/projdoc/VFS.sgml
Normal file
@ -0,0 +1,195 @@
|
||||
<chapter id="VFS">
|
||||
<chapterinfo>
|
||||
<author><firstname>Jelmer</firstname><surname>Vernooij</surname></author>
|
||||
<author><firstname>Alexander</firstname><surname>Bokovoy</surname></author>
|
||||
<author><firstname>Tim</firstname><surname>Potter</surname></author>
|
||||
<author><firstname>Simo</firstname><surname>Sorce</surname></author>
|
||||
</chapterinfo>
|
||||
<title>Stackable VFS modules</title>
|
||||
|
||||
<sect1>
|
||||
<title>Introduction and configuration</title>
|
||||
|
||||
<para>
|
||||
Since samba 3.0, samba supports stackable VFS(Virtual File System) modules.
|
||||
Samba passes each request to access the unix file system thru the loaded VFS modules.
|
||||
This chapter covers all the modules that come with the samba source and references to
|
||||
some external modules.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
You may have problems to compile these modules, as shared libraries are
|
||||
compiled and linked in different ways on different systems.
|
||||
I currently tested them against GNU/linux and IRIX.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To use the VFS modules, create a share similar to the one below. The
|
||||
important parameter is the <command>vfs object</command> parameter which must point to
|
||||
the exact pathname of the shared library object. For example, to use audit.so:
|
||||
|
||||
<programlisting>
|
||||
[audit]
|
||||
comment = Audited /data directory
|
||||
path = /data
|
||||
vfs object = /path/to/audit.so
|
||||
writeable = yes
|
||||
browseable = yes
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Further documentation on writing VFS modules for Samba can be found in
|
||||
docs directory of the Samba source distribution.
|
||||
</para>
|
||||
|
||||
</sect1>
|
||||
|
||||
<sect1>
|
||||
<title>Included modules</title>
|
||||
|
||||
<sect2>
|
||||
<title>audit</title>
|
||||
<para>A simple module to audit file access to the syslog
|
||||
facility. The following operations are logged:
|
||||
<simplelist>
|
||||
<member>share</member>
|
||||
<member>connect/disconnect</member>
|
||||
<member>directory opens/create/remove</member>
|
||||
<member>file open/close/rename/unlink/chmod</member>
|
||||
</simplelist>
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>recycle</title>
|
||||
<para>
|
||||
A recycle-bin like modules. When used any unlink call
|
||||
will be intercepted and files moved to the recycle
|
||||
directory instead of beeing deleted.
|
||||
</para>
|
||||
|
||||
<para>Supported options:
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>vfs_recycle_bin:repository</term>
|
||||
<listitem><para>FIXME</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>vfs_recycle_bin:keeptree</term>
|
||||
<listitem><para>FIXME</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>vfs_recycle_bin:versions</term>
|
||||
<listitem><para>FIXME</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>vfs_recycle_bin:touch</term>
|
||||
<listitem><para>FIXME</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>vfs_recycle_bin:maxsize</term>
|
||||
<listitem><para>FIXME</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>vfs_recycle_bin:exclude</term>
|
||||
<listitem><para>FIXME</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>vfs_recycle_bin:exclude_dir</term>
|
||||
<listitem><para>FIXME</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>vfs_recycle_bin:noversions</term>
|
||||
<listitem><para>FIXME</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>netatalk</title>
|
||||
<para>
|
||||
A netatalk module, that will ease co-existence of samba and
|
||||
netatalk file sharing services.
|
||||
</para>
|
||||
|
||||
<para>Advantages compared to the old netatalk module:
|
||||
<simplelist>
|
||||
<member>it doesn't care about creating of .AppleDouble forks, just keeps ones in sync</member>
|
||||
<member>if share in smb.conf doesn't contain .AppleDouble item in hide or veto list, it will be added automatically</member>
|
||||
</simplelist>
|
||||
</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
|
||||
<sect1>
|
||||
<title>VFS modules available elsewhere</title>
|
||||
|
||||
<para>
|
||||
This section contains a listing of various other VFS modules that
|
||||
have been posted but don't currently reside in the Samba CVS
|
||||
tree for one reason ot another (e.g. it is easy for the maintainer
|
||||
to have his or her own CVS tree).
|
||||
</para>
|
||||
|
||||
<para>
|
||||
No statemets about the stability or functionality any module
|
||||
should be implied due to its presence here.
|
||||
</para>
|
||||
|
||||
<sect2>
|
||||
<title>DatabaseFS</title>
|
||||
|
||||
<para>
|
||||
URL: <ulink url="http://www.css.tayloru.edu/~elorimer/databasefs/index.php">http://www.css.tayloru.edu/~elorimer/databasefs/index.php</ulink>
|
||||
</para>
|
||||
|
||||
<para>By <ulink url="mailto:elorimer@css.tayloru.edu">Eric Lorimer</ulink>.</para>
|
||||
|
||||
<para>
|
||||
I have created a VFS module which implements a fairly complete read-only
|
||||
filesystem. It presents information from a database as a filesystem in
|
||||
a modular and generic way to allow different databases to be used
|
||||
(originally designed for organizing MP3s under directories such as
|
||||
"Artists," "Song Keywords," etc... I have since applied it to a student
|
||||
roster database very easily). The directory structure is stored in the
|
||||
database itself and the module makes no assumptions about the database
|
||||
structure beyond the table it requires to run.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Any feedback would be appreciated: comments, suggestions, patches,
|
||||
etc... If nothing else, hopefully it might prove useful for someone
|
||||
else who wishes to create a virtual filesystem.
|
||||
</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>vscan</title>
|
||||
<para>URL: <ulink url="http://www.openantivirus.org/">http://www.openantivirus.org/</ulink></para>
|
||||
|
||||
<para>
|
||||
samba-vscan is a proof-of-concept module for Samba, which
|
||||
uses the VFS (virtual file system) features of Samba 2.2.x/3.0
|
||||
alphaX. Of couse, Samba has to be compiled with VFS support.
|
||||
samba-vscan supports various virus scanners and is maintained
|
||||
by Rainer Link.
|
||||
</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
|
||||
</chapter>
|
@ -25,6 +25,7 @@
|
||||
<!ENTITY oplocks SYSTEM "oplocks.sgml">
|
||||
<!ENTITY pdb-mysql SYSTEM "pdb_mysql.sgml">
|
||||
<!ENTITY pdb-xml SYSTEM "pdb_xml.sgml">
|
||||
<!ENTITY VFS SYSTEM "VFS.sgml">
|
||||
]>
|
||||
|
||||
<book id="Samba-HOWTO-Collection">
|
||||
@ -113,6 +114,7 @@ part each cover one specific feature.</para>
|
||||
&WINBIND;
|
||||
&pdb-mysql;
|
||||
&pdb-xml;
|
||||
&VFS;
|
||||
&Samba-LDAP;
|
||||
&CVS-Access;
|
||||
&GROUP-MAPPING-HOWTO;
|
||||
|
Loading…
Reference in New Issue
Block a user