## Name

smbsh — Allows access to remote SMB shares using UNIX commands

## Synopsis

`smbsh` [-W workgroup] [-U username] [-P prefix] [-R <name resolve order>] [-d <debug level>] [-l logdir] [-L libdir]

## DESCRIPTION

This tool is part of the samba(7) suite.

`smbsh` allows you to access an NT filesystem using UNIX commands such as `ls`, `egrep`, and `rcp`. You must use a shell that is dynamically linked in order for `smbsh` to work correctly.

## OPTIONS

-W WORKGROUP

  Override the default workgroup specified in the workgroup parameter of the smb.conf(5) file for this session. This may be needed to connect to some servers.

-U username[%pass]

  Sets the SMB username or username and password. If this option is not specified, the user will be prompted for both the username and the password. If %pass is not specified, the user will be prompted for the password.

-P prefix

  This option allows the user to set the directory prefix for SMB access. The default value if this option is not specified is smb.

-s <configuration file>

  The file specified contains the configuration details required by the server. The information in this file includes server-specific information such as what printcap file to use, as well as descriptions of all the services that the server is to provide. See `smb.conf` for more information. The default configuration file name is determined at compile time.

-d|--debuglevel=level

  `level` is an integer from 0 to 10. The default value if this parameter is not specified is 0.

  The higher this value, the more detail will be logged to the log files about the activities of the server. At level 0, only critical errors and serious warnings will be logged. Level 1 is a reasonable level for day-to-day running - it generates a small amount of information about operations carried out.

  Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic.

  Note that specifying this parameter here will override the log level parameter in the `smb.conf` file.

-R <name resolve order>

  This option is used to determine what naming services and in what order to resolve host names to IP addresses. The option takes a space-separated string of different name resolution options.

  The options are: "lmhosts", "host", "wins" and "bcast". They cause names to be resolved as follows :

  - `lmhosts`: Lookup an IP address in the Samba lmhosts file. If the line in lmhosts has no name type attached to the NetBIOS name (see the lmhosts(5) for details) then any name type matches for lookup.

  - `host`: Do a standard host name to IP address resolution, using the system `/etc/hosts`, NIS, or DNS lookups. This method of name resolution is operating system dependent, for instance on IRIX or Solaris this may be controlled by the `/etc/nsswitch.conf` file). Note that this method is only used if the NetBIOS name type being queried is the 0x20 (server) name type, otherwise it is ignored.

  - `wins`: Query a name with the IP address listed in the `wins server` parameter. If no WINS server has been specified this method will be ignored.

  - `bcast`: Do a broadcast on each of the known local interfaces listed in the `interfaces` parameter. This is the least reliable of the name resolution methods as it depends on the target host being on a locally connected subnet.

  If this parameter is not set then the name resolve order defined in the `smb.conf` file parameter (name resolve order) will be used.

  The default order is lmhosts, host, wins, bcast. Without this parameter or any entry in the name resolve order parameter of the `smb.conf` file, the name resolution methods will be attempted in this order.

-L libdir

  This parameter specifies the location of the shared libraries used by `smbsh`. The default value is specified at compile time.

## EXAMPLES

To use the `smbsh` command, execute `smbsh` from the prompt and enter the username and password that authenticates you to the machine running the Windows NT operating system.

    system% smbsh
    Username: user
    Password: XXXXXXX

Any dynamically linked command you execute from this shell will access the `/smb` directory using the smb protocol. For example, the command `ls /smb` will show a list of workgroups. The command `ls /smb/MYGROUP` will show all the machines in the workgroup MYGROUP. The command `ls /smb/MYGROUP/<machine-name>` will show the share names for that machine. You could then, for example, use the `cd` command to change directories, `vi` to edit files, and `rcp` to copy files.

## VERSION

This man page is correct for version 3 of the Samba suite.

## BUGS

`smbsh` works by intercepting the standard libc calls with the dynamically loaded versions in `smbwrapper.o`. Not all calls have been "wrapped", so some programs may not function correctly under `smbsh` .

Programs which are not dynamically linked cannot make use of `smbsh`'s functionality. Most versions of UNIX have a `file` command that will describe how a program was linked.

## SEE ALSO

smbd(8), smb.conf(5)

## AUTHOR

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.

The original Samba man pages were written by Karl Auer. The man page sources were converted to YODL format (another excellent piece of Open Source software, available at ftp://ftp.icce.rug.nl/pub/unix/) and updated for the Samba 2.0 release by Jeremy Allison. The conversion to DocBook for Samba 2.2 was done by Gerald Carter. The conversion to DocBook XML 4.2 for Samba 3.0 was done by Alexander Bokovoy.