term% cat index.txt CIFS(4) Kernel Interfaces Manual CIFS(4)
NAME
cifs - Microsoft⢠Windows network filesystem client
SYNOPSIS
cifs [ -bDiv ] [ -d debug ] [ -a auth-method ] [ -s srvname ] [ -n
called-name ] [ -k keyparam ] [ -m mntpnt ] [ -t dfs-timeout ] host [
share ... ]
DESCRIPTION
Cifs translates between Microsoft's file-sharing protocol (a.k.a. CIFS
or SMB) and 9P, allowing Plan9 clients to mount file systems (shares or
trees in MS terminology) published by such servers.
The root of the mounted directory contains one subdirectory per share,
and a few virtual files give additional information. The arguments
are:
-a auth-method
Cifs authenticates using ntlmv2 by default, but alternative
strategies may be selected using this option. Cifs eschews
cleartext authentication, however it may be enabled with the
auth method. The list of currently-supported methods is printed
if no method name is supplied.
Windows server 2003 requires the ntlmv2 method by default,
though it can be configured to be more flexible.
-b Enable file ownership resolution in stat(2) calls. This re‐
quires an open and close per file and thus will slow cifs con‐
siderably; its use is not recommended.
-d debug
followed by non-whitespace separated list of debug options debug
writes specific debug output to file descriptor 2. See source
for more information.
-D 9P request debug.
-i By default cifs attempts to enforce case significance file and
directory names, though objects which differ only in their case
still cannot co-exist in the same directory. The -i option dis‐
ables this behaveiour.
-k keyparam
lists extra parameters which will be passed to factotum(4) to
select a specific key. The remote servers's domain is always
included in the keyspec, under the assumption that all servers
in a Windows domain share an authentication domain; thus cifs
expects keys in factotum of the form:
key proto=pass dom=THEIR-DOMAIN service=cifs
user=MY-USERNAME !password=XYZZY
-m mntpnt
set the mount point for the remote filesystem; the default is
/n/host.
-n called-name
The CIFS protocol requires clients to know the NetBios name of
the server they are attaching to, the Icalled-name. If this is
not specified on the command line, cifs attempts to discover
this name from the remote server. If this fails it will then
try host, and finally it will try the name
-s srvname
post the service as /srv/srvname.
-t dfs-timeout
sets the timeout in for DFS redirections - it defaults to 100ms.
This is a reasonable minimum, it should have a value just
greater than the RTT to the most distant server being accessed.
host The address of the remote server to connect to.
share A list of share names to attach on the remote server; if none is
given, cifs will attempt to attach all shares published by the
remote host.
Synthetic Files
Several synthetic files appear in the root of the mounted filesystem:
Shares Contains a list of the currently attached shares, with fields
giving the share name, the share type, disk free space / capac‐
ity, and a descriptive comment from the server.
Connection
Contains the username used for authentication, server's called
name, server's domain, server's OS, the time slip between the
local host and the server, the Maximum Transfer Unit (MTU) the
server requested, and optionally a flag indicating only guest
access has been granted. The second line contains a list of ca‐
pabilities offered by the server which is mainly of use for de‐
bugging cifs.
Users Each line contains a user's name, the user's full name, and a
descriptive comment.
Groups Each line gives a group's name, and a list of the names of the
users who are members of that group.
Sessions
Lists the users authenticated, the client machine's NetBios name
or IP address, the time since the connection was established,
and the time for which the connection has been idle.
Domains
One line per domain giving the domain name and a descriptive
comment.
Workstations
One line per domain giving the domain name and a descriptive
comment, the version number of the OS it is running, and comma-
separated list of flags giving the features of that OS.
Dfsroot
Lists the top level DFS domains and the servers that provision
them.
Dfscache
Contents of the DFS referal cache, giving the path prefix, the
expiry time (or -1 for never), the measured RTT to the server in
milliseconds, the server proximity (0 is local), the server
name, and the share name on that server.
COMPATIBILITY
Cifs has been tested against aquarela, cifsd(8), Windows 95, NT4.0sp6,
Windows server 2003, Windows server 2003, WinXP pro, Samba 2.0 (Pluto
VideoSpace), and Samba 3.0.
Windows Vista require a hotfix (registry change) to support NTLMv2
without GSSAPI, see http://support.microsoft.com/kb/957441. Alterna‐
tively the -a option can be used to force cifs to use one of the less
secure authentication mechnisms.
Windows 7 has dropped support for RAP, which is used to generate the
synthetic files offered by cifs. RAP is also used to enumerate the
shares offered by the remote host so remote share names must always be
specified on the command line.
The NetApp Filer was supported by earlier releases, however recent at‐
tempts to mount one have failed. Should a server be available it is
likely that this could be easily fixed.
SOURCE
/sys/src/cmd/cifs
SEE ALSO
factotum(4), cifsd(8)
BUGS
DFS support is unfinished, it will not follow referals that span
servers.
Kerberos authentication is not supported.
NetBios name resolution is not supported, though it is now rarely used.
HISTORY
Cifs first appeared in Plan 9 from Bell Labs. It was updated to the au‐
thor's latest revision for 9front (January, 2012).
CIFS(4)