<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
<refentry id="vfs_fileid.8">

<refmeta>
	<refentrytitle>vfs_fileid</refentrytitle>
	<manvolnum>8</manvolnum>
	<refmiscinfo class="source">Samba</refmiscinfo>
	<refmiscinfo class="manual">System Administration tools</refmiscinfo>
	<refmiscinfo class="version">3.6</refmiscinfo>
</refmeta>


<refnamediv>
	<refname>vfs_fileid</refname>
	<refpurpose>Generates file_id structs with unique device id values for
	cluster setups</refpurpose>
</refnamediv>

<refsynopsisdiv>
	<cmdsynopsis>
		<command>vfs objects = fileid</command>
	</cmdsynopsis>
</refsynopsisdiv>

<refsect1>
	<title>DESCRIPTION</title>

	<para>This VFS module is part of the
	<citerefentry><refentrytitle>samba</refentrytitle>
	<manvolnum>7</manvolnum></citerefentry>
	suite.</para>

	<para>Samba uses file_id structs to uniquely identify files
	for locking purpose. By default the file_id contains the device
	and inode number returned by the <command>stat()</command> system call.
	As the file_id is a unique identifier of a file, it must be the same
	on all nodes in a cluster setup. This module overloads the
	<command>SMB_VFS_FILE_ID_CREATE()</command> operation and
	generates the device number based on the configured algorithm
	(see the "fileid:algorithm" option).
	</para>
</refsect1>


<refsect1>
	<title>OPTIONS</title>

	<variablelist>

		<varlistentry>
		<term>fileid:algorithm = ALGORITHM</term>
		<listitem>
		<para>Available algorithms are <command>fsname</command>
		and <command>fsid</command>. The default value is
		<command>fsname</command>.
		</para>
		<para>The <command>fsname</command> algorithm generates
		device id by hashing the kernel device name.
		</para>
		<para>The <command>fsid</command> algorithm generates
		the device id from the <command>f_fsid</command> returned
		from the <command>statfs()</command> syscall.
		</para>
		</listitem>
		</varlistentry>

		<varlistentry>
		<term>fileid:mapping = ALGORITHM</term>
		<listitem>
		<para>This option is the legacy version of the
		<command>fileid:algorithm</command> option, which was used in earlier
		versions of fileid mapping feature in custom Samba 3.0 versions.
		</para>
		</listitem>
		</varlistentry>

	</variablelist>
</refsect1>

<refsect1>
	<title>EXAMPLES</title>

	<para>Usage of the <command>fileid</command> module with the
	<command>fsid</command> algorithm:</para>

<programlisting>
        <smbconfsection name="[global]"/>
	<smbconfoption name="vfs objects">fileid</smbconfoption>
	<smbconfoption name="fileid:algorithm">fsid</smbconfoption>
</programlisting>

</refsect1>

<refsect1>
	<title>VERSION</title>

	<para>This man page is correct for version 3.2 of the Samba suite.
	</para>
</refsect1>

<refsect1>
	<title>AUTHOR</title>

	<para>The original Samba software and related utilities
	were created by Andrew Tridgell. Samba is now developed
	by the Samba Team as an Open Source project similar
	to the way the Linux kernel is developed.</para>

</refsect1>

</refentry>