[linux-cifs-client] [PATCH] doc: update mount.cifs man page with nounix option

Suresh Jayaraman sjayaraman at suse.de
Mon Dec 21 08:24:32 MST 2009


Change since last post:
	- s/on 32 bit machines//

Also add a section on INODE NUMBERS that discusses inode numbers more
thoroughly and add reference to it in "nounix" and "noserverino"
options.

Thanks to Jeff Layton for explaining those details.

Signed-off-by: Suresh Jayaraman <sjayaraman at suse.de>
---
 docs-xml/manpages-3/mount.cifs.8.xml |   55 ++++++++++++++++++++++++++++++++-
 1 files changed, 53 insertions(+), 2 deletions(-)

diff --git a/docs-xml/manpages-3/mount.cifs.8.xml b/docs-xml/manpages-3/mount.cifs.8.xml
index 372b477..7f25566 100644
--- a/docs-xml/manpages-3/mount.cifs.8.xml
+++ b/docs-xml/manpages-3/mount.cifs.8.xml
@@ -477,12 +477,36 @@ permissions in memory that can't be stored on the server. This information can d
 
         <varlistentry>
                 <term>noserverino</term>
-                <listitem><para>client generates inode numbers (rather than using the actual one
-                from the server) by default.
+		<listitem>
+		<para>
+			Client generates inode numbers (rather than
+		using the actual one from the server) by default.
+		</para>
+		<para>
+			See section <emphasis>INODE NUMBERS</emphasis> for
+		more information.
+		</para>
 		</para></listitem>
         </varlistentry>
 
         <varlistentry>
+		<term>nounix</term>
+		<listitem>
+		<para>
+			Disable the CIFS Unix Extensions for this mount. This
+		can be useful in order to turn off multiple settings at once.
+		This includes POSIX acls, POSIX locks, POSIX paths, symlink
+		support and retrieving uids/gids/mode from the server. This
+		can also be useful to work around a bug in a server that
+		supports Unix Extensions.
+		</para>
+		<para>
+		See section <emphasis>INODE NUMBERS</emphasis> for
+		more information.
+		</para> </listitem>
+        </varlistentry>
+
+        <varlistentry>
                 <term>nouser_xattr</term>
                 <listitem><para>(default) Do not allow getfattr/setfattr to get/set xattrs, even if server would support it otherwise. </para></listitem>
         </varlistentry>
@@ -533,6 +557,33 @@ permissions in memory that can't be stored on the server. This information can d
 </refsect1>
 
 <refsect1>
+	<title>INODE NUMBERS</title>
+	<para>
+		When Unix Extensions are enabled, we use the actual inode
+	number provided by the server in response to the POSIX calls as an
+	inode number.
+	</para>
+	<para>
+		When Unix Extensions are disabled and "serverino" mount option
+	is enabled there is no way to get the server inode number. The
+	client typically maps the server-assigned "UniqueID" onto an inode
+	number.
+	</para>
+	<para>
+		Note that the UniqueID is a different value from the server
+	inode number. The UniqueID value is unique over the scope of the entire
+	server and is often greater than 2 power 32. This value often makes
+	programs that are not compiled with LFS (Large File Support), to
+	trigger a glibc EOVERFLOW error as this won't fit in the target
+	structure field. It is strongly recommended to compile your programs
+	with LFS support (i.e. with -D_FILE_OFFSET_BITS=64) to prevent this
+	problem. You can also use "noserverino" mount option to generate inode
+	numbers smaller than 2 power 32 on the client. But you may not be able
+	to detect hardlinks properly.
+	</para>
+</refsect1>
+
+<refsect1>
 	<title>FILE AND DIRECTORY OWNERSHIP AND PERMISSIONS</title>
 
 	<para> The core CIFS protocol does not provide unix ownership


More information about the linux-cifs-client mailing list