SMBMOUNT(8)

SMBMOUNT(8)

smbd Home Page System Administration Index smbumount


NAME
       smbmount - mount program for smbfs

SYNOPSIS
       smbmount servicename mount-point [ -h ] [ -C ] [ -n ] [ -P
       password ] [ -s server name ] [ -c  client  name  ]  [  -I
       hostname/IP ] [ -U user name ] [ -D domain name ] [ -u uid
       ] [ -g gid ] [ -f file mode ] [ -d dir mode  ]  [  -m  max
       xmit ] [ -p port ]

DESCRIPTION
       This program is an interface to the SMB filesystem.

       smbfs  is a filesystem which understands the SMB protocol.
       This is the protocol Windows for Workgroups, Windows NT or
       Lan  Manager use to talk to each other. It was inspired by
       samba, the program by Andrew Tridgell that turns any  unix
       site  into  a file server for DOS or Windows clients.  See
       ftp://nimbus.anu.edu.au/pub/tridge/samba/ for this  inter-
       esting  program  suite and lots of more information on SMB
       and NetBIOS over TCP/IP. There you also  find  explanation
       for conceps like netbios name or share.

OPTIONS
       servicename
          servicename  is the name of the service you want to use
          on the server. It takes the form //server/service/root-
          dir  where server is the name of the Lan Manager server
          offering the desired service and service is the name of
          the  service offered.  rootdir is a directory below the
          offered service. This can be convenient  when  complete
          disks  are  exported by a server, but only a small part
          of the hierarchy should be available  for  the  client.
          Thus  to connect to the directory "util" below the ser-
          vice "c" on the Lan Manager server "wfw", you would use
          the servicename
                    //wfw/c/util

          Note  that  the notation is different from the DOS con-
          ventions, where the same  service  would  be  given  as
          \\wfw\c\util.  This was done to get rid of difficulties
          with the shell using \ as an escape character.

          To make smbmount compatible with the automounter,  only
          one  leading  '/'  is  required, although any number of
          '/'s is accepted.

          Currently smbmount uses gethostbyname() to find the  IP
          number  of the desired host. It is thus not really com-
          patible with Lan Manager conventions, where the netbios
          name  of  the server is not necessarily the same as the

          hostname. In environments which enforce a netbios  name
          that's  different  than the hostname, you should use -s
          and -c to simulate appropriate behaviour.

       mount-point
          mount-point is the directory  you  want  to  mount  the
          filesystem  over.  It's the same as in the normal mount
          command.

          If the real uid of the caller  is  not  root,  smbmount
          checks  whether the user is allowed to mount a filesys-
          tem on the mount-point. So it should be  safe  to  make
          smbmount  setuid  root. In the filesystem, the real uid
          of the caller is stored, so that  smbumount  can  check
          whether  the  caller is allowed to unmount the filesys-
          tem.

       -h
          -h is used to print out a short help text.

       -C
          By default, passwords are converted to uppercase before
          they  are  sent  to  the  server,  because most servers
          require this. You can turn off this conversion by -C.

       -n
          -n should be given to mount shares which do not require
          a password to log in.

       -P password
          You  may  want  to  give  the  password required by the
          server on the command line. You should  be  careful  to
          use passwords in scripts.

          If  neither -n nor -P are given, smbmount prompts for a
          password. This makes it difficult  to  use  in  scripts
          such as /etc/rc. But that's not smbmount's fault, but a
          general problem with the Lan Manager security model. If
          anybody  has  a  satisfying  solution  to this problem,
          please tell me.

       -s server name
          If the server has a different  netbios  name  than  its
          hostname, you should give its netbios name by -s.  This
          option should only be used if the server  refuses  your
          login  attempt  without  telling  him about his netbios
          name.

          This option does not alter the way smbmount  finds  the
          server's IP address. It always uses gethostbyname().

          The  default  value  for this option is the server name
          given in the service.

       -c client name
          Like -s, -c should be used when netbios names and host-
          names  differ  and  the  server  refuses login with the
          default value for the netbios name: your hostname.

       -I hostname/IP of the server
          Like -c should be used when netbios names and hostnames
          differ  on  the server.  This sets the hostname to con-
          tact on the network, the netbios  name  of  the  server
          still preceeds the service name.

       -U user name
          If  the user name you Lan Manager administrator gave to
          you differs from your unix user-id, you should  use  -U
          to tell the server about you Lan Manager user name.

       -D domain name
          If  your  server  requires a domain name at login time,
          you can use -D to specify it. The default value is '?',
          which  should  work  fine  for most setups. Please note
          that your kernel has to support this feature.

       -u uid, -g gid
          A Lan Manager server does not tell  us  anything  about
          the  owner  of a file. Unix requires that each file has
          an owner and a group it belongs to. With -u and -g  you
          can  tell  smbmount  which id's it should assign to the
          files in the mounted direcory.

          The defaults for these values are the current  uid  and
          gid.

       -f file mode, -d dir mode
          Like  -u  and -g, these options are also used to bridge
          differences in concepts between Lan Manager  and  unix.
          Lan  Manager  does not know anything about file permis-
          sions. So smbmount has to be told which permissions  it
          should  assign to the mounted files and direcories. The
          values have to be given as octal numbers.  The  default
          values are taken from the current umask, where the file
          mode is the current umask, and the dir mode  adds  exe-
          cute permissions where the file mode gives read permis-
          sions.

          Note that these permissions can differ from the  rights
          the  server  gives to us. If you do not have write per-
          missions on the server, you can very well choose a file
          mode  that  tells  that you have. This certainly cannot
          override the restrictions imposed by the server.

       -p port
          The port is the TCP port smbmount tries to  connect  on
          the server. The default for this value is 139, as spec-
          ified in RFC 1001/1002 (NetBIOS over TCP/IP).  Normally

          it  should  not  be  altered, as all commercial servers
          offer their services on this port.

          I use it in my testing environment, where samba runs as
          a  normal user and cannot bind() to the privileged port
          139.

       -m max xmit
          With -m you can tell smbmount that it should offer some
          special maximum packet size that it can transfer in one
          SMB packet. Normally this option should not be used.

MOUNT FAILURES
       The mount(2) system call  does  not  return  any  sensible
       error  code,  so  you  have  to guess what failed when you
       could not mount a share.

       Some servers are fussy about the case  of  supplied  user-
       names,  passwords,  share  names  (aka  service names) and
       machine names. If you  fail  to  connect  try  giving  all
       parameters in uppercase.

       It is often necessary to use the -n option when connecting
       to some types of  servers.  For  example  OS/2  LanManager
       insists on a valid netbios name being used, so you need to
       supply a valid name that would be known to the server.

       Starting with smbfs-0.8 it is possible that your  smbmount
       program  is newer than the kernel you are currently using.
       You can fix this by recompiling smbmount with the  correct
       kernel sources installed.

NOTES
       smbfs  supports  long file names where the server supports
       the LANMAN2 protocol.

ENVIRONMENT VARIABLES
       USER / LOGNAME
          The variables USER or LOGNAME may contain the  username
          of  the  person using the client.  USER is tried first.
          If it's emtpy, LOGNAME is tried.  This  information  is
          used  only if the protocol level is high enough to sup-
          port session-level passwords.

DIAGNOSTICS
       Most diagnostics issued by smbfs are  logged  by  syslogd.
       Normally  nothing  is  printed,  only error situations are
       logged there.

       If you have problems with smbfs, a good diagnostic tool is

       the  program  smbclient  from  the  samba package. If your
       problem does not occur with  smbclient,  then  it's  defi-
       nitely  a  problem with smbfs. If smbclient also shows the
       problem, it can print lots  of  debugging  information  to
       help you to find the problem.

BUGS
       make does not find the Makefile in a smb-mounted direcory.
       Why??? If you type  make  -f  Makefile,  everything  works
       fine.

       There might be lots of race conditions in the kernel code.
       Anybody more experienced in kernel hacking  might  take  a
       look  at it and tell me about problems. I will do my best.
       For example I do not know which routines  smbfs  calls  in
       the  kernel  might  call  schedule(). Can kmalloc call the
       scheduler? Does kfree?

       You might see the  use  of  gethostbyname()  to  find  the
       server in a way not conforming to Lan Manager as a bug.

SEE ALSO
       syslogd(8) smbumount(8) 

CREDITS
       The original smbfs kernel code was a mixture of user-level
       smbfs and the nfs code. It was put  together  by  Paal-Kr.
       Engstad pke@engstad.ingok.hitos.no and later polished by
       Volker Lendecke lendecke@namu01.gwdg.de

       The original Samba software  and  related  utilities  were
       created by Andrew Tridgell Andrew.Tridgell@anu.edu.au.

smbd Home Page System Administration Index smbumount