diff options
-rw-r--r-- | docs/htmldocs/rpcclient.1.html | 622 | ||||
-rw-r--r-- | docs/htmldocs/smbclient.1.html | 2034 | ||||
-rw-r--r-- | docs/manpages/rpcclient.1 | 300 | ||||
-rw-r--r-- | docs/manpages/smbclient.1 | 1569 |
4 files changed, 3121 insertions, 1404 deletions
diff --git a/docs/htmldocs/rpcclient.1.html b/docs/htmldocs/rpcclient.1.html new file mode 100644 index 0000000000..0bba8fcd50 --- /dev/null +++ b/docs/htmldocs/rpcclient.1.html @@ -0,0 +1,622 @@ +<HTML +><HEAD +><TITLE +>rpcclient</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet Version 1.57"></HEAD +><BODY +CLASS="REFENTRY" +BGCOLOR="#FFFFFF" +TEXT="#000000" +LINK="#0000FF" +VLINK="#840084" +ALINK="#0000FF" +><H1 +><A +NAME="RPCCLIENT" +>rpcclient</A +></H1 +><DIV +CLASS="REFNAMEDIV" +><A +NAME="AEN5" +></A +><H2 +>Name</H2 +>rpcclient -- developer's tool to testing client side + MS-RPC functions</DIV +><DIV +CLASS="REFSYNOPSISDIV" +><A +NAME="AEN8" +></A +><H2 +>Synopsis</H2 +><P +><B +CLASS="COMMAND" +>nmblookup</B +> [-d debuglevel] [-S server] [-U username] [-W workgroup] [-n <netbios name>] [-A authfile] [-N] [-l logfile] [-I destinationIP] [-E <terminal code>] [-c <command string>] [-i scope] [-O <socket options>] [-s <smb config file>]</P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN25" +></A +><H2 +>DESCRIPTION</H2 +><P +>This tool is part of the <A +HREF="samba.7.html" +TARGET="_top" +> Samba</A +> suite.</P +><P +><B +CLASS="COMMAND" +>rpcclient</B +> is a utility for developers for + executing various MS-RPC functions. It's primary use is for testing + Samba's own MS-RPC server implementation, however many administrators + have written scripts around it to manage Windows NT clients from + their UNIX workstation. </P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN31" +></A +><H2 +>OPTIONS</H2 +><P +></P +><DIV +CLASS="VARIABLELIST" +><DL +><DT +>-d debuglevel</DT +><DD +><P +>set the debuglevel. Debug level 0 is the lowest + and 100 being the highest. This should be set to 100 if you are + planning on submitting a bug report to the Samba team + (see BUGS.txt). </P +></DD +><DT +>-S server</DT +><DD +><P +>NetBIOS name of Server to which you wish to + connect. The server can be any SMB/CIFS server. The name is + resolved using either the <TT +CLASS="PARAMETER" +><I +>name resolve order</I +></TT +> + line or by using the -R option. </P +></DD +><DT +>-l logbasename</DT +><DD +><P +>File name for log/debug files. .client will be + appended. The log file is never removed by the client. + </P +></DD +><DT +>-n netbios name</DT +><DD +><P +>NetBIOS name of the + local machine. This option is only needed if your Samba client + cannot find it automatically. Samba should use the uppercase + of the machine's hostname. </P +></DD +><DT +>-N</DT +><DD +><P +>tells rpcclient not to ask for a password. + <B +CLASS="COMMAND" +>rpcclient</B +> will prompt the user by default. + </P +></DD +><DT +>-I destinationIP</DT +><DD +><P +>The IP address of the server specified with + the -S option. Only needed when the server's NetBIOS name cannot + be resolved using WINS or broadcast and isn't found in the LMHOSTS + file. </P +></DD +><DT +>-E</DT +><DD +><P +>causes <B +CLASS="COMMAND" +>rpcclient</B +> to write + messages to stderr instead of stdout. </P +></DD +><DT +>-U username[%pass]</DT +><DD +><P +>Sets the SMB username or username and password. + If %pass is not specified, The user will be prompted. The client + will first check the USER environment variable, then the + <TT +CLASS="PARAMETER" +><I +>$LOGNAME</I +></TT +> variable and if either exist, the + string is uppercased. Anything in these variables following a '%' + sign will be treated as the password. If these environmental + variables are not found, the username <TT +CLASS="CONSTANT" +>GUEST</TT +> + is used. </P +><P +>If the password is not included in these environment + variables (using the %pass syntax), rpcclient will look for + a <TT +CLASS="PARAMETER" +><I +>$PASSWD</I +></TT +> environment variable from which + to read the password. </P +><P +>A third option is to use a credentials file which + contains the plaintext of the username and password. This + option is mainly provided for scripts where the admin doesn't + desire to pass the credentials on the command line or via environment + variables. If this method is used, make certain that the permissions + on the file restrict access from unwanted users. See the + <TT +CLASS="PARAMETER" +><I +>-A</I +></TT +> for more details. </P +><P +>Be cautious about including passwords in scripts or in + the <TT +CLASS="PARAMETER" +><I +>$PASSWD</I +></TT +> environment variable. Also, on + many systems the command line of a running process may be seen + via the <B +CLASS="COMMAND" +>ps</B +> command to be safe always allow + <B +CLASS="COMMAND" +>rpcclient</B +> to prompt for a password and type + it in directly. </P +></DD +><DT +>-A filename</DT +><DD +><P +>This option allows + you to specify a file from which to read the username and + password used in the connection. The format of the file is + </P +><P +><PRE +CLASS="PROGRAMLISTING" +>username = <value> +password = <value> + </PRE +></P +><P +>Make certain that the permissions on the file restrict + access from unwanted users. </P +></DD +><DT +>-W domain</DT +><DD +><P +>Set the SMB domain of the username. This + overrides the default domain which is the domain of the + server specified with the <TT +CLASS="PARAMETER" +><I +>-S</I +></TT +> option. + If the domain specified is the same as the server's NetBIOS name, + it causes the client to log on using the server's local SAM (as + opposed to the Domain SAM). </P +></DD +><DT +>-P</DT +><DD +><P +>operate in promptless mode. Without this + mode (the default) <B +CLASS="COMMAND" +>rpcclient</B +> displays a + prompt of the form '[domain\username@host]$' </P +></DD +><DT +>-c 'command string'</DT +><DD +><P +>execute semicolon separated commands (listed + below)) </P +></DD +><DT +>-t terminalcode</DT +><DD +><P +>This tells the Samba client how to interpret + the incoming filenames, in regards to character sets. The list + here is not complete. For a complete list see your local Samba + source. Some valid options are sjis, euc, jis7, jis8, junet + and hex. </P +></DD +><DT +>-O socket options</DT +><DD +><P +>These socket options are the same as in + <TT +CLASS="FILENAME" +>smb.conf</TT +> (under the <TT +CLASS="PARAMETER" +><I +>socket options + </I +></TT +> section). </P +></DD +><DT +>-s smb.conf</DT +><DD +><P +>Specifies the location of the all important + <TT +CLASS="FILENAME" +>smb.conf</TT +> file. </P +></DD +><DT +>-i scope</DT +><DD +><P +>Defines the NetBIOS scope. For more + information on NetBIOS scopes, see rfc1001 and rfc1002. NetBIOS + scopes are rarely used. </P +></DD +></DL +></DIV +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN119" +></A +><H2 +>COMMANDS</H2 +><P +><I +CLASS="EMPHASIS" +>SPOOLSS Commands</I +></P +><P +></P +><UL +><LI +><P +><B +CLASS="COMMAND" +>spoolenum</B +> - Execute an EnumPrinters() + call. This lists the various installed and share printers. Refer + to the MS Platform SDK documentation for more details of the various + flags and calling options. </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>spoolenumports level + </B +> - Executes an EnumPorts() call using the specified + info level. Currently only info level 1 and 2 are supported. + </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>spoolenumdata</B +> - Enumerate all + printer setting data stored on the server. On Windows NT clients, + these values are stored in the registry, while Samba servers + store them in the printers TDB. This command corresponds + to the MS Platform SDK GetPrinterData() function. </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>spooljobs printer</B +> - List the jobs + and status of a given printer. + This command corresponds to the MS Platform SDK EnumJobs() + function. </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>spoolopen printer + </B +> - Execute an OpenPrinterEx() and ClosePrinter() RPC + against a given printer. </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>spoolgetdata printer + </B +> - Retrieve the data for a given printer setting. See + the <B +CLASS="COMMAND" +>spoolenumdata</B +> command for more information. + This command corresponds to the GetPrinterData() MS Platform + SDK function. </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>spoolgetprinter printer + </B +> - Retrieve the current printer information. This command + corresponds to the GetPrinter() MS Platform SDK function. + </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>spoolgetprinterdriver + printer</B +> - Retrieve the printer driver information + (such as driver file, config file, dependent files, etc...) for + the given printer. This command corresponds to the GetPrinterDriver() + MS Platform SDK function. </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>spoolgetprinterdriverdir + arch</B +> - Execute a GetPrinterDriverDirectory() + RPC to retreive the SMB share name and subdirectory for + storing printer driver files for a given architecture. Possible + values for <TT +CLASS="PARAMETER" +><I +>arch</I +></TT +> are "Windows 4.0" + (for Windows 95/98), "Windows NT x86", "Windows NT PowerPC", "Windows + Alpha_AXP", and "Windows NT R4000". </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>spooladdprinterdriver + arch config</B +> - Execute an + AddPrinterDriver() RPC to install the printer driver information + on the server. Note that the driver files should already exist + in the directory returned by spoolgetprinterdriverdir. Possible + values for <TT +CLASS="PARAMETER" +><I +>arch</I +></TT +> are the same as those for + the <B +CLASS="COMMAND" +>spooolgetprintedriverdir</B +> command. + The <TT +CLASS="PARAMETER" +><I +>config</I +></TT +> parameter is defined as + follows: </P +><P +><PRE +CLASS="PROGRAMLISTING" +>Long Printer Name:\ +Driver File Name:\ +Data File Name:\ +Config File Name:\ +Help File Name:\ +Language Monitor Name:\ +Default Data Type:\ +Comma Separated list of Files + </PRE +></P +><P +>Any empty fields should be enter as the string "NULL". </P +><P +>Samba does not need to support the concept of Print Monitors + since these only apply to local printers whose driver can make + use of a bi-directional link for communication. This field should + be "NULL". On a remote NT print server, the Print Monitor for a + driver must already be installed prior to adding the driver or + else the RPC will fail. </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>spooladdprinter printername + sharename drivername port + </B +> - Add a printer on the remote server. This printer + will be automatically shared. Be aware that the printer driver + must already be installed on the server (see addprinterdriver) + and the <TT +CLASS="PARAMETER" +><I +>port</I +></TT +>must be a valid port name. </P +></LI +></UL +><P +><I +CLASS="EMPHASIS" +>SPOOLSS Commands</I +></P +><P +></P +><UL +><LI +><P +><B +CLASS="COMMAND" +>set</B +> - Set miscellaneous + <B +CLASS="COMMAND" +>rpcclient</B +> command line options during a + running session. </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>use</B +> - Connect to a rmeote SMB + server. <B +CLASS="COMMAND" +>rpcclient</B +> has the ability to + maintain connections to multiple server simulaneously. </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>help</B +> - Print a listing of all + known commands or extended help on a particular command. + </P +></LI +><LI +><P +><B +CLASS="COMMAND" +>quit</B +> - Exit <B +CLASS="COMMAND" +>rpcclient + </B +> + </P +></LI +></UL +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN185" +></A +><H2 +>BUGS</H2 +><P +><B +CLASS="COMMAND" +>rpcclient</B +> is designed as a developer testing tool + and may not be robust in certain areas (such as command line parsing). + It has been known to generate a core dump upon failures when invalid + parameters where passed to the interpreter. </P +><P +>From Luke Leighton's original rpcclient man page:</P +><P +><I +CLASS="EMPHASIS" +>"WARNING!</I +> The MSRPC over SMB code has + been developed from examining Network traces. No documentation is + available from the original creators (Microsoft) on how MSRPC over + SMB works, or how the individual MSRPC services work. Microsoft's + implementation of these services has been demonstrated (and reported) + to be... a bit flakey in places. </P +><P +>The development of Samba's implementation is also a bit rough, + and as more of the services are understood, it can even result in + versions of <B +CLASS="COMMAND" +>smbd(8)</B +> and <B +CLASS="COMMAND" +>rpcclient</B +> + that are incompatible for some commands or services. Additionally, + the developers are sending reports to Microsoft, and problems found + or reported to Microsoft are fixed in Service Packs, which may + result in incompatibilities." </P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN195" +></A +><H2 +>VERSION</H2 +><P +>This man page is correct for version 2.2 of + the Samba suite.</P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN198" +></A +><H2 +>AUTHOR</H2 +><P +>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.</P +><P +>The original rpcclient man page was written by Matthew Geddes, + Luke Kenneth Casson, and Gerald Carter. The conversion to + DocBook for Samba 2.2 was done by Gerald Carter</P +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/docs/htmldocs/smbclient.1.html b/docs/htmldocs/smbclient.1.html index f0a6ced61b..fec617f974 100644 --- a/docs/htmldocs/smbclient.1.html +++ b/docs/htmldocs/smbclient.1.html @@ -1,605 +1,1429 @@ - - - - - -<html><head><title>smbclient (1)</title> - -<link rev="made" href="mailto:samba@samba.org"> -</head> -<body> - -<hr> - -<h1>smbclient (1)</h1> -<h2>Samba</h2> -<h2>23 Oct 1998</h2> - - - - -<p><br><a name="NAME"></a> -<h2>NAME</h2> - smbclient - ftp-like client to access SMB/CIFS resources on servers -<p><br><a name="SYNOPSIS"></a> -<h2>SYNOPSIS</h2> - -<p><br><strong>smbclient</strong> <a href="smbclient.1.html#servicename">servicename</a> [<a href="smbclient.1.html#minuss">-s smb.conf</a>] [<a href="smbclient.1.html#minusO">-O socket options</a>][<a href="smbclient.1.html#minusR">-R name resolve order</a>] [<a href="smbclient.1.html#minusM">-M NetBIOS name</a>] [<a href="smbclient.1.html#minusi">-i scope</a>] [<a href="smbclient.1.html#minusN">-N</a>] [<a href="smbclient.1.html#minusn">-n NetBIOS name</a>] [<a href="smbclient.1.html#minusd">-d debuglevel</a>] [<a href="smbclient.1.html#minusP">-P</a>] [<a href="smbclient.1.html#minusp">-p port</a>] [<a href="smbclient.1.html#minusl">-l log basename</a>] [<a href="smbclient.1.html#minush">-h</a>] [<a href="smbclient.1.html#minusI">-I dest IP</a>] [<a href="smbclient.1.html#minusE">-E</a>] [<a href="smbclient.1.html#minusU">-U username</a>] [<a href="smbclient.1.html#minusL">-L NetBIOS name</a>] [<a href="smbclient.1.html#minust">-t terminal code</a>] [<a href="smbclient.1.html#minusm">-m max protocol</a>] [<a href="smbclient.1.html#minusb">-b buffersize</a>] [<a href="smbclient.1.html#minusW">-W workgroup</a>] [<a href="smbclient.1.html#minusT">-T<c|x>IXFqgbNan</a>] [<a href="smbclient.1.html#minusD">-D directory</a>] [<a href="smbclient.1.html#minusc">-c command string</a>] -<p><br><a name="DESCRIPTION"></a> -<h2>DESCRIPTION</h2> - -<p><br>This program is part of the <strong>Samba</strong> suite. -<p><br><strong>smbclient</strong> is a client that can 'talk' to an SMB/CIFS server. It -offers an interface similar to that of the ftp program (see <strong>ftp -(1)</strong>). Operations include things like getting files from the server -to the local machine, putting files from the local machine to the -server, retrieving directory information from the server and so on. -<p><br><a name="OPTIONS"></a> -<h2>OPTIONS</h2> - -<p><br><ul> -<p><br><a name="servicename"></a> -<li><strong><strong>servicename</strong></strong> servicename is the name of the service you want -to use on the server. A service name takes the form -<code>//server/service</code> where <em>server</em> is the NetBIOS name of the SMB/CIFS -server offering the desired service and <em>service</em> is the name -of the service offered. Thus to connect to the service <em>printer</em> on -the SMB/CIFS server <em>smbserver</em>, you would use the servicename -<p><br><code>//smbserver/printer</code> -<p><br>Note that the server name required is NOT necessarily the IP (DNS) -host name of the server ! The name required is a NetBIOS server name, -which may or may not be the same as the IP hostname of the machine -running the server. -<p><br>The server name is looked up according to either the -<a href="smbclient.1.html#minusR"><strong>-R</strong></a> parameter to <strong>smbclient</strong> or using the -<a href="smb.conf.5.html#nameresolveorder"><strong>name resolve order</strong></a> -parameter in the smb.conf file, allowing an administrator to change -the order and methods by which server names are looked up. -<p><br><a name="password"></a> -<li><strong><strong>password</strong></strong> password is the password required to access the -specified service on the specified server. If this parameter is -supplied, the <a href="smbclient.1.html#minusN"><strong>-N</strong></a> option (suppress password prompt) is assumed. -<p><br>There is no default password. If no password is supplied on the -command line (either by using this parameter or adding a password to -the <a href="smbclient.1.html#minusU"><strong>-U</strong></a> option (see below)) and the <a href="smbclient.1.html#minusN"><strong>-N</strong></a> option is not specified, -the client will prompt for a password, even if the desired service -does not require one. (If no password is required, simply press ENTER -to provide a null password.) -<p><br>Note: Some servers (including OS/2 and Windows for Workgroups) insist -on an uppercase password. Lowercase or mixed case passwords may be -rejected by these servers. -<p><br>Be cautious about including passwords in scripts. -<p><br><a name="minuss"></a> -<li><strong><strong>-s smb.conf</strong></strong> This parameter specifies the pathname to the -Samba configuration file, smb.conf. This file controls all aspects of -the Samba setup on the machine and smbclient also needs to read this -file. -<p><br><a name="minusO"></a> -<li><strong><strong>-O socket options</strong></strong> TCP socket options to set on the client -socket. See the <a href="smb.conf.5.html#socketoptions">socket options</a> -parameter in the <a href="smb.conf.5.html"><strong>smb.conf (5)</strong></a> manpage for -the list of valid options. -<p><br><a name="minusR"></a> -<li><strong><strong>-R name resolve order</strong></strong> This option allows the user of -smbclient to determine what name resolution services to use when -looking up the NetBIOS name of the host being connected to. -<p><br>The options are :"lmhosts", "host", "wins" and "bcast". They cause -names to be resolved as follows : -<p><br><ul> -<p><br><li > <strong>lmhosts</strong> : Lookup an IP address in the Samba lmhosts file. -The lmhosts file is stored in the same directory as the -<a href="smb.conf.5.html"><strong>smb.conf</strong></a> file. -<p><br><li > <strong>host</strong> : 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 depended for instance on IRIX or -Solaris this may be controlled by the <em>/etc/nsswitch.conf</em> file). -<p><br><li > <strong>wins</strong> : Query a name with the IP address listed in the <a href="smb.conf.5.html#winsserver"><strong>wins -server</strong></a> parameter in the smb.conf file. If -no WINS server has been specified this method will be ignored. -<p><br><li > <strong>bcast</strong> : Do a broadcast on each of the known local interfaces -listed in the <a href="smb.conf.5.html#interfaces"><strong>interfaces</strong></a> parameter -in the smb.conf file. This is the least reliable of the name resolution -methods as it depends on the target host being on a locally connected -subnet. -<p><br></ul> -<p><br>If this parameter is not set then the name resolve order defined -in the <a href="smb.conf.5.html"><strong>smb.conf</strong></a> file parameter -<a href="smb.conf.5.html#nameresolveorder">(<strong>name resolve order</strong>)</a> -will be used. -<p><br>The default order is lmhosts, host, wins, bcast and without this -parameter or any entry in the <a href="smb.conf.5.html#nameresolveorder"><strong>"name resolve -order"</strong></a> parameter of the -<a href="smb.conf.5.html"><strong>smb.conf</strong></a> file the name resolution methods -will be attempted in this order. -<p><br><a name="minusM"></a> -<li><strong><strong>-M NetBIOS name</strong></strong> This options allows you to send messages, -using the "WinPopup" protocol, to another computer. Once a connection -is established you then type your message, pressing ^D (control-D) to -end. -<p><br>If the receiving computer is running WinPopup the user will receive -the message and probably a beep. If they are not running WinPopup the -message will be lost, and no error message will occur. -<p><br>The message is also automatically truncated if the message is over -1600 bytes, as this is the limit of the protocol. -<p><br>One useful trick is to cat the message through <strong>smbclient</strong>. -For example: -<p><br><code>cat mymessage.txt | smbclient -M FRED</code> -<p><br>will send the message in the file <em>mymessage.txt</em> to the machine FRED. -<p><br>You may also find the <a href="smbclient.1.html#minusU"><strong>-U</strong></a> and <a href="smbclient.1.html#minusI"><strong>-I</strong></a> options useful, as they allow -you to control the FROM and TO parts of the message. -<p><br>See the <a href="smb.conf.5.html#messagecommand"><strong>message command</strong></a> -parameter in the <strong>smb.conf (5)</strong> for a description of how to handle -incoming WinPopup messages in Samba. -<p><br>Note: Copy WinPopup into the startup group on your WfWg PCs if you -want them to always be able to receive messages. -<p><br><a name="minusi"></a> -<li><strong><strong>-i scope</strong></strong> This specifies a NetBIOS scope that smbclient will use -to communicate with when generating NetBIOS names. For details on the -use of NetBIOS scopes, see rfc1001.txt and rfc1002.txt. NetBIOS scopes -are <em>very</em> rarely used, only set this parameter if you are the -system administrator in charge of all the NetBIOS systems you -communicate with. -<p><br><a name="minusN"></a> -<li><strong><strong>-N</strong></strong> If specified, this parameter suppresses the normal -password prompt from the client to the user. This is useful when -accessing a service that does not require a password. -<p><br>Unless a password is specified on the command line or this parameter -is specified, the client will request a password. -<p><br><a name="minusn"></a> -<li><strong><strong>-n NetBIOS name</strong></strong> By default, the client will use the local -machine's hostname (in uppercase) as its NetBIOS name. This parameter -allows you to override the host name and use whatever NetBIOS name you -wish. -<p><br><a name="minusd"></a> -<li><strong><strong>-d debuglevel</strong></strong> debuglevel is an integer from 0 to 10, or the -letter 'A'. -<p><br>The default value if this parameter is not specified is zero. -<p><br>The higher this value, the more detail will be logged to the log files -about the activities of the client. 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. -<p><br>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. If debuglevel is set to the -letter 'A', then <em>all</em> debug messages will be printed. This setting -is for developers only (and people who <em>really</em> want to know how the -code works internally). -<p><br>Note that specifying this parameter here will override the <a href="smb.conf.5.html#loglevel"><strong>log -level</strong></a> parameter in the <a href="smb.conf.5.html"><strong>smb.conf -(5)</strong></a> file. -<p><br><a name="minusP"></a> -<li><strong><strong>-P</strong></strong> This option is no longer used. The code in Samba2.0 -now lets the server decide the device type, so no printer specific -flag is needed. -<p><br><a name="minusp"></a> -<li><strong><strong>-p port</strong></strong> This number is the TCP port number that will be used -when making connections to the server. The standard (well-known) TCP -port number for an SMB/CIFS server is 139, which is the default. -<p><br><a name="minusl"></a> -<li><strong><strong>-l logfilename</strong></strong> If specified, logfilename specifies a base -filename into which operational data from the running client will be -logged. -<p><br>The default base name is specified at compile time. -<p><br>The base name is used to generate actual log file names. For example, -if the name specified was "log", the debug file would be -<code>log.client</code>. -<p><br>The log file generated is never removed by the client. -<p><br><a name="minush"></a> -<li><strong><strong>-h</strong></strong> Print the usage message for the client. -<p><br><a name="minusI"></a> -<li><strong><strong>-I IP address</strong></strong> IP address is the address of the server to -connect to. It should be specified in standard "a.b.c.d" notation. -<p><br>Normally the client would attempt to locate a named SMB/CIFS server by -looking it up via the NetBIOS name resolution mechanism described -above in the <a href="smbclient.1.html#minusR"><strong>name resolve order</strong></a> parameter -above. Using this parameter will force the client to assume that the -server is on the machine with the specified IP address and the NetBIOS -name component of the resource being connected to will be ignored. -<p><br>There is no default for this parameter. If not supplied, it will be -determined automatically by the client as described above. -<p><br><a name="minusE"></a> -<li><strong><strong>-E</strong></strong> This parameter causes the client to write messages to the -standard error stream (stderr) rather than to the standard output -stream. -<p><br>By default, the client writes messages to standard output - typically -the user's tty. -<p><br><a name="minusU"></a> -<li><strong><strong>-U username</strong></strong> This specifies the user name that will be used by -the client to make a connection, assuming your server is not a downlevel -server that is running a protocol level that uses passwords on shares, -not on usernames. -<p><br>Some servers are fussy about the case of this name, and some insist -that it must be a valid NetBIOS name. -<p><br>If no username is supplied, it will default to an uppercase version of -the environment variable <code>USER</code> or <code>LOGNAME</code> in that order. If no -username is supplied and neither environment variable exists the -username "GUEST" will be used. -<p><br>If the <code>USER</code> environment variable contains a '%' character, -everything after that will be treated as a password. This allows you -to set the environment variable to be <code>USER=username%password</code> so -that a password is not passed on the command line (where it may be -seen by the ps command). -<p><br>If the service you are connecting to requires a password, it can be -supplied using the <a href="smbclient.1.html#minusU"><strong>-U</strong></a> option, by appending a percent symbol ("%") -then the password to username. For example, to attach to a service as -user <code>"fred"</code> with password <code>"secret"</code>, you would specify. <br> -<p><br><code>-U fred%secret</code> <br> -<p><br>on the command line. Note that there are no spaces around the percent -symbol. -<p><br>You can specify a domain name as part of the username by using a username of the form "DOMAIN/user" or "DOMAIN\user". -<p><br>If you specify the password as part of username then the <a href="smbclient.1.html#minusN"><strong>-N</strong></a> option -(suppress password prompt) is assumed. -<p><br>If you specify the password as a parameter <em>AND</em> as part of username -then the password as part of username will take precedence. Putting -nothing before or nothing after the percent symbol will cause an empty -username or an empty password to be used, respectively. -<p><br>The password may also be specified by setting up an environment -variable called <code>PASSWD</code> that contains the users password. Note -that this may be very insecure on some systems but on others allows -users to script smbclient commands without having a password appear in -the command line of a process listing. -<p><br>A third option is to use a credentials file which contains -the plaintext of the username and password. This option is -mainly provided for scripts where the admin doesn't desire to -pass the credentials on the command line or via environment variables. -If this method is used, make certain that the permissions on the file -restrict access from unwanted users. See the <strong>-A</strong> for more details. -<p><br>Note: Some servers (including OS/2 and Windows for Workgroups) insist -on an uppercase password. Lowercase or mixed case passwords may be -rejected by these servers. -<p><br>Be cautious about including passwords in scripts or in the -<code>PASSWD</code> environment variable. Also, on many systems the command -line of a running process may be seen via the <code>ps</code> command to be -safe always allow smbclient to prompt for a password and type it in -directly. -<p><br><a name="minusA"></a> -<li><strong><strong>-A <filename></strong></strong> This option allows you to specify a file from which -to read the username and password used in the connection. The format -of the file is -<p><br><code>username = <value></code> <br> -<code>password = <value</code> <br> -<p><br>Make certain that the permissions on the file restrict access from -unwanted users. -<p><br><a name="minusL"></a> -<li><strong><strong>-L</strong></strong> This option allows you to look at what services are -available on a server. You use it as <code>"smbclient -L host"</code> and a -list should appear. The <a href="smbclient.1.html#minusI"><strong>-I</strong></a> option may be useful if your NetBIOS -names don't match your tcp/ip dns host names or if you are trying to -reach a host on another network. -<p><br><a name="minust"></a> -<li><strong><strong>-t terminal code</strong></strong> This option tells smbclient how to interpret -filenames coming from the remote server. Usually Asian language -multibyte UNIX implementations use different character sets than -SMB/CIFS servers (<em>EUC</em> instead of <em>SJIS</em> for example). Setting -this parameter will let smbclient convert between the UNIX filenames -and the SMB filenames correctly. This option has not been seriously -tested and may have some problems. -<p><br>The terminal codes include <code>sjis</code>, <code>euc</code>, <code>jis7</code>, <code>jis8</code>, -<code>junet</code>, <code>hex</code>, <code>cap</code>. This is not a complete list, check the -Samba source code for the complete list. -<p><br><a name="minusm"></a> -<li><strong><strong>-m max protocol level</strong></strong> With the new code in Samba2.0, -<strong>smbclient</strong> always attempts to connect at the maximum -protocols level the server supports. This parameter is -preserved for backwards compatibility, but any string -following the <strong>-m</strong> will be ignored. -<p><br><a name="minusb"></a> -<li><strong><strong>-b buffersize</strong></strong> This option changes the transmit/send buffer -size when getting or putting a file from/to the server. The default -is 65520 bytes. Setting this value smaller (to 1200 bytes) has been -observed to speed up file transfers to and from a Win9x server. -<p><br><a name="minusW"></a> -<li><strong><strong>-W WORKGROUP</strong></strong> Override the default workgroup specified in the -<a href="smb.conf.5.html#workgroup"><strong>workgroup</strong></a> parameter of the -<a href="smb.conf.5.html"><strong>smb.conf</strong></a> file for this connection. This may -be needed to connect to some servers. -<p><br><a name="minusT"></a> <li><strong><strong>-T tar options</strong></strong> smbclient may be used to create -<strong>tar (1)</strong> compatible backups of all the files on an SMB/CIFS -share. The secondary tar flags that can be given to this option are : -<p><br><ul> -<p><br><li><strong><strong>c</strong></strong> Create a tar file on UNIX. Must be followed by the - name of a tar file, tape device or <code>"-"</code> for standard output. If - using standard output you must turn the log level to its lowest value - <code>-d0</code> to avoid corrupting your tar file. This flag is - mutually exclusive with the <strong>x</strong> flag. -<p><br><li><strong><strong>x</strong></strong> Extract (restore) a local tar file back to a - share. Unless the <a href="smbclient.1.html#minusD"><strong>-D</strong></a> option is given, the tar files will be - restored from the top level of the share. Must be followed by the name - of the tar file, device or <code>"-"</code> for standard input. Mutually exclusive - with the <strong>c</strong> flag. Restored files have their creation times (mtime) - set to the date saved in the tar file. Directories currently do not - get their creation dates restored properly. -<p><br><li><strong><strong>I</strong></strong> Include files and directories. Is the default - behavior when filenames are specified above. Causes tar files to - be included in an extract or create (and therefore everything else to - be excluded). See example below. Filename globbing works - in one of two ways. See <strong>r</strong> below. -<p><br><li><strong><strong>X</strong></strong> Exclude files and directories. Causes tar files to - be excluded from an extract or create. See example below. Filename - globbing works in one of two ways now. See <strong>r</strong> below. -<p><br><li><strong><strong>b</strong></strong> Blocksize. Must be followed by a valid (greater than - zero) blocksize. Causes tar file to be written out in - blocksize*TBLOCK (usually 512 byte) blocks. -<p><br><li><strong><strong>g</strong></strong> Incremental. Only back up files that have the - archive bit set. Useful only with the <strong>c</strong> flag. -<p><br><li><strong><strong>q</strong></strong> Quiet. Keeps tar from printing diagnostics as it - works. This is the same as tarmode quiet. -<p><br><li><strong><strong>r</strong></strong> Regular expression include or exclude. Uses regular - regular expression matching for excluding or excluding files if - compiled with HAVE_REGEX_H. However this mode can be very slow. If - not compiled with HAVE_REGEX_H, does a limited wildcard match on * and - ?. -<p><br><li><strong><strong>N</strong></strong> Newer than. Must be followed by the name of a file - whose date is compared against files found on the share during a - create. Only files newer than the file specified are backed up to the - tar file. Useful only with the <strong>c</strong> flag. -<p><br><li><strong><strong>a</strong></strong> Set archive bit. Causes the archive bit to be reset - when a file is backed up. Useful with the <strong>g</strong> and <strong>c</strong> flags. -<p><br></ul> -<p><br><em>Tar Long File Names</em> -<p><br>smbclient's tar option now supports long file names both on backup and -restore. However, the full path name of the file must be less than -1024 bytes. Also, when a tar archive is created, smbclient's tar -option places all files in the archive with relative names, not -absolute names. -<p><br><em>Tar Filenames</em> -<p><br>All file names can be given as DOS path names (with <code>\</code> as the -component separator) or as UNIX path names (with <code>/</code> as the -component separator). -<p><br><em>Examples</em> -<p><br><ul> -<p><br><li > Restore from tar file backup.tar into myshare on mypc (no password on share). -<p><br><code>smbclient //mypc/myshare "" -N -Tx backup.tar</code> -<p><br><li > Restore everything except users/docs -<p><br><code>smbclient //mypc/myshare "" -N -TXx backup.tar users/docs</code> -<p><br><li > Create a tar file of the files beneath users/docs. -<p><br><code>smbclient //mypc/myshare "" -N -Tc backup.tar users/docs</code> -<p><br><li > Create the same tar file as above, but now use a DOS path name. -<p><br><code>smbclient //mypc/myshare "" -N -tc backup.tar users\edocs</code> -<p><br><li > Create a tar file of all the files and directories in the share. -<p><br><code>smbclient //mypc/myshare "" -N -Tc backup.tar *</code> -<p><br></ul> -<p><br><a name="minusD"></a> -<li><strong><strong>-D initial directory</strong></strong> Change to initial directory before -starting. Probably only of any use with the tar <a href="smbclient.1.html#minusT"><strong>-T</strong></a> option. -<p><br><a name="minusc"></a> -<li><strong><strong>-c command string</strong></strong> command string is a semicolon separated -list of commands to be executed instead of prompting from stdin. -<a href="smbclient.1.html#minusN"><strong>-N</strong></a> is implied by <strong>-c</strong>. -<p><br>This is particularly useful in scripts and for printing stdin to the -server, e.g. <code>-c 'print -'</code>. -<p><br></ul> -<p><br><a name="OPERATIONS"></a> -<h2>OPERATIONS</h2> - -<p><br>Once the client is running, the user is presented with a prompt : -<p><br><code>smb:\></code> -<p><br>The backslash ("\") indicates the current working directory on the -server, and will change if the current working directory is changed. -<p><br>The prompt indicates that the client is ready and waiting to carry out -a user command. Each command is a single word, optionally followed by -parameters specific to that command. Command and parameters are -space-delimited unless these notes specifically state otherwise. All -commands are case-insensitive. Parameters to commands may or may not -be case sensitive, depending on the command. -<p><br>You can specify file names which have spaces in them by quoting the -name with double quotes, for example "a long file name". -<p><br>Parameters shown in square brackets (e.g., "[parameter]") are -optional. If not given, the command will use suitable -defaults. Parameters shown in angle brackets (e.g., "<parameter>") are -required. -<p><br>Note that all commands operating on the server are actually performed -by issuing a request to the server. Thus the behavior may vary from -server to server, depending on how the server was implemented. -<p><br>The commands available are given here in alphabetical order. -<p><br><ul> -<p><br><a name="questionmark"></a> <li><strong><strong>? [command]</strong></strong> If "command" is specified, -the <strong>?</strong> command will display a brief informative message about the -specified command. If no command is specified, a list of available -commands will be displayed. -<p><br><a name="exclaimationmark"></a> <li><strong><strong>! [shell command]</strong></strong> If "shell command" -is specified, the <strong>!</strong> command will execute a shell locally and run -the specified shell command. If no command is specified, a local shell -will be run. -<p><br><a name="cd"></a> <li><strong><strong>cd [directory name]</strong></strong> If "directory name" is -specified, the current working directory on the server will be changed -to the directory specified. This operation will fail if for any reason -the specified directory is inaccessible. -<p><br>If no directory name is specified, the current working directory on -the server will be reported. -<p><br><a name="del"></a> <li><strong><strong>del <mask></strong></strong> The client will request that the server -attempt to delete all files matching "mask" from the current working -directory on the server. -<p><br><a name="dir"></a> <li><strong><strong>dir <mask></strong></strong> A list of the files matching "mask" in -the current working directory on the server will be retrieved from the -server and displayed. -<p><br><a name="exit"></a> <li><strong><strong>exit</strong></strong> Terminate the connection with the server and -exit from the program. -<p><br><a name="get"></a> <li><strong><strong>get <remote file name> [local file name]</strong></strong> Copy the -file called "remote file name" from the server to the machine running -the client. If specified, name the local copy "local file name". Note -that all transfers in smbclient are binary. See also the -<a href="smbclient.1.html#lowercase"><strong>lowercase</strong></a> command. -<p><br><a name="help"></a> <li><strong><strong>help [command]</strong></strong> See the <a href="smbclient.1.html#questionmark"><strong>?</strong></a> -command above. -<p><br><a name="lcd"></a> <li><strong><strong>lcd [directory name]</strong></strong> If "directory name" is -specified, the current working directory on the local machine will -be changed to the directory specified. This operation will fail if for -any reason the specified directory is inaccessible. -<p><br>If no directory name is specified, the name of the current working -directory on the local machine will be reported. -<p><br><a name="lowercase"></a> <li><strong><strong>lowercase</strong></strong> Toggle lowercasing of filenames -for the <a href="smbclient.1.html#get"><strong>get</strong></a> and <a href="smbclient.1.html#mget"><strong>mget</strong></a> commands. -<p><br>When lowercasing is toggled ON, local filenames are converted to -lowercase when using the <a href="smbclient.1.html#get"><strong>get</strong></a> and <a href="smbclient.1.html#mget"><strong>mget</strong></a> -commands. This is often useful when copying (say) MSDOS files from a -server, because lowercase filenames are the norm on UNIX systems. -<p><br><a name="ls"></a> <li><strong><strong>ls <mask></strong></strong> See the <a href="smbclient.1.html#dir"><strong>dir</strong></a> command above. -<p><br><a name="mask"></a> <li><strong><strong>mask <mask></strong></strong> This command allows the user to set -up a mask which will be used during recursive operation of the -<a href="smbclient.1.html#mget"><strong>mget</strong></a> and <a href="smbclient.1.html#mput"><strong>mput</strong></a> commands. -<p><br>The masks specified to the <a href="smbclient.1.html#mget"><strong>mget</strong></a> and -<a href="smbclient.1.html#mput"><strong>mput</strong></a> commands act as filters for directories rather -than files when recursion is toggled ON. -<p><br>The mask specified with the .B mask command is necessary to filter -files within those directories. For example, if the mask specified in -an <a href="smbclient.1.html#mget"><strong>mget</strong></a> command is "source*" and the mask specified -with the mask command is "*.c" and recursion is toggled ON, the -<a href="smbclient.1.html#mget"><strong>mget</strong></a> command will retrieve all files matching "*.c" in -all directories below and including all directories matching "source*" -in the current working directory. -<p><br>Note that the value for mask defaults to blank (equivalent to "*") and -remains so until the mask command is used to change it. It retains the -most recently specified value indefinitely. To avoid unexpected -results it would be wise to change the value of .I mask back to "*" -after using the <a href="smbclient.1.html#mget"><strong>mget</strong></a> or <a href="smbclient.1.html#mput"><strong>mput</strong></a> commands. -<p><br><a name="md"></a> <li><strong><strong>md <directory name></strong></strong> See the <a href="smbclient.1.html#mkdir"><strong>mkdir</strong></a> -command. -<p><br><a name="mget"></a> <li><strong><strong>mget <mask></strong></strong> Copy all files matching mask from the -server to the machine running the client. -<p><br>Note that mask is interpreted differently during recursive operation -and non-recursive operation - refer to the <a href="smbclient.1.html#recurse"><strong>recurse</strong></a> -and <a href="smbclient.1.html#mask"><strong>mask</strong></a> commands for more information. Note that all -transfers in .B smbclient are binary. See also the -<a href="smbclient.1.html#lowercase"><strong>lowercase</strong></a> command. -<p><br><a name="mkdir"></a> <li><strong><strong>mkdir <directory name></strong></strong> Create a new directory on -the server (user access privileges permitting) with the specified -name. -<p><br><a name="mput"></a> <li><strong><strong>mput <mask></strong></strong> Copy all files matching mask in -the current working directory on the local machine to the current -working directory on the server. -<p><br>Note that mask is interpreted differently during recursive operation -and non-recursive operation - refer to the <a href="smbclient.1.html#recurse"><strong>recurse</strong></a> -and <a href="smbclient.1.html#mask"><strong>mask</strong></a> commands for more information. Note that all -transfers in .B smbclient are binary. -<p><br><a name="print"></a> <li><strong><strong>print <file name></strong></strong> Print the specified file -from the local machine through a printable service on the server. -<p><br>See also the <a href="smbclient.1.html#printmode"><strong>printmode</strong></a> command. -<p><br><a name="printmode"></a> <li><strong><strong>printmode <graphics or text></strong></strong> Set the print -mode to suit either binary data (such as graphical information) or -text. Subsequent print commands will use the currently set print -mode. -<p><br><a name="prompt"></a> <li><strong><strong>prompt</strong></strong> Toggle prompting for filenames during -operation of the <a href="smbclient.1.html#mget"><strong>mget</strong></a> and <a href="smbclient.1.html#mput"><strong>mput</strong></a> -commands. -<p><br>When toggled ON, the user will be prompted to confirm the transfer of -each file during these commands. When toggled OFF, all specified files -will be transferred without prompting. -<p><br><a name="put"></a> <li><strong><strong>put <local file name> [remote file name]</strong></strong> Copy the -file called "local file name" from the machine running the client to -the server. If specified, name the remote copy "remote file name". -Note that all transfers in smbclient are binary. See also the -<a href="smbclient.1.html#lowercase"><strong>lowercase</strong></a> command. -<p><br><a name="queue"></a> <li><strong><strong>queue</strong></strong> Displays the print queue, showing the job -id, name, size and current status. -<p><br><a name="quit"></a> <li><strong><strong>quit</strong></strong> See the <a href="smbclient.1.html#exit"><strong>exit</strong></a> command. -<p><br><a name="rd"></a> <li><strong><strong>rd <directory name></strong></strong> See the <a href="smbclient.1.html#rmdir"><strong>rmdir</strong></a> -command. -<p><br><a name="recurse"></a> <li><strong><strong>recurse</strong></strong> Toggle directory recursion for the -commands <a href="smbclient.1.html#mget"><strong>mget</strong></a> and <a href="smbclient.1.html#mput"><strong>mput</strong></a>. -<p><br>When toggled ON, these commands will process all directories in the -source directory (i.e., the directory they are copying .IR from ) and -will recurse into any that match the mask specified to the -command. Only files that match the mask specified using the -<a href="smbclient.1.html#mask"><strong>mask</strong></a> command will be retrieved. See also the -<a href="smbclient.1.html#mask"><strong>mask</strong></a> command. -<p><br>When recursion is toggled OFF, only files from the current working -directory on the source machine that match the mask specified to the -<a href="smbclient.1.html#mget"><strong>mget</strong></a> or <a href="smbclient.1.html#mput"><strong>mput</strong></a> commands will be copied, -and any mask specified using the <a href="smbclient.1.html#mask"><strong>mask</strong></a> command will be -ignored. -<p><br><a name="rm"></a> <li><strong><strong>rm <mask></strong></strong> Remove all files matching mask from -the current working directory on the server. -<p><br><a name="rmdir"></a> <li><strong><strong>rmdir <directory name></strong></strong> Remove the specified -directory (user access privileges permitting) from the server. -<p><br><a name="tar"></a> <li><strong><strong>tar <c|x>[IXbgNa]</strong></strong> Performs a tar operation - see -the <a href="smbclient.1.html#minusT"><strong>-T</strong></a> command line option above. Behavior may be -affected by the <a href="smbclient.1.html#tarmode"><strong>tarmode</strong></a> command (see below). Using -g (incremental) and N (newer) will affect tarmode settings. Note that -using the "-" option with tar x may not work - use the command line -option instead. -<p><br><a name="blocksize"></a> <li><strong><strong>blocksize <blocksize></strong></strong> Blocksize. Must be -followed by a valid (greater than zero) blocksize. Causes tar file to -be written out in blocksize*TBLOCK (usually 512 byte) blocks. -<p><br><a name="tarmode"></a> <li><strong><strong>tarmode <full|inc|reset|noreset></strong></strong> Changes tar's -behavior with regard to archive bits. In full mode, tar will back up -everything regardless of the archive bit setting (this is the default -mode). In incremental mode, tar will only back up files with the -archive bit set. In reset mode, tar will reset the archive bit on all -files it backs up (implies read/write share). -<p><br><a name="setmode"></a> <li><strong><strong>setmode <filename> <perm=[+|\-]rsha></strong></strong> A version -of the DOS attrib command to set file permissions. For example: -<p><br><code>setmode myfile +r</code> -<p><br>would make myfile read only. -<p><br></ul> -<p><br><a name="NOTES"></a> -<h2>NOTES</h2> - -<p><br>Some servers are fussy about the case of supplied usernames, -passwords, share names (AKA service names) and machine names. If you -fail to connect try giving all parameters in uppercase. -<p><br>It is often necessary to use the <a href="smbclient.1.html#minusn"><strong>-n</strong></a> 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. -<p><br>smbclient supports long file names where the server supports the -LANMAN2 protocol or above. -<p><br><a name="ENVIRONMENTVARIABLES"></a> -<h2>ENVIRONMENT VARIABLES</h2> - -<p><br>The variable <strong>USER</strong> may contain the username of the person using the -client. This information is used only if the protocol level is high -enough to support session-level passwords. -<p><br>The variable <strong>PASSWD</strong> may contain the password of the person using -the client. This information is used only if the protocol level is -high enough to support session-level passwords. -<p><br><a name="INSTALLATION"></a> -<h2>INSTALLATION</h2> - -<p><br>The location of the client program is a matter for individual system -administrators. The following are thus suggestions only. -<p><br>It is recommended that the smbclient software be installed in the -/usr/local/samba/bin or /usr/samba/bin directory, this directory -readable by all, writeable only by root. The client program itself -should be executable by all. The client should <em>NOT</em> be setuid or -setgid! -<p><br>The client log files should be put in a directory readable and -writeable only by the user. -<p><br>To test the client, you will need to know the name of a running -SMB/CIFS server. It is possible to run <a href="smbd.8.html"><strong>smbd (8)</strong></a> -an ordinary user - running that server as a daemon on a -user-accessible port (typically any port number over 1024) would -provide a suitable test server. -<p><br><a name="DIAGNOSTICS"></a> -<h2>DIAGNOSTICS</h2> - -<p><br>Most diagnostics issued by the client are logged in a specified log -file. The log file name is specified at compile time, but may be -overridden on the command line. -<p><br>The number and nature of diagnostics available depends on the debug -level used by the client. If you have problems, set the debug level to -3 and peruse the log files. -<p><br><a name="VERSION"></a> -<h2>VERSION</h2> - -<p><br>This man page is correct for version 2.0 of the Samba suite. -<p><br><a name="AUTHOR"></a> -<h2>AUTHOR</h2> - -<p><br>The original Samba software and related utilities were created by -Andrew Tridgell <a href="mailto:samba@samba.org"><em>samba@samba.org</em></a>. Samba is now developed -by the Samba Team as an Open Source project similar to the way the -Linux kernel is developed. -<p><br>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 -<a href="ftp://ftp.icce.rug.nl/pub/unix/"><strong>ftp://ftp.icce.rug.nl/pub/unix/</strong></a>) -and updated for the Samba2.0 release by Jeremy Allison. -<a href="mailto:samba@samba.org"><em>samba@samba.org</em></a>. -<p><br>See <a href="samba.7.html"><strong>samba (7)</strong></a> to find out how to get a full -list of contributors and details on how to submit bug reports, -comments etc. -</body> -</html> +<HTML +><HEAD +><TITLE +>smbclient</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet Version 1.57"></HEAD +><BODY +CLASS="REFENTRY" +BGCOLOR="#FFFFFF" +TEXT="#000000" +LINK="#0000FF" +VLINK="#840084" +ALINK="#0000FF" +><H1 +><A +NAME="SMBCLIENT" +>smbclient</A +></H1 +><DIV +CLASS="REFNAMEDIV" +><A +NAME="AEN5" +></A +><H2 +>Name</H2 +>smbclient -- ftp-like client to access SMB/CIFS resources + on servers</DIV +><DIV +CLASS="REFSYNOPSISDIV" +><A +NAME="AEN8" +></A +><H2 +>Synopsis</H2 +><P +><B +CLASS="COMMAND" +>smbclient</B +> {servicename} [-b <buffer size>] [-d debuglevel] [-D Directory] [-S server] [-U username] [-W workgroup] [-M <netbios name>] [-m maxprotocol] [-A authfile] [-N] [-l logfile] [-L <netbios name>] [-I destinationIP] [-E <terminal code>] [-c <command string>] [-i scope] [-O <socket options>] [-p port] [-R <name resolve order>] [-s <smb config file>] [-T<c|x>IXFqgbNan] [password]</P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN34" +></A +><H2 +>DESCRIPTION</H2 +><P +>This tool is part of the <A +HREF="samba.7.html" +TARGET="_top" +> Samba</A +> suite.</P +><P +><B +CLASS="COMMAND" +>smbclient</B +> is a client that can + 'talk' to an SMB/CIFS server. It offers an interface + similar to that of the ftp program (see <B +CLASS="COMMAND" +>ftp(1)</B +>). + Operations include things like getting files from the server + to the local machine, putting files from the local machine to + the server, retrieving directory information from the server + and so on. </P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN41" +></A +><H2 +>OPTIONS</H2 +><P +></P +><DIV +CLASS="VARIABLELIST" +><DL +><DT +>servicename</DT +><DD +><P +>servicename is the name of the service + you want to use on the server. A service name takes the form + <TT +CLASS="FILENAME" +>//server/service</TT +> where <TT +CLASS="PARAMETER" +><I +>server + </I +></TT +> is the NetBIOS name of the SMB/CIFS server + offering the desired service and <TT +CLASS="PARAMETER" +><I +>service</I +></TT +> + is the name of the service offered. Thus to connect to + the service "printer" on the SMB/CIFS server "smbserver", + you would use the servicename <TT +CLASS="FILENAME" +>//smbserver/printer + </TT +></P +><P +>Note that the server name required is NOT necessarily + the IP (DNS) host name of the server ! The name required is + a NetBIOS server name, which may or may not be the + same as the IP hostname of the machine running the server. + </P +><P +>The server name is looked up according to either + the <TT +CLASS="PARAMETER" +><I +>-R</I +></TT +> parameter to smbclient or + using the name resolve order parameter in the smb.conf file, + allowing an administrator to change the order and methods + by which server names are looked up. </P +></DD +><DT +>password</DT +><DD +><P +>The password required to access the specified + service on the specified server. If this parameter is + supplied, the <TT +CLASS="PARAMETER" +><I +>-N</I +></TT +> option (suppress + password prompt) is assumed. </P +><P +>There is no default password. If no password is supplied + on the command line (either by using this parameter or adding + a password to the <TT +CLASS="PARAMETER" +><I +>-U</I +></TT +> option (see + below)) and the <TT +CLASS="PARAMETER" +><I +>-N</I +></TT +> option is not + specified, the client will prompt for a password, even if + the desired service does not require one. (If no password is + required, simply press ENTER to provide a null password.) + </P +><P +>Note: Some servers (including OS/2 and Windows for + Workgroups) insist on an uppercase password. Lowercase + or mixed case passwords may be rejected by these servers. + </P +><P +>Be cautious about including passwords in scripts. + </P +></DD +><DT +>-s smb.conf</DT +><DD +><P +>Specifies the location of the all important + <TT +CLASS="FILENAME" +>smb.conf</TT +> file. </P +></DD +><DT +>-O socket options</DT +><DD +><P +>TCP socket options to set on the client + socket. See the socket options parameter in the <TT +CLASS="FILENAME" +> smb.conf (5)</TT +> manpage for the list of valid + options. </P +></DD +><DT +>name resolve order (G)</DT +><DD +><P +>This option is used by the programs in the Samba + suite 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.</P +><P +>The options are :"lmhosts", "host", "wins" and "bcast". They + cause names to be resolved as follows :</P +><P +></P +><UL +><LI +><P +><TT +CLASS="CONSTANT" +>lmhosts</TT +> : 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 <A +HREF="lmhosts.5.html" +TARGET="_top" +>lmhosts(5)</A +> for details) then + any name type matches for lookup.</P +></LI +><LI +><P +><TT +CLASS="CONSTANT" +>host</TT +> : Do a standard host + name to IP address resolution, using the system <TT +CLASS="FILENAME" +>/etc/hosts + </TT +>, NIS, or DNS lookups. This method of name resolution + is operating system depended for instance on IRIX or Solaris this + may be controlled by the <TT +CLASS="FILENAME" +>/etc/nsswitch.conf</TT +> + 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.</P +></LI +><LI +><P +><TT +CLASS="CONSTANT" +>wins</TT +> : Query a name with + the IP address listed in the <TT +CLASS="PARAMETER" +><I +>wins server</I +></TT +> + parameter. If no WINS server has + been specified this method will be ignored.</P +></LI +><LI +><P +><TT +CLASS="CONSTANT" +>bcast</TT +> : Do a broadcast on + each of the known local interfaces listed in the + <TT +CLASS="PARAMETER" +><I +>interfaces</I +></TT +> + parameter. This is the least reliable of the name resolution + methods as it depends on the target host being on a locally + connected subnet.</P +></LI +></UL +><P +>If this parameter is not set then the name resolve order + defined in the <TT +CLASS="FILENAME" +>smb.conf</TT +> file parameter + (name resolve order) will be used. </P +><P +>The default order is lmhosts, host, wins, bcast and without + this parameter or any entry in the <TT +CLASS="PARAMETER" +><I +>name resolve order + </I +></TT +> parameter of the smb.conf file the name resolution + methods will be attempted in this order. </P +></DD +><DT +>-M NetBIOS name</DT +><DD +><P +>This options allows you to send messages, using + the "WinPopup" protocol, to another computer. Once a connection is + established you then type your message, pressing ^D (control-D) to + end. </P +><P +>If the receiving computer is running WinPopup the user will + receive the message and probably a beep. If they are not running + WinPopup the message will be lost, and no error message will + occur. </P +><P +>The message is also automatically truncated if the message + is over 1600 bytes, as this is the limit of the protocol. + </P +><P +>One useful trick is to cat the message through + <B +CLASS="COMMAND" +>smbclient</B +>. For example: <B +CLASS="COMMAND" +> cat mymessage.txt | smbclient -M FRED </B +> will + send the message in the file <TT +CLASS="FILENAME" +>mymessage.txt</TT +> + to the machine FRED. </P +><P +>You may also find the <TT +CLASS="PARAMETER" +><I +>-U</I +></TT +> and + <TT +CLASS="PARAMETER" +><I +>-I</I +></TT +> options useful, as they allow you to + control the FROM and TO parts of the message. </P +><P +>See the message command parameter in the <TT +CLASS="FILENAME" +> smb.conf(5)</TT +> for a description of how to handle incoming + WinPopup messages in Samba. </P +><P +><I +CLASS="EMPHASIS" +>Note</I +>: Copy WinPopup into the startup group + on your WfWg PCs if you want them to always be able to receive + messages. </P +></DD +><DT +>-i scope</DT +><DD +><P +>This specifies a NetBIOS scope that smbclient will + use to communicate with when generating NetBIOS names. For details + on the use of NetBIOS scopes, see rfc1001.txt and rfc1002.txt. + NetBIOS scopes are <I +CLASS="EMPHASIS" +>very</I +> rarely used, only set + this parameter if you are the system administrator in charge of all + the NetBIOS systems you communicate with. </P +></DD +><DT +>-N</DT +><DD +><P +>If specified, this parameter suppresses the normal + password prompt from the client to the user. This is useful when + accessing a service that does not require a password. </P +><P +>Unless a password is specified on the command line or + this parameter is specified, the client will request a + password.</P +></DD +><DT +>-n NetBIOS name</DT +><DD +><P +>By default, the client will use the local + machine's hostname (in uppercase) as its NetBIOS name. This parameter + allows you to override the host name and use whatever NetBIOS + name you wish. </P +></DD +><DT +>-d debuglevel</DT +><DD +><P +>debuglevel is an integer from 0 to 10, or + the letter 'A'. </P +><P +>The default value if this parameter is not specified + is zero. </P +><P +>The higher this value, the more detail will be logged to + the log files about the activities of the + client. 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. </P +><P +>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. If debuglevel is set to the letter 'A', then <I +CLASS="EMPHASIS" +>all + </I +> debug messages will be printed. This setting + is for developers only (and people who <I +CLASS="EMPHASIS" +>really</I +> want + to know how the code works internally). </P +><P +>Note that specifying this parameter here will override + the log level parameter in the <B +CLASS="COMMAND" +>smb.conf (5)</B +> + file. </P +></DD +><DT +>-p port</DT +><DD +><P +>This number is the TCP port number that will be used + when making connections to the server. The standard (well-known) + TCP port number for an SMB/CIFS server is 139, which is the + default. </P +></DD +><DT +>-l logfilename</DT +><DD +><P +>If specified, logfilename specifies a base filename + into which operational data from the running client will be + logged. </P +><P +>The default base name is specified at compile time.</P +><P +>The base name is used to generate actual log file names. + For example, if the name specified was "log", the debug file + would be <TT +CLASS="FILENAME" +>log.client</TT +>.</P +><P +>The log file generated is never removed by the client. + </P +></DD +><DT +>-h</DT +><DD +><P +>Print the usage message for the client. </P +></DD +><DT +>-I IP-address</DT +><DD +><P +>IP address is the address of the server to connect to. + It should be specified in standard "a.b.c.d" notation. </P +><P +>Normally the client would attempt to locate a named + SMB/CIFS server by looking it up via the NetBIOS name resolution + mechanism described above in the <TT +CLASS="PARAMETER" +><I +>name resolve order</I +></TT +> + parameter above. Using this parameter will force the client + to assume that the server is on the machine with the specified IP + address and the NetBIOS name component of the resource being + connected to will be ignored. </P +><P +>There is no default for this parameter. If not supplied, + it will be determined automatically by the client as described + above. </P +></DD +><DT +>-E</DT +><DD +><P +>This parameter causes the client to write messages + to the standard error stream (stderr) rather than to the standard + output stream. </P +><P +>By default, the client writes messages to standard output + - typically the user's tty. </P +></DD +><DT +>-U username[%pass]</DT +><DD +><P +>Sets the SMB username or username and password. + If %pass is not specified, The user will be prompted. The client + will first check the USER environment variable, then the + <TT +CLASS="PARAMETER" +><I +>$LOGNAME</I +></TT +> variable and if either exist, the + string is uppercased. Anything in these variables following a '%' + sign will be treated as the password. If these environmental + variables are not found, the username <TT +CLASS="CONSTANT" +>GUEST</TT +> + is used. </P +><P +>If the password is not included in these environment + variables (using the %pass syntax), rpcclient will look for + a <TT +CLASS="PARAMETER" +><I +>$PASSWD</I +></TT +> environment variable from which + to read the password. </P +><P +>A third option is to use a credentials file which + contains the plaintext of the username and password. This + option is mainly provided for scripts where the admin doesn't + desire to pass the credentials on the command line or via environment + variables. If this method is used, make certain that the permissions + on the file restrict access from unwanted users. See the + <TT +CLASS="PARAMETER" +><I +>-A</I +></TT +> for more details. </P +><P +>Be cautious about including passwords in scripts or in + the <TT +CLASS="PARAMETER" +><I +>$PASSWD</I +></TT +> environment variable. Also, on + many systems the command line of a running process may be seen + via the <B +CLASS="COMMAND" +>ps</B +> command to be safe always allow + <B +CLASS="COMMAND" +>rpcclient</B +> to prompt for a password and type + it in directly. </P +></DD +><DT +>-A filename</DT +><DD +><P +>This option allows + you to specify a file from which to read the username and + password used in the connection. The format of the file is + </P +><P +><PRE +CLASS="PROGRAMLISTING" +>username = <value> +password = <value> + </PRE +></P +><P +>Make certain that the permissions on the file restrict + access from unwanted users. </P +></DD +><DT +>-L</DT +><DD +><P +>This option allows you to look at what services + are available on a server. You use it as <B +CLASS="COMMAND" +>smbclient -L + host</B +> and a list should appear. The <TT +CLASS="PARAMETER" +><I +>-I + </I +></TT +> option may be useful if your NetBIOS names don't + match your tcp/ip dns host names or if you are trying to reach a + host on another network. </P +></DD +><DT +>-t terminal code</DT +><DD +><P +>This option tells smbclient how to interpret + filenames coming from the remote server. Usually Asian language + multibyte UNIX implementations use different character sets than + SMB/CIFS servers (<I +CLASS="EMPHASIS" +>EUC</I +> instead of <I +CLASS="EMPHASIS" +> SJIS</I +> for example). Setting this parameter will let + <B +CLASS="COMMAND" +>smbclient</B +> convert between the UNIX filenames and + the SMB filenames correctly. This option has not been seriously tested + and may have some problems. </P +><P +>The terminal codes include CWsjis, CWeuc, CWjis7, CWjis8, + CWjunet, CWhex, CWcap. This is not a complete list, check the Samba + source code for the complete list. </P +></DD +><DT +>-b buffersize</DT +><DD +><P +>This option changes the transmit/send buffer + size when getting or putting a file from/to the server. The default + is 65520 bytes. Setting this value smaller (to 1200 bytes) has been + observed to speed up file transfers to and from a Win9x server. + </P +></DD +><DT +>-W WORKGROUP</DT +><DD +><P +>Override the default workgroup specified in the + workgroup parameter of the <TT +CLASS="FILENAME" +>smb.conf</TT +> file + for this connection. This may be needed to connect to some + servers. </P +></DD +><DT +>-T tar options</DT +><DD +><P +>smbclient may be used to create <B +CLASS="COMMAND" +>tar(1) + </B +> compatible backups of all the files on an SMB/CIFS + share. The secondary tar flags that can be given to this option + are : </P +><P +></P +><UL +><LI +><P +><TT +CLASS="PARAMETER" +><I +>c</I +></TT +> - Create a tar file on UNIX. + Must be followed by the name of a tar file, tape device + or "-" for standard output. If using standard output you must + turn the log level to its lowest value -d0 to avoid corrupting + your tar file. This flag is mutually exclusive with the + <TT +CLASS="PARAMETER" +><I +>x</I +></TT +> flag. </P +></LI +><LI +><P +><TT +CLASS="PARAMETER" +><I +>x</I +></TT +> - Extract (restore) a local + tar file back to a share. Unless the -D option is given, the tar + files will be restored from the top level of the share. Must be + followed by the name of the tar file, device or "-" for standard + input. Mutually exclusive with the <TT +CLASS="PARAMETER" +><I +>c</I +></TT +> flag. + Restored files have their creation times (mtime) set to the + date saved in the tar file. Directories currently do not get + their creation dates restored properly. </P +></LI +><LI +><P +><TT +CLASS="PARAMETER" +><I +>I</I +></TT +> - Include files and directories. + Is the default behavior when filenames are specified above. Causes + tar files to be included in an extract or create (and therefore + everything else to be excluded). See example below. Filename globbing + works in one of two ways. See r below. </P +></LI +><LI +><P +><TT +CLASS="PARAMETER" +><I +>X</I +></TT +> - Exclude files and directories. + Causes tar files to be excluded from an extract or create. See + example below. Filename globbing works in one of two ways now. + See <TT +CLASS="PARAMETER" +><I +>r</I +></TT +> below. </P +></LI +><LI +><P +><TT +CLASS="PARAMETER" +><I +>b</I +></TT +> - Blocksize. Must be followed + by a valid (greater than zero) blocksize. Causes tar file to be + written out in blocksize*TBLOCK (usually 512 byte) blocks. + </P +></LI +><LI +><P +><TT +CLASS="PARAMETER" +><I +>g</I +></TT +> - Incremental. Only back up + files that have the archive bit set. Useful only with the + <TT +CLASS="PARAMETER" +><I +>c</I +></TT +> flag. </P +></LI +><LI +><P +><TT +CLASS="PARAMETER" +><I +>q</I +></TT +> - Quiet. Keeps tar from printing + diagnostics as it works. This is the same as tarmode quiet. + </P +></LI +><LI +><P +><TT +CLASS="PARAMETER" +><I +>r</I +></TT +> - Regular expression include + or exclude. Uses regular regular expression matching for + excluding or excluding files if compiled with HAVE_REGEX_H. + However this mode can be very slow. If not compiled with + HAVE_REGEX_H, does a limited wildcard match on '*' and '?'. + </P +></LI +><LI +><P +><TT +CLASS="PARAMETER" +><I +>N</I +></TT +> - Newer than. Must be followed + by the name of a file whose date is compared against files found + on the share during a create. Only files newer than the file + specified are backed up to the tar file. Useful only with the + <TT +CLASS="PARAMETER" +><I +>c</I +></TT +> flag. </P +></LI +><LI +><P +><TT +CLASS="PARAMETER" +><I +>a</I +></TT +> - Set archive bit. Causes the + archive bit to be reset when a file is backed up. Useful with the + <TT +CLASS="PARAMETER" +><I +>g</I +></TT +> and <TT +CLASS="PARAMETER" +><I +>c</I +></TT +> flags. + </P +></LI +></UL +><P +><I +CLASS="EMPHASIS" +>Tar Long File Names</I +></P +><P +><B +CLASS="COMMAND" +>smbclient</B +>'s tar option now supports long + file names both on backup and restore. However, the full path + name of the file must be less than 1024 bytes. Also, when + a tar archive is created, smbclient's tar option places all + files in the archive with relative names, not absolute names. + </P +><P +><I +CLASS="EMPHASIS" +>Tar Filenames</I +></P +><P +>All file names can be given as DOS path names (with '\' + as the component separator) or as UNIX path names (with '/' as + the component separator). </P +><P +><I +CLASS="EMPHASIS" +>Examples</I +></P +><P +>Restore from tar file backup.tar into myshare on mypc + (no password on share). </P +><P +><B +CLASS="COMMAND" +>smbclient //mypc/myshare "" -N -Tx backup.tar + </B +></P +><P +>Restore everything except <TT +CLASS="FILENAME" +>users/docs</TT +> + </P +><P +><B +CLASS="COMMAND" +>smbclient //mypc/myshare "" -N -TXx backup.tar + users/docs</B +></P +><P +>Create a tar file of the files beneath <TT +CLASS="FILENAME" +> users/docs</TT +>. </P +><P +><B +CLASS="COMMAND" +>smbclient //mypc/myshare "" -N -Tc + backup.tar users/docs </B +></P +><P +>Create the same tar file as above, but now use + a DOS path name. </P +><P +><B +CLASS="COMMAND" +>smbclient //mypc/myshare "" -N -tc backup.tar + users\edocs </B +></P +><P +>Create a tar file of all the files and directories in + the share. </P +><P +><B +CLASS="COMMAND" +>smbclient //mypc/myshare "" -N -Tc backup.tar * + </B +></P +></DD +><DT +>-D initial directory</DT +><DD +><P +>Change to initial directory before starting. Probably + only of any use with the tar -T option. </P +></DD +><DT +>-c command string</DT +><DD +><P +>command string is a semicolon separated list of + commands to be executed instead of prompting from stdin. <TT +CLASS="PARAMETER" +><I +> -N</I +></TT +> is implied by <TT +CLASS="PARAMETER" +><I +>-c</I +></TT +>.</P +><P +>This is particularly useful in scripts and for printing stdin + to the server, e.g. <B +CLASS="COMMAND" +>-c 'print -'</B +>. </P +></DD +></DL +></DIV +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN297" +></A +><H2 +>OPERATIONS</H2 +><P +>Once the client is running, the user is presented with + a prompt : </P +><P +><TT +CLASS="PROMPT" +>smb:\> </TT +></P +><P +>The backslash ("\") indicates the current working directory + on the server, and will change if the current working directory + is changed. </P +><P +>The prompt indicates that the client is ready and waiting to + carry out a user command. Each command is a single word, optionally + followed by parameters specific to that command. Command and parameters + are space-delimited unless these notes specifically + state otherwise. All commands are case-insensitive. Parameters to + commands may or may not be case sensitive, depending on the command. + </P +><P +>You can specify file names which have spaces in them by quoting + the name with double quotes, for example "a long file name". </P +><P +>Parameters shown in square brackets (e.g., "[parameter]") are + optional. If not given, the command will use suitable defaults. Parameters + shown in angle brackets (e.g., "<parameter>") are required. + </P +><P +>Note that all commands operating on the server are actually + performed by issuing a request to the server. Thus the behavior may + vary from server to server, depending on how the server was implemented. + </P +><P +>The commands available are given here in alphabetical order. </P +><P +></P +><DIV +CLASS="VARIABLELIST" +><DL +><DT +>? [command]</DT +><DD +><P +>If "command" is specified, the ? command will display + a brief informative message about the specified command. If no + command is specified, a list of available commands will + be displayed. </P +></DD +><DT +>! [shell command]</DT +><DD +><P +>If "shell command" is specified, the ! + command will execute a shell locally and run the specified shell + command. If no command is specified, a local shell will be run. + </P +></DD +><DT +>cd [directory name]</DT +><DD +><P +>If "directory name" is specified, the current + working directory on the server will be changed to the directory + specified. This operation will fail if for any reason the specified + directory is inaccessible. </P +><P +>If no directory name is specified, the current working + directory on the server will be reported. </P +></DD +><DT +>del <mask></DT +><DD +><P +>The client will request that the server attempt + to delete all files matching "mask" from the current working + directory on the server. </P +></DD +><DT +>dir <mask></DT +><DD +><P +>A list of the files matching "mask" in the current + working directory on the server will be retrieved from the server + and displayed. </P +></DD +><DT +>exit</DT +><DD +><P +>Terminate the connection with the server and exit + from the program. </P +></DD +><DT +>get <remote file name> [local file name]</DT +><DD +><P +>Copy the file called "remote file name" from + the server to the machine running the client. If specified, name + the local copy "local file name". Note that all transfers in + <B +CLASS="COMMAND" +>smbclient</B +> are binary. See also the + lowercase command. </P +></DD +><DT +>help [command]</DT +><DD +><P +>See the ? command above. </P +></DD +><DT +>lcd [directory name]</DT +><DD +><P +>If "directory name" is specified, the current + working directory on the local machine will be changed to + the directory specified. This operation will fail if for any + reason the specified directory is inaccessible. </P +><P +>If no directory name is specified, the name of the + current working directory on the local machine will be reported. + </P +></DD +><DT +>lowercase</DT +><DD +><P +>Toggle lowercasing of filenames for the get and + mget commands. </P +><P +>When lowercasing is toggled ON, local filenames are converted + to lowercase when using the get and mget commands. This is + often useful when copying (say) MSDOS files from a server, because + lowercase filenames are the norm on UNIX systems. </P +></DD +><DT +>ls <mask></DT +><DD +><P +>See the dir command above. </P +></DD +><DT +>mask <mask></DT +><DD +><P +>This command allows the user to set up a mask + which will be used during recursive operation of the mget and + mput commands. </P +><P +>The masks specified to the mget and mput commands act as + filters for directories rather than files when recursion is + toggled ON. </P +><P +>The mask specified with the mask command is necessary + to filter files within those directories. For example, if the + mask specified in an mget command is "source*" and the mask + specified with the mask command is "*.c" and recursion is + toggled ON, the mget command will retrieve all files matching + "*.c" in all directories below and including all directories + matching "source*" in the current working directory. </P +><P +>Note that the value for mask defaults to blank (equivalent + to "*") and remains so until the mask command is used to change it. + It retains the most recently specified value indefinitely. To + avoid unexpected results it would be wise to change the value of + mask back to "*" after using the mget or mput commands. </P +></DD +><DT +>md <directory name></DT +><DD +><P +>See the mkdir command. </P +></DD +><DT +>mget <mask></DT +><DD +><P +>Copy all files matching mask from the server to + the machine running the client. </P +><P +>Note that mask is interpreted differently during recursive + operation and non-recursive operation - refer to the recurse and + mask commands for more information. Note that all transfers in + smbclient are binary. See also the lowercase command. </P +></DD +><DT +>mkdir <directory name></DT +><DD +><P +>Create a new directory on the server (user access + privileges permitting) with the specified name. </P +></DD +><DT +>mput <mask></DT +><DD +><P +>Copy all files matching mask in the current working + directory on the local machine to the current working directory on + the server. </P +><P +>Note that mask is interpreted differently during recursive + operation and non-recursive operation - refer to the recurse and mask + commands for more information. Note that all transfers in smbclient + are binary. </P +></DD +><DT +>print <file name></DT +><DD +><P +>Print the specified file from the local machine + through a printable service on the server. </P +><P +>See also the printmode command.</P +></DD +><DT +>printmode <graphics or text></DT +><DD +><P +>Set the print mode to suit either binary data + (such as graphical information) or text. Subsequent print + commands will use the currently set print mode. </P +></DD +><DT +>prompt</DT +><DD +><P +>Toggle prompting for filenames during operation + of the mget and mput commands. </P +><P +>When toggled ON, the user will be prompted to confirm + the transfer of each file during these commands. When toggled + OFF, all specified files will be transferred without prompting. + </P +></DD +><DT +>put <local file name> [remote file name]</DT +><DD +><P +>Copy the file called "local file name" from the + machine running the client to the server. If specified, + name the remote copy "remote file name". Note that all transfers + in smbclient are binary. See also the lowercase command. + </P +></DD +><DT +>queue</DT +><DD +><P +>Displays the print queue, showing the job id, + name, size and current status. </P +></DD +><DT +>quit</DT +><DD +><P +>See the exit command. </P +></DD +><DT +>rd <directory name></DT +><DD +><P +>See the rmdir command. </P +></DD +><DT +>recurse</DT +><DD +><P +>Toggle directory recursion for the commands mget + and mput. </P +><P +>When toggled ON, these commands will process all directories + in the source directory (i.e., the directory they are copying + from ) and will recurse into any that match the mask specified + to the command. Only files that match the mask specified using + the mask command will be retrieved. See also the mask command. + </P +><P +>When recursion is toggled OFF, only files from the current + working directory on the source machine that match the mask specified + to the mget or mput commands will be copied, and any mask specified + using the mask command will be ignored. </P +></DD +><DT +>rm <mask></DT +><DD +><P +>Remove all files matching mask from the current + working directory on the server. </P +></DD +><DT +>rmdir <directory name></DT +><DD +><P +>Remove the specified directory (user access + privileges permitting) from the server. </P +></DD +><DT +>tar <c|x>[IXbgNa]</DT +><DD +><P +>Performs a tar operation - see the <TT +CLASS="PARAMETER" +><I +>-T + </I +></TT +> command line option above. Behavior may be affected + by the tarmode command (see below). Using g (incremental) and N + (newer) will affect tarmode settings. Note that using the "-" option + with tar x may not work - use the command line option instead. + </P +></DD +><DT +>blocksize <blocksize></DT +><DD +><P +>Blocksize. Must be followed by a valid (greater + than zero) blocksize. Causes tar file to be written out in + blocksize*TBLOCK (usually 512 byte) blocks. </P +></DD +><DT +>tarmode <full|inc|reset|noreset></DT +><DD +><P +>Changes tar's behavior with regard to archive + bits. In full mode, tar will back up everything regardless of the + archive bit setting (this is the default mode). In incremental mode, + tar will only back up files with the archive bit set. In reset mode, + tar will reset the archive bit on all files it backs up (implies + read/write share). </P +></DD +><DT +>setmode <filename> <perm=[+|\-]rsha></DT +><DD +><P +>A version of the DOS attrib command to set + file permissions. For example: </P +><P +><B +CLASS="COMMAND" +>setmode myfile +r </B +></P +><P +>would make myfile read only. </P +></DD +></DL +></DIV +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN446" +></A +><H2 +>NOTES</H2 +><P +>Some servers are fussy about the case of supplied usernames, + passwords, share names (AKA service names) and machine names. + If you fail to connect try giving all parameters in uppercase. + </P +><P +>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.</P +><P +>smbclient supports long file names where the server + supports the LANMAN2 protocol or above. </P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN451" +></A +><H2 +>ENVIRONMENT VARIABLES</H2 +><P +>The variable <TT +CLASS="PARAMETER" +><I +>$USER</I +></TT +> may contain the + username of the person using the client. This information is + used only if the protocol level is high enough to support + session-level passwords.</P +><P +>The variable <TT +CLASS="PARAMETER" +><I +>$PASSWD</I +></TT +> may contain + the password of the person using the client. This information is + used only if the protocol level is high enough to support + session-level passwords. </P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN457" +></A +><H2 +>INSTALLATION</H2 +><P +>The location of the client program is a matter for + individual system administrators. The following are thus + suggestions only. </P +><P +>It is recommended that the smbclient software be installed + in the <TT +CLASS="FILENAME" +>/usr/local/samba/bin/</TT +> or <TT +CLASS="FILENAME" +> /usr/samba/bin/</TT +> directory, this directory readable + by all, writeable only by root. The client program itself should + be executable by all. The client should <I +CLASS="EMPHASIS" +>NOT</I +> be + setuid or setgid! </P +><P +>The client log files should be put in a directory readable + and writeable only by the user. </P +><P +>To test the client, you will need to know the name of a + running SMB/CIFS server. It is possible to run <B +CLASS="COMMAND" +>smbd(8) + </B +> an ordinary user - running that server as a daemon + on a user-accessible port (typically any port number over 1024) + would provide a suitable test server. </P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN467" +></A +><H2 +>DIAGNOSTICS</H2 +><P +>Most diagnostics issued by the client are logged in a + specified log file. The log file name is specified at compile time, + but may be overridden on the command line. </P +><P +>The number and nature of diagnostics available depends + on the debug level used by the client. If you have problems, + set the debug level to 3 and peruse the log files. </P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN471" +></A +><H2 +>VERSION</H2 +><P +>This man page is correct for version 2.2 of + the Samba suite.</P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN474" +></A +><H2 +>AUTHOR</H2 +><P +>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.</P +><P +>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 + <A +HREF="ftp://ftp.icce.rug.nl/pub/unix/" +TARGET="_top" +> ftp://ftp.icce.rug.nl/pub/unix/</A +>) and updated for the Samba 2.0 + release by Jeremy Allison. The conversion to DocBook for + Samba 2.2 was done by Gerald Carter</P +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/docs/manpages/rpcclient.1 b/docs/manpages/rpcclient.1 new file mode 100644 index 0000000000..20c0befbbd --- /dev/null +++ b/docs/manpages/rpcclient.1 @@ -0,0 +1,300 @@ +.\" This manpage has been automatically generated by docbook2man-spec +.\" from a DocBook document. docbook2man-spec can be found at: +.\" <http://shell.ipoline.com/~elmert/hacks/docbook2X/> +.\" Please send any bug reports, improvements, comments, patches, +.\" etc. to Steve Cheng <steve@ggi-project.org>. +.TH "RPCCLIENT" "1" "23 February 2001" "" "" +.SH NAME +rpcclient \- developer's tool to testing client side MS-RPC functions +.SH SYNOPSIS +.sp +\fBnmblookup\fR [ \fB-d debuglevel\fR ] [ \fB-S server\fR ] [ \fB-U username\fR ] [ \fB-W workgroup\fR ] [ \fB-n <netbios name>\fR ] [ \fB-A authfile\fR ] [ \fB-N\fR ] [ \fB-l logfile\fR ] [ \fB-I destinationIP\fR ] [ \fB-E <terminal code>\fR ] [ \fB-c <command string>\fR ] [ \fB-i scope\fR ] [ \fB-O <socket options>\fR ] [ \fB-s <smb config file>\fR ] +.SH "DESCRIPTION" +.PP +This tool is part of the Samba <URL:samba.7.html> suite. +.PP +\fBrpcclient\fR is a utility for developers for +executing various MS-RPC functions. It's primary use is for testing +Samba's own MS-RPC server implementation, however many administrators +have written scripts around it to manage Windows NT clients from +their UNIX workstation. +.SH "OPTIONS" +.TP +\fB-d debuglevel\fR +set the debuglevel. Debug level 0 is the lowest +and 100 being the highest. This should be set to 100 if you are +planning on submitting a bug report to the Samba team +(see BUGS.txt). +.TP +\fB-S server\fR +NetBIOS name of Server to which you wish to +connect. The server can be any SMB/CIFS server. The name is +resolved using either the \fIname resolve order\fR +line or by using the -R option. +.TP +\fB-l logbasename\fR +File name for log/debug files. .client will be +appended. The log file is never removed by the client. +.TP +\fB-n netbios name\fR +NetBIOS name of the +local machine. This option is only needed if your Samba client +cannot find it automatically. Samba should use the uppercase +of the machine's hostname. +.TP +\fB-N\fR +tells rpcclient not to ask for a password. +\fBrpcclient\fR will prompt the user by default. +.TP +\fB-I destinationIP\fR +The IP address of the server specified with +the -S option. Only needed when the server's NetBIOS name cannot +be resolved using WINS or broadcast and isn't found in the LMHOSTS +file. +.TP +\fB-E\fR +causes \fBrpcclient\fR to write +messages to stderr instead of stdout. +.TP +\fB-U username[%pass]\fR +Sets the SMB username or username and password. +If %pass is not specified, The user will be prompted. The client +will first check the USER environment variable, then the +\fI$LOGNAME\fR variable and if either exist, the +string is uppercased. Anything in these variables following a '%' +sign will be treated as the password. If these environmental +variables are not found, the username GUEST +is used. + +If the password is not included in these environment +variables (using the %pass syntax), rpcclient will look for +a \fI$PASSWD\fR environment variable from which +to read the password. + +A third option is to use a credentials file which +contains the plaintext of the username and password. This +option is mainly provided for scripts where the admin doesn't +desire to pass the credentials on the command line or via environment +variables. If this method is used, make certain that the permissions +on the file restrict access from unwanted users. See the +\fI-A\fR for more details. + +Be cautious about including passwords in scripts or in +the \fI$PASSWD\fR environment variable. Also, on +many systems the command line of a running process may be seen +via the \fBps\fR command to be safe always allow +\fBrpcclient\fR to prompt for a password and type +it in directly. +.TP +\fB-A filename\fR +This option allows +you to specify a file from which to read the username and +password used in the connection. The format of the file is + +.sp +.nf +username = <value> +password = <value> + +.sp +.fi + +Make certain that the permissions on the file restrict +access from unwanted users. +.TP +\fB-W domain\fR +Set the SMB domain of the username. This +overrides the default domain which is the domain of the +server specified with the \fI-S\fR option. +If the domain specified is the same as the server's NetBIOS name, +it causes the client to log on using the server's local SAM (as +opposed to the Domain SAM). +.TP +\fB-P\fR +operate in promptless mode. Without this +mode (the default) \fBrpcclient\fR displays a +prompt of the form '[domain\\username@host]$' +.TP +\fB-c 'command string'\fR +execute semicolon separated commands (listed +below)) +.TP +\fB-t terminalcode\fR +This tells the Samba client how to interpret +the incoming filenames, in regards to character sets. The list +here is not complete. For a complete list see your local Samba +source. Some valid options are sjis, euc, jis7, jis8, junet +and hex. +.TP +\fB-O socket options\fR +These socket options are the same as in +\fIsmb.conf\fR (under the \fIsocket options +\fRsection). +.TP +\fB-s smb.conf\fR +Specifies the location of the all important +\fIsmb.conf\fR file. +.TP +\fB-i scope\fR +Defines the NetBIOS scope. For more +information on NetBIOS scopes, see rfc1001 and rfc1002. NetBIOS +scopes are rarely used. +.SH "COMMANDS" +.PP +\fBSPOOLSS Commands\fR +.TP 0.2i +\(bu +\fBspoolenum\fR - Execute an EnumPrinters() +call. This lists the various installed and share printers. Refer +to the MS Platform SDK documentation for more details of the various +flags and calling options. +.TP 0.2i +\(bu +\fBspoolenumports level +\fR- Executes an EnumPorts() call using the specified +info level. Currently only info level 1 and 2 are supported. +.TP 0.2i +\(bu +\fBspoolenumdata\fR - Enumerate all +printer setting data stored on the server. On Windows NT clients, +these values are stored in the registry, while Samba servers +store them in the printers TDB. This command corresponds +to the MS Platform SDK GetPrinterData() function. +.TP 0.2i +\(bu +\fBspooljobs printer\fR - List the jobs +and status of a given printer. +This command corresponds to the MS Platform SDK EnumJobs() +function. +.TP 0.2i +\(bu +\fBspoolopen printer +\fR- Execute an OpenPrinterEx() and ClosePrinter() RPC +against a given printer. +.TP 0.2i +\(bu +\fBspoolgetdata printer +\fR- Retrieve the data for a given printer setting. See +the \fBspoolenumdata\fR command for more information. +This command corresponds to the GetPrinterData() MS Platform +SDK function. +.TP 0.2i +\(bu +\fBspoolgetprinter printer +\fR- Retrieve the current printer information. This command +corresponds to the GetPrinter() MS Platform SDK function. +.TP 0.2i +\(bu +\fBspoolgetprinterdriver +printer\fR - Retrieve the printer driver information +(such as driver file, config file, dependent files, etc...) for +the given printer. This command corresponds to the GetPrinterDriver() +MS Platform SDK function. +.TP 0.2i +\(bu +\fBspoolgetprinterdriverdir +arch\fR - Execute a GetPrinterDriverDirectory() +RPC to retreive the SMB share name and subdirectory for +storing printer driver files for a given architecture. Possible +values for \fIarch\fR are "Windows 4.0" +(for Windows 95/98), "Windows NT x86", "Windows NT PowerPC", "Windows +Alpha_AXP", and "Windows NT R4000". +.TP 0.2i +\(bu +\fBspooladdprinterdriver +arch config\fR - Execute an +AddPrinterDriver() RPC to install the printer driver information +on the server. Note that the driver files should already exist +in the directory returned by spoolgetprinterdriverdir. Possible +values for \fIarch\fR are the same as those for +the \fBspooolgetprintedriverdir\fR command. +The \fIconfig\fR parameter is defined as +follows: + +.sp +.nf +Long Printer Name:\\ +Driver File Name:\\ +Data File Name:\\ +Config File Name:\\ +Help File Name:\\ +Language Monitor Name:\\ +Default Data Type:\\ +Comma Separated list of Files + +.sp +.fi + +Any empty fields should be enter as the string "NULL". + +Samba does not need to support the concept of Print Monitors +since these only apply to local printers whose driver can make +use of a bi-directional link for communication. This field should +be "NULL". On a remote NT print server, the Print Monitor for a +driver must already be installed prior to adding the driver or +else the RPC will fail. +.TP 0.2i +\(bu +\fBspooladdprinter printername +sharename drivername port +\fR- Add a printer on the remote server. This printer +will be automatically shared. Be aware that the printer driver +must already be installed on the server (see addprinterdriver) +and the \fIport\fRmust be a valid port name. +.PP +\fBSPOOLSS Commands\fR +.PP +.TP 0.2i +\(bu +\fBset\fR - Set miscellaneous +\fBrpcclient\fR command line options during a +running session. +.TP 0.2i +\(bu +\fBuse\fR - Connect to a rmeote SMB +server. \fBrpcclient\fR has the ability to +maintain connections to multiple server simulaneously. +.TP 0.2i +\(bu +\fBhelp\fR - Print a listing of all +known commands or extended help on a particular command. +.TP 0.2i +\(bu +\fBquit\fR - Exit \fBrpcclient +\fR.SH "BUGS" +.PP +\fBrpcclient\fR is designed as a developer testing tool +and may not be robust in certain areas (such as command line parsing). +It has been known to generate a core dump upon failures when invalid +parameters where passed to the interpreter. +.PP +From Luke Leighton's original rpcclient man page: +.PP +\fB"WARNING!\fR The MSRPC over SMB code has +been developed from examining Network traces. No documentation is +available from the original creators (Microsoft) on how MSRPC over +SMB works, or how the individual MSRPC services work. Microsoft's +implementation of these services has been demonstrated (and reported) +to be... a bit flakey in places. +.PP +The development of Samba's implementation is also a bit rough, +and as more of the services are understood, it can even result in +versions of \fBsmbd(8)\fR and \fBrpcclient\fR +that are incompatible for some commands or services. Additionally, +the developers are sending reports to Microsoft, and problems found +or reported to Microsoft are fixed in Service Packs, which may +result in incompatibilities." +.SH "VERSION" +.PP +This man page is correct for version 2.2 of +the Samba suite. +.SH "AUTHOR" +.PP +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. +.PP +The original rpcclient man page was written by Matthew Geddes, +Luke Kenneth Casson, and Gerald Carter. The conversion to +DocBook for Samba 2.2 was done by Gerald Carter diff --git a/docs/manpages/smbclient.1 b/docs/manpages/smbclient.1 index 260cb58c73..eb81374e6d 100644 --- a/docs/manpages/smbclient.1 +++ b/docs/manpages/smbclient.1 @@ -1,799 +1,770 @@ -.TH "smbclient " "1" "23 Oct 1998" "Samba" "SAMBA" -.PP -.SH "NAME" -smbclient \- ftp-like client to access SMB/CIFS resources on servers -.PP -.SH "SYNOPSIS" -.PP -\fBsmbclient\fP servicename [-s smb\&.conf] [-O socket options][-R name resolve order] [-M NetBIOS name] [-i scope] [-N] [-n NetBIOS name] [-d debuglevel] [-P] [-p port] [-l log basename] [-h] [-I dest IP] [-E] [-U username] [-L NetBIOS name] [-t terminal code] [-m max protocol] [-b buffersize] [-W workgroup] [-T<c|x>IXFqgbNan] [-D directory] [-c command string] -.PP -.SH "DESCRIPTION" -.PP -This program is part of the \fBSamba\fP suite\&. -.PP -\fBsmbclient\fP is a client that can \'talk\' to an SMB/CIFS server\&. It -offers an interface similar to that of the ftp program (see \fBftp -(1)\fP)\&. Operations include things like getting files from the server -to the local machine, putting files from the local machine to the -server, retrieving directory information from the server and so on\&. -.PP -.SH "OPTIONS" -.PP -.IP -.IP "\fBservicename\fP" -servicename is the name of the service you want -to use on the server\&. A service name takes the form -\f(CW//server/service\fP where \fIserver\fP is the NetBIOS name of the SMB/CIFS -server offering the desired service and \fIservice\fP is the name -of the service offered\&. Thus to connect to the service \fIprinter\fP on -the SMB/CIFS server \fIsmbserver\fP, you would use the servicename -.IP -\f(CW//smbserver/printer\fP -.IP -Note that the server name required is NOT necessarily the IP (DNS) -host name of the server ! The name required is a NetBIOS server name, -which may or may not be the same as the IP hostname of the machine -running the server\&. -.IP -The server name is looked up according to either the -\fB-R\fP parameter to \fBsmbclient\fP or using the -\fBname resolve order\fP -parameter in the smb\&.conf file, allowing an administrator to change -the order and methods by which server names are looked up\&. -.IP -.IP "\fBpassword\fP" -password is the password required to access the -specified service on the specified server\&. If this parameter is -supplied, the \fB-N\fP option (suppress password prompt) is assumed\&. -.IP -There is no default password\&. If no password is supplied on the -command line (either by using this parameter or adding a password to -the \fB-U\fP option (see below)) and the \fB-N\fP option is not specified, -the client will prompt for a password, even if the desired service -does not require one\&. (If no password is required, simply press ENTER -to provide a null password\&.) -.IP -Note: Some servers (including OS/2 and Windows for Workgroups) insist -on an uppercase password\&. Lowercase or mixed case passwords may be -rejected by these servers\&. -.IP -Be cautious about including passwords in scripts\&. -.IP -.IP "\fB-s smb\&.conf\fP" -This parameter specifies the pathname to the -Samba configuration file, smb\&.conf\&. This file controls all aspects of -the Samba setup on the machine and smbclient also needs to read this -file\&. -.IP -.IP "\fB-O socket options\fP" -TCP socket options to set on the client -socket\&. See the socket options -parameter in the \fBsmb\&.conf (5)\fP manpage for -the list of valid options\&. -.IP -.IP "\fB-R name resolve order\fP" -This option allows the user of -smbclient to determine what name resolution services to use when -looking up the NetBIOS name of the host being connected to\&. -.IP -The options are :"lmhosts", "host", "wins" and "bcast"\&. They cause -names to be resolved as follows : -.IP -.IP -.IP o -\fBlmhosts\fP : Lookup an IP address in the Samba lmhosts file\&. -The lmhosts file is stored in the same directory as the -\fBsmb\&.conf\fP file\&. -.IP -.IP o -\fBhost\fP : 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 depended for instance on IRIX or -Solaris this may be controlled by the \fI/etc/nsswitch\&.conf\fP file)\&. -.IP -.IP o -\fBwins\fP : Query a name with the IP address listed in the \fBwins -server\fP parameter in the smb\&.conf file\&. If -no WINS server has been specified this method will be ignored\&. -.IP -.IP o -\fBbcast\fP : Do a broadcast on each of the known local interfaces -listed in the \fBinterfaces\fP parameter -in the smb\&.conf file\&. This is the least reliable of the name resolution -methods as it depends on the target host being on a locally connected -subnet\&. -.IP -.IP -If this parameter is not set then the name resolve order defined -in the \fBsmb\&.conf\fP file parameter -(\fBname resolve order\fP) -will be used\&. -.IP -The default order is lmhosts, host, wins, bcast and without this -parameter or any entry in the \fB"name resolve -order"\fP parameter of the -\fBsmb\&.conf\fP file the name resolution methods -will be attempted in this order\&. -.IP -.IP "\fB-M NetBIOS name\fP" -This options allows you to send messages, -using the "WinPopup" protocol, to another computer\&. Once a connection -is established you then type your message, pressing ^D (control-D) to -end\&. -.IP -If the receiving computer is running WinPopup the user will receive -the message and probably a beep\&. If they are not running WinPopup the -message will be lost, and no error message will occur\&. -.IP -The message is also automatically truncated if the message is over -1600 bytes, as this is the limit of the protocol\&. -.IP -One useful trick is to cat the message through \fBsmbclient\fP\&. -For example: -.IP -\f(CWcat mymessage\&.txt | smbclient -M FRED\fP -.IP -will send the message in the file \fImymessage\&.txt\fP to the machine FRED\&. -.IP -You may also find the \fB-U\fP and \fB-I\fP options useful, as they allow -you to control the FROM and TO parts of the message\&. -.IP -See the \fBmessage command\fP -parameter in the \fBsmb\&.conf (5)\fP for a description of how to handle -incoming WinPopup messages in Samba\&. -.IP -Note: Copy WinPopup into the startup group on your WfWg PCs if you -want them to always be able to receive messages\&. -.IP -.IP "\fB-i scope\fP" -This specifies a NetBIOS scope that smbclient will use -to communicate with when generating NetBIOS names\&. For details on the -use of NetBIOS scopes, see rfc1001\&.txt and rfc1002\&.txt\&. NetBIOS scopes -are \fIvery\fP rarely used, only set this parameter if you are the -system administrator in charge of all the NetBIOS systems you -communicate with\&. -.IP -.IP "\fB-N\fP" -If specified, this parameter suppresses the normal -password prompt from the client to the user\&. This is useful when -accessing a service that does not require a password\&. -.IP -Unless a password is specified on the command line or this parameter -is specified, the client will request a password\&. -.IP -.IP "\fB-n NetBIOS name\fP" -By default, the client will use the local -machine\'s hostname (in uppercase) as its NetBIOS name\&. This parameter -allows you to override the host name and use whatever NetBIOS name you -wish\&. -.IP -.IP "\fB-d debuglevel\fP" -debuglevel is an integer from 0 to 10, or the -letter \'A\'\&. -.IP -The default value if this parameter is not specified is zero\&. -.IP -The higher this value, the more detail will be logged to the log files -about the activities of the client\&. 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\&. -.IP -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\&. If debuglevel is set to the -letter \'A\', then \fIall\fP debug messages will be printed\&. This setting -is for developers only (and people who \fIreally\fP want to know how the -code works internally)\&. -.IP -Note that specifying this parameter here will override the \fBlog -level\fP parameter in the \fBsmb\&.conf -(5)\fP file\&. -.IP -.IP "\fB-P\fP" -This option is no longer used\&. The code in Samba2\&.0 -now lets the server decide the device type, so no printer specific -flag is needed\&. -.IP -.IP "\fB-p port\fP" -This number is the TCP port number that will be used -when making connections to the server\&. The standard (well-known) TCP -port number for an SMB/CIFS server is 139, which is the default\&. -.IP -.IP "\fB-l logfilename\fP" -If specified, logfilename specifies a base -filename into which operational data from the running client will be -logged\&. -.IP -The default base name is specified at compile time\&. -.IP -The base name is used to generate actual log file names\&. For example, -if the name specified was "log", the debug file would be -\f(CWlog\&.client\fP\&. -.IP -The log file generated is never removed by the client\&. -.IP -.IP "\fB-h\fP" -Print the usage message for the client\&. -.IP -.IP "\fB-I IP address\fP" -IP address is the address of the server to -connect to\&. It should be specified in standard "a\&.b\&.c\&.d" notation\&. -.IP -Normally the client would attempt to locate a named SMB/CIFS server by -looking it up via the NetBIOS name resolution mechanism described -above in the \fBname resolve order\fP parameter -above\&. Using this parameter will force the client to assume that the -server is on the machine with the specified IP address and the NetBIOS -name component of the resource being connected to will be ignored\&. -.IP -There is no default for this parameter\&. If not supplied, it will be -determined automatically by the client as described above\&. -.IP -.IP "\fB-E\fP" -This parameter causes the client to write messages to the -standard error stream (stderr) rather than to the standard output -stream\&. -.IP -By default, the client writes messages to standard output - typically -the user\'s tty\&. -.IP -.IP "\fB-U username\fP" -This specifies the user name that will be used by -the client to make a connection, assuming your server is not a downlevel -server that is running a protocol level that uses passwords on shares, -not on usernames\&. -.IP -Some servers are fussy about the case of this name, and some insist -that it must be a valid NetBIOS name\&. -.IP -If no username is supplied, it will default to an uppercase version of -the environment variable \f(CWUSER\fP or \f(CWLOGNAME\fP in that order\&. If no -username is supplied and neither environment variable exists the -username "GUEST" will be used\&. -.IP -If the \f(CWUSER\fP environment variable contains a \'%\' character, -everything after that will be treated as a password\&. This allows you -to set the environment variable to be \f(CWUSER=username%password\fP so -that a password is not passed on the command line (where it may be -seen by the ps command)\&. -.IP -You can specify a domain name as part of the username by using a -username of the form "DOMAIN/user" or "DOMAIN\euser"\&. -.IP -If the service you are connecting to requires a password, it can be -supplied using the \fB-U\fP option, by appending a percent symbol ("%") -then the password to username\&. For example, to attach to a service as -user \f(CW"fred"\fP with password \f(CW"secret"\fP, you would specify\&. -.br -.IP -\f(CW-U fred%secret\fP -.br -.IP -on the command line\&. Note that there are no spaces around the percent -symbol\&. -.IP -If you specify the password as part of username then the \fB-N\fP option -(suppress password prompt) is assumed\&. -.IP -If you specify the password as a parameter \fIAND\fP as part of username -then the password as part of username will take precedence\&. Putting -nothing before or nothing after the percent symbol will cause an empty -username or an empty password to be used, respectively\&. -.IP -The password may also be specified by setting up an environment -variable called \f(CWPASSWD\fP that contains the users password\&. Note -that this may be very insecure on some systems but on others allows -users to script smbclient commands without having a password appear in -the command line of a process listing\&. -.IP -A third option is to use a credentials file which contains -the plaintext of the username and password\&. This option is -mainly provided for scripts where the admin doesn\'t desire to -pass the credentials on the command line or via environment variables\&. -If this method is used, make certain that the permissions on the file -restrict access from unwanted users\&. See the \fB-A\fP for more details\&. -.IP -Note: Some servers (including OS/2 and Windows for Workgroups) insist -on an uppercase password\&. Lowercase or mixed case passwords may be -rejected by these servers\&. -.IP -Be cautious about including passwords in scripts or in the -\f(CWPASSWD\fP environment variable\&. Also, on many systems the command -line of a running process may be seen via the \f(CWps\fP command to be -safe always allow smbclient to prompt for a password and type it in -directly\&. -.IP -.IP "\fB-A <filename>\fP" -This option allows you to specify a file from which -to read the username and password used in the connection\&. The format -of the file is -.IP -\f(CWusername = <value>\fP -.br -\f(CWpassword = <value\fP -.br -.IP -Make certain that the permissions on the file restrict access from -unwanted users\&. -.IP -.IP "\fB-L\fP" -This option allows you to look at what services are -available on a server\&. You use it as \f(CW"smbclient -L host"\fP and a -list should appear\&. The \fB-I\fP option may be useful if your NetBIOS -names don\'t match your tcp/ip dns host names or if you are trying to -reach a host on another network\&. -.IP -.IP "\fB-t terminal code\fP" -This option tells smbclient how to interpret -filenames coming from the remote server\&. Usually Asian language -multibyte UNIX implementations use different character sets than -SMB/CIFS servers (\fIEUC\fP instead of \fISJIS\fP for example)\&. Setting -this parameter will let smbclient convert between the UNIX filenames -and the SMB filenames correctly\&. This option has not been seriously -tested and may have some problems\&. -.IP -The terminal codes include \f(CWsjis\fP, \f(CWeuc\fP, \f(CWjis7\fP, \f(CWjis8\fP, -\f(CWjunet\fP, \f(CWhex\fP, \f(CWcap\fP\&. This is not a complete list, check the -Samba source code for the complete list\&. -.IP -.IP "\fB-m max protocol level\fP" -With the new code in Samba2\&.0, -\fBsmbclient\fP always attempts to connect at the maximum -protocols level the server supports\&. This parameter is -preserved for backwards compatibility, but any string -following the \fB-m\fP will be ignored\&. -.IP -.IP "\fB-b buffersize\fP" -This option changes the transmit/send buffer -size when getting or putting a file from/to the server\&. The default -is 65520 bytes\&. Setting this value smaller (to 1200 bytes) has been -observed to speed up file transfers to and from a Win9x server\&. -.IP -.IP "\fB-W WORKGROUP\fP" -Override the default workgroup specified in the -\fBworkgroup\fP parameter of the -\fBsmb\&.conf\fP file for this connection\&. This may -be needed to connect to some servers\&. -.IP -.IP "\fB-T tar options\fP" -smbclient may be used to create -\fBtar (1)\fP compatible backups of all the files on an SMB/CIFS -share\&. The secondary tar flags that can be given to this option are : -.IP -.IP -.IP "\fBc\fP" -Create a tar file on UNIX\&. Must be followed by the -name of a tar file, tape device or \f(CW"-"\fP for standard output\&. If -using standard output you must turn the log level to its lowest value -\f(CW-d0\fP to avoid corrupting your tar file\&. This flag is -mutually exclusive with the \fBx\fP flag\&. -.IP -.IP "\fBx\fP" -Extract (restore) a local tar file back to a -share\&. Unless the \fB-D\fP option is given, the tar files will be -restored from the top level of the share\&. Must be followed by the name -of the tar file, device or \f(CW"-"\fP for standard input\&. Mutually exclusive -with the \fBc\fP flag\&. Restored files have their creation times (mtime) -set to the date saved in the tar file\&. Directories currently do not -get their creation dates restored properly\&. -.IP -.IP "\fBI\fP" -Include files and directories\&. Is the default -behavior when filenames are specified above\&. Causes tar files to -be included in an extract or create (and therefore everything else to -be excluded)\&. See example below\&. Filename globbing works -in one of two ways\&. See \fBr\fP below\&. -.IP -.IP "\fBX\fP" -Exclude files and directories\&. Causes tar files to -be excluded from an extract or create\&. See example below\&. Filename -globbing works in one of two ways now\&. See \fBr\fP below\&. -.IP -.IP "\fBb\fP" -Blocksize\&. Must be followed by a valid (greater than -zero) blocksize\&. Causes tar file to be written out in -blocksize*TBLOCK (usually 512 byte) blocks\&. -.IP -.IP "\fBg\fP" -Incremental\&. Only back up files that have the -archive bit set\&. Useful only with the \fBc\fP flag\&. -.IP -.IP "\fBq\fP" -Quiet\&. Keeps tar from printing diagnostics as it -works\&. This is the same as tarmode quiet\&. -.IP -.IP "\fBr\fP" -Regular expression include or exclude\&. Uses regular -regular expression matching for excluding or excluding files if -compiled with HAVE_REGEX_H\&. However this mode can be very slow\&. If -not compiled with HAVE_REGEX_H, does a limited wildcard match on * and -?\&. -.IP -.IP "\fBN\fP" -Newer than\&. Must be followed by the name of a file -whose date is compared against files found on the share during a -create\&. Only files newer than the file specified are backed up to the -tar file\&. Useful only with the \fBc\fP flag\&. -.IP -.IP "\fBa\fP" -Set archive bit\&. Causes the archive bit to be reset -when a file is backed up\&. Useful with the \fBg\fP and \fBc\fP flags\&. -.IP -.IP -\fITar Long File Names\fP -.IP -smbclient\'s tar option now supports long file names both on backup and -restore\&. However, the full path name of the file must be less than -1024 bytes\&. Also, when a tar archive is created, smbclient\'s tar -option places all files in the archive with relative names, not -absolute names\&. -.IP -\fITar Filenames\fP -.IP -All file names can be given as DOS path names (with \f(CW\e\fP as the -component separator) or as UNIX path names (with \f(CW/\fP as the -component separator)\&. -.IP -\fIExamples\fP -.IP -.IP -.IP o -Restore from tar file backup\&.tar into myshare on mypc (no password on share)\&. -.IP -\f(CWsmbclient //mypc/myshare "" -N -Tx backup\&.tar\fP -.IP -.IP o -Restore everything except users/docs -.IP -\f(CWsmbclient //mypc/myshare "" -N -TXx backup\&.tar users/docs\fP -.IP -.IP o -Create a tar file of the files beneath users/docs\&. -.IP -\f(CWsmbclient //mypc/myshare "" -N -Tc backup\&.tar users/docs\fP -.IP -.IP o -Create the same tar file as above, but now use a DOS path name\&. -.IP -\f(CWsmbclient //mypc/myshare "" -N -tc backup\&.tar users\eedocs\fP -.IP -.IP o -Create a tar file of all the files and directories in the share\&. -.IP -\f(CWsmbclient //mypc/myshare "" -N -Tc backup\&.tar *\fP -.IP -.IP -.IP "\fB-D initial directory\fP" -Change to initial directory before -starting\&. Probably only of any use with the tar \fB-T\fP option\&. -.IP -.IP "\fB-c command string\fP" -command string is a semicolon separated -list of commands to be executed instead of prompting from stdin\&. -\fB-N\fP is implied by \fB-c\fP\&. -.IP -This is particularly useful in scripts and for printing stdin to the -server, e\&.g\&. \f(CW-c \'print -\'\fP\&. -.IP -.PP -.SH "OPERATIONS" -.PP -Once the client is running, the user is presented with a prompt : -.PP -\f(CWsmb:\e>\fP -.PP -The backslash ("\e") indicates the current working directory on the -server, and will change if the current working directory is changed\&. -.PP -The prompt indicates that the client is ready and waiting to carry out -a user command\&. Each command is a single word, optionally followed by -parameters specific to that command\&. Command and parameters are -space-delimited unless these notes specifically state otherwise\&. All -commands are case-insensitive\&. Parameters to commands may or may not -be case sensitive, depending on the command\&. -.PP -You can specify file names which have spaces in them by quoting the -name with double quotes, for example "a long file name"\&. -.PP -Parameters shown in square brackets (e\&.g\&., "[parameter]") are -optional\&. If not given, the command will use suitable -defaults\&. Parameters shown in angle brackets (e\&.g\&., "<parameter>") are -required\&. -.PP -Note that all commands operating on the server are actually performed -by issuing a request to the server\&. Thus the behavior may vary from -server to server, depending on how the server was implemented\&. -.PP -The commands available are given here in alphabetical order\&. -.PP -.IP -.IP "\fB? [command]\fP" -If "command" is specified, -the \fB?\fP command will display a brief informative message about the -specified command\&. If no command is specified, a list of available -commands will be displayed\&. -.IP -.IP "\fB! [shell command]\fP" -If "shell command" -is specified, the \fB!\fP command will execute a shell locally and run -the specified shell command\&. If no command is specified, a local shell -will be run\&. -.IP -.IP "\fBcd [directory name]\fP" -If "directory name" is -specified, the current working directory on the server will be changed -to the directory specified\&. This operation will fail if for any reason -the specified directory is inaccessible\&. -.IP -If no directory name is specified, the current working directory on -the server will be reported\&. -.IP -.IP "\fBdel <mask>\fP" -The client will request that the server -attempt to delete all files matching "mask" from the current working -directory on the server\&. -.IP -.IP "\fBdir <mask>\fP" -A list of the files matching "mask" in -the current working directory on the server will be retrieved from the -server and displayed\&. -.IP -.IP "\fBexit\fP" -Terminate the connection with the server and -exit from the program\&. -.IP -.IP "\fBget <remote file name> [local file name]\fP" -Copy the -file called "remote file name" from the server to the machine running -the client\&. If specified, name the local copy "local file name"\&. Note -that all transfers in smbclient are binary\&. See also the -\fBlowercase\fP command\&. -.IP -.IP "\fBhelp [command]\fP" -See the \fB?\fP -command above\&. -.IP -.IP "\fBlcd [directory name]\fP" -If "directory name" is -specified, the current working directory on the local machine will -be changed to the directory specified\&. This operation will fail if for -any reason the specified directory is inaccessible\&. -.IP -If no directory name is specified, the name of the current working -directory on the local machine will be reported\&. -.IP -.IP "\fBlowercase\fP" -Toggle lowercasing of filenames -for the \fBget\fP and \fBmget\fP commands\&. -.IP -When lowercasing is toggled ON, local filenames are converted to -lowercase when using the \fBget\fP and \fBmget\fP -commands\&. This is often useful when copying (say) MSDOS files from a -server, because lowercase filenames are the norm on UNIX systems\&. -.IP -.IP "\fBls <mask>\fP" -See the \fBdir\fP command above\&. -.IP -.IP "\fBmask <mask>\fP" -This command allows the user to set -up a mask which will be used during recursive operation of the -\fBmget\fP and \fBmput\fP commands\&. -.IP -The masks specified to the \fBmget\fP and -\fBmput\fP commands act as filters for directories rather -than files when recursion is toggled ON\&. -.IP -The mask specified with the \&.B mask command is necessary to filter -files within those directories\&. For example, if the mask specified in -an \fBmget\fP command is "source*" and the mask specified -with the mask command is "*\&.c" and recursion is toggled ON, the -\fBmget\fP command will retrieve all files matching "*\&.c" in -all directories below and including all directories matching "source*" -in the current working directory\&. -.IP -Note that the value for mask defaults to blank (equivalent to "*") and -remains so until the mask command is used to change it\&. It retains the -most recently specified value indefinitely\&. To avoid unexpected -results it would be wise to change the value of \&.I mask back to "*" -after using the \fBmget\fP or \fBmput\fP commands\&. -.IP -.IP "\fBmd <directory name>\fP" -See the \fBmkdir\fP -command\&. -.IP -.IP "\fBmget <mask>\fP" -Copy all files matching mask from the -server to the machine running the client\&. -.IP -Note that mask is interpreted differently during recursive operation -and non-recursive operation - refer to the \fBrecurse\fP -and \fBmask\fP commands for more information\&. Note that all -transfers in \&.B smbclient are binary\&. See also the -\fBlowercase\fP command\&. -.IP -.IP "\fBmkdir <directory name>\fP" -Create a new directory on -the server (user access privileges permitting) with the specified -name\&. -.IP -.IP "\fBmput <mask>\fP" -Copy all files matching mask in -the current working directory on the local machine to the current -working directory on the server\&. -.IP -Note that mask is interpreted differently during recursive operation -and non-recursive operation - refer to the \fBrecurse\fP -and \fBmask\fP commands for more information\&. Note that all -transfers in \&.B smbclient are binary\&. -.IP -.IP "\fBprint <file name>\fP" -Print the specified file -from the local machine through a printable service on the server\&. -.IP -See also the \fBprintmode\fP command\&. -.IP -.IP "\fBprintmode <graphics or text>\fP" -Set the print -mode to suit either binary data (such as graphical information) or -text\&. Subsequent print commands will use the currently set print -mode\&. -.IP -.IP "\fBprompt\fP" -Toggle prompting for filenames during -operation of the \fBmget\fP and \fBmput\fP -commands\&. -.IP -When toggled ON, the user will be prompted to confirm the transfer of -each file during these commands\&. When toggled OFF, all specified files -will be transferred without prompting\&. -.IP -.IP "\fBput <local file name> [remote file name]\fP" -Copy the -file called "local file name" from the machine running the client to -the server\&. If specified, name the remote copy "remote file name"\&. -Note that all transfers in smbclient are binary\&. See also the -\fBlowercase\fP command\&. -.IP -.IP "\fBqueue\fP" -Displays the print queue, showing the job -id, name, size and current status\&. -.IP -.IP "\fBquit\fP" -See the \fBexit\fP command\&. -.IP -.IP "\fBrd <directory name>\fP" -See the \fBrmdir\fP -command\&. -.IP -.IP "\fBrecurse\fP" -Toggle directory recursion for the -commands \fBmget\fP and \fBmput\fP\&. -.IP -When toggled ON, these commands will process all directories in the -source directory (i\&.e\&., the directory they are copying \&.IR from ) and -will recurse into any that match the mask specified to the -command\&. Only files that match the mask specified using the -\fBmask\fP command will be retrieved\&. See also the -\fBmask\fP command\&. -.IP -When recursion is toggled OFF, only files from the current working -directory on the source machine that match the mask specified to the -\fBmget\fP or \fBmput\fP commands will be copied, -and any mask specified using the \fBmask\fP command will be -ignored\&. -.IP -.IP "\fBrm <mask>\fP" -Remove all files matching mask from -the current working directory on the server\&. -.IP -.IP "\fBrmdir <directory name>\fP" -Remove the specified -directory (user access privileges permitting) from the server\&. -.IP -.IP "\fBtar <c|x>[IXbgNa]\fP" -Performs a tar operation - see -the \fB-T\fP command line option above\&. Behavior may be -affected by the \fBtarmode\fP command (see below)\&. Using -g (incremental) and N (newer) will affect tarmode settings\&. Note that -using the "-" option with tar x may not work - use the command line -option instead\&. -.IP -.IP "\fBblocksize <blocksize>\fP" -Blocksize\&. Must be -followed by a valid (greater than zero) blocksize\&. Causes tar file to -be written out in blocksize*TBLOCK (usually 512 byte) blocks\&. -.IP -.IP "\fBtarmode <full|inc|reset|noreset>\fP" -Changes tar\'s -behavior with regard to archive bits\&. In full mode, tar will back up -everything regardless of the archive bit setting (this is the default -mode)\&. In incremental mode, tar will only back up files with the -archive bit set\&. In reset mode, tar will reset the archive bit on all -files it backs up (implies read/write share)\&. -.IP -.IP "\fBsetmode <filename> <perm=[+|\e-]rsha>\fP" -A version -of the DOS attrib command to set file permissions\&. For example: -.IP -\f(CWsetmode myfile +r\fP -.IP -would make myfile read only\&. -.IP -.PP -.SH "NOTES" -.PP -Some servers are fussy about the case of supplied usernames, -passwords, share names (AKA service names) and machine names\&. If you -fail to connect try giving all parameters in uppercase\&. -.PP -It is often necessary to use the \fB-n\fP 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\&. -.PP -smbclient supports long file names where the server supports the -LANMAN2 protocol or above\&. -.PP -.SH "ENVIRONMENT VARIABLES" -.PP -The variable \fBUSER\fP may contain the username of the person using the -client\&. This information is used only if the protocol level is high -enough to support session-level passwords\&. -.PP -The variable \fBPASSWD\fP may contain the password of the person using -the client\&. This information is used only if the protocol level is -high enough to support session-level passwords\&. -.PP -.SH "INSTALLATION" -.PP -The location of the client program is a matter for individual system -administrators\&. The following are thus suggestions only\&. -.PP -It is recommended that the smbclient software be installed in the -/usr/local/samba/bin or /usr/samba/bin directory, this directory -readable by all, writeable only by root\&. The client program itself -should be executable by all\&. The client should \fINOT\fP be setuid or -setgid! -.PP -The client log files should be put in a directory readable and -writeable only by the user\&. -.PP -To test the client, you will need to know the name of a running -SMB/CIFS server\&. It is possible to run \fBsmbd (8)\fP -an ordinary user - running that server as a daemon on a -user-accessible port (typically any port number over 1024) would -provide a suitable test server\&. -.PP -.SH "DIAGNOSTICS" -.PP -Most diagnostics issued by the client are logged in a specified log -file\&. The log file name is specified at compile time, but may be -overridden on the command line\&. -.PP -The number and nature of diagnostics available depends on the debug -level used by the client\&. If you have problems, set the debug level to -3 and peruse the log files\&. -.PP -.SH "VERSION" -.PP -This man page is correct for version 2\&.0 of the Samba suite\&. -.PP -.SH "AUTHOR" -.PP -The original Samba software and related utilities were created by -Andrew Tridgell \fIsamba@samba\&.org\fP\&. Samba is now developed -by the Samba Team as an Open Source project similar to the way the -Linux kernel is developed\&. -.PP -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 -\fBftp://ftp\&.icce\&.rug\&.nl/pub/unix/\fP) -and updated for the Samba2\&.0 release by Jeremy Allison\&. -\fIsamba@samba\&.org\fP\&. -.PP -See \fBsamba (7)\fP to find out how to get a full -list of contributors and details on how to submit bug reports, -comments etc\&. +.\" This manpage has been automatically generated by docbook2man-spec +.\" from a DocBook document. docbook2man-spec can be found at: +.\" <http://shell.ipoline.com/~elmert/hacks/docbook2X/> +.\" Please send any bug reports, improvements, comments, patches, +.\" etc. to Steve Cheng <steve@ggi-project.org>. +.TH "SMBCLIENT" "1" "23 February 2001" "" "" +.SH NAME +smbclient \- ftp-like client to access SMB/CIFS resources on servers +.SH SYNOPSIS +.sp +\fBsmbclient\fR \fBservicename\fR [ \fB-b <buffer size>\fR ] [ \fB-d debuglevel\fR ] [ \fB-D Directory\fR ] [ \fB-S server\fR ] [ \fB-U username\fR ] [ \fB-W workgroup\fR ] [ \fB-M <netbios name>\fR ] [ \fB-m maxprotocol\fR ] [ \fB-A authfile\fR ] [ \fB-N\fR ] [ \fB-l logfile\fR ] [ \fB-L <netbios name>\fR ] [ \fB-I destinationIP\fR ] [ \fB-E <terminal code>\fR ] [ \fB-c <command string>\fR ] [ \fB-i scope\fR ] [ \fB-O <socket options>\fR ] [ \fB-p port\fR ] [ \fB-R <name resolve order>\fR ] [ \fB-s <smb config file>\fR ] [ \fB-T<c|x>IXFqgbNan\fR ] [ \fBpassword\fR ] +.SH "DESCRIPTION" +.PP +This tool is part of the Samba <URL:samba.7.html> suite. +.PP +\fBsmbclient\fR is a client that can +\&'talk' to an SMB/CIFS server. It offers an interface +similar to that of the ftp program (see \fBftp(1)\fR). +Operations include things like getting files from the server +to the local machine, putting files from the local machine to +the server, retrieving directory information from the server +and so on. +.SH "OPTIONS" +.TP +\fBservicename\fR +servicename is the name of the service +you want to use on the server. A service name takes the form +\fI//server/service\fR where \fIserver +\fRis the NetBIOS name of the SMB/CIFS server +offering the desired service and \fIservice\fR +is the name of the service offered. Thus to connect to +the service "printer" on the SMB/CIFS server "smbserver", +you would use the servicename \fI//smbserver/printer +\fR +Note that the server name required is NOT necessarily +the IP (DNS) host name of the server ! The name required is +a NetBIOS server name, which may or may not be the +same as the IP hostname of the machine running the server. + +The server name is looked up according to either +the \fI-R\fR parameter to smbclient or +using the name resolve order parameter in the smb.conf file, +allowing an administrator to change the order and methods +by which server names are looked up. +.TP +\fBpassword\fR +The password required to access the specified +service on the specified server. If this parameter is +supplied, the \fI-N\fR option (suppress +password prompt) is assumed. + +There is no default password. If no password is supplied +on the command line (either by using this parameter or adding +a password to the \fI-U\fR option (see +below)) and the \fI-N\fR option is not +specified, the client will prompt for a password, even if +the desired service does not require one. (If no password is +required, simply press ENTER to provide a null password.) + +Note: Some servers (including OS/2 and Windows for +Workgroups) insist on an uppercase password. Lowercase +or mixed case passwords may be rejected by these servers. + +Be cautious about including passwords in scripts. +.TP +\fB-s smb.conf\fR +Specifies the location of the all important +\fIsmb.conf\fR file. +.TP +\fB-O socket options\fR +TCP socket options to set on the client +socket. See the socket options parameter in the \fI smb.conf (5)\fR manpage for the list of valid +options. +.TP +\fBname resolve order (G)\fR +This option is used by the programs in the Samba +suite 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 : +.RS +.TP 0.2i +\(bu +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) <URL:lmhosts.5.html> for details) then +any name type matches for lookup. +.TP 0.2i +\(bu +host : Do a standard host +name to IP address resolution, using the system \fI/etc/hosts +\fR, NIS, or DNS lookups. This method of name resolution +is operating system depended for instance on IRIX or Solaris this +may be controlled by the \fI/etc/nsswitch.conf\fR +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. +.TP 0.2i +\(bu +wins : Query a name with +the IP address listed in the \fIwins server\fR +parameter. If no WINS server has +been specified this method will be ignored. +.TP 0.2i +\(bu +bcast : Do a broadcast on +each of the known local interfaces listed in the +\fIinterfaces\fR +parameter. This is the least reliable of the name resolution +methods as it depends on the target host being on a locally +connected subnet. +.RE +.PP +If this parameter is not set then the name resolve order +defined in the \fIsmb.conf\fR file parameter +(name resolve order) will be used. +.PP +.PP +The default order is lmhosts, host, wins, bcast and without +this parameter or any entry in the \fIname resolve order +\fRparameter of the smb.conf file the name resolution +methods will be attempted in this order. +.PP +.TP +\fB-M NetBIOS name\fR +This options allows you to send messages, using +the "WinPopup" protocol, to another computer. Once a connection is +established you then type your message, pressing ^D (control-D) to +end. + +If the receiving computer is running WinPopup the user will +receive the message and probably a beep. If they are not running +WinPopup the message will be lost, and no error message will +occur. + +The message is also automatically truncated if the message +is over 1600 bytes, as this is the limit of the protocol. + +One useful trick is to cat the message through +\fBsmbclient\fR. For example: \fB cat mymessage.txt | smbclient -M FRED \fR will +send the message in the file \fImymessage.txt\fR +to the machine FRED. + +You may also find the \fI-U\fR and +\fI-I\fR options useful, as they allow you to +control the FROM and TO parts of the message. + +See the message command parameter in the \fI smb.conf(5)\fR for a description of how to handle incoming +WinPopup messages in Samba. + +\fBNote\fR: Copy WinPopup into the startup group +on your WfWg PCs if you want them to always be able to receive +messages. +.TP +\fB-i scope\fR +This specifies a NetBIOS scope that smbclient will +use to communicate with when generating NetBIOS names. For details +on the use of NetBIOS scopes, see rfc1001.txt and rfc1002.txt. +NetBIOS scopes are \fBvery\fR rarely used, only set +this parameter if you are the system administrator in charge of all +the NetBIOS systems you communicate with. +.TP +\fB-N\fR +If specified, this parameter suppresses the normal +password prompt from the client to the user. This is useful when +accessing a service that does not require a password. + +Unless a password is specified on the command line or +this parameter is specified, the client will request a +password. +.TP +\fB-n NetBIOS name\fR +By default, the client will use the local +machine's hostname (in uppercase) as its NetBIOS name. This parameter +allows you to override the host name and use whatever NetBIOS +name you wish. +.TP +\fB-d debuglevel\fR +debuglevel is an integer from 0 to 10, or +the letter 'A'. + +The default value if this parameter is not specified +is zero. + +The higher this value, the more detail will be logged to +the log files about the activities of the +client. 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. If debuglevel is set to the letter 'A', then \fBall +\fRdebug messages will be printed. This setting +is for developers only (and people who \fBreally\fR want +to know how the code works internally). + +Note that specifying this parameter here will override +the log level parameter in the \fBsmb.conf (5)\fR +file. +.TP +\fB-p port\fR +This number is the TCP port number that will be used +when making connections to the server. The standard (well-known) +TCP port number for an SMB/CIFS server is 139, which is the +default. +.TP +\fB-l logfilename\fR +If specified, logfilename specifies a base filename +into which operational data from the running client will be +logged. + +The default base name is specified at compile time. + +The base name is used to generate actual log file names. +For example, if the name specified was "log", the debug file +would be \fIlog.client\fR. + +The log file generated is never removed by the client. +.TP +\fB-h\fR +Print the usage message for the client. +.TP +\fB-I IP-address\fR +IP address is the address of the server to connect to. +It should be specified in standard "a.b.c.d" notation. + +Normally the client would attempt to locate a named +SMB/CIFS server by looking it up via the NetBIOS name resolution +mechanism described above in the \fIname resolve order\fR +parameter above. Using this parameter will force the client +to assume that the server is on the machine with the specified IP +address and the NetBIOS name component of the resource being +connected to will be ignored. + +There is no default for this parameter. If not supplied, +it will be determined automatically by the client as described +above. +.TP +\fB-E\fR +This parameter causes the client to write messages +to the standard error stream (stderr) rather than to the standard +output stream. + +By default, the client writes messages to standard output +- typically the user's tty. +.TP +\fB-U username[%pass]\fR +Sets the SMB username or username and password. +If %pass is not specified, The user will be prompted. The client +will first check the USER environment variable, then the +\fI$LOGNAME\fR variable and if either exist, the +string is uppercased. Anything in these variables following a '%' +sign will be treated as the password. If these environmental +variables are not found, the username GUEST +is used. + +If the password is not included in these environment +variables (using the %pass syntax), rpcclient will look for +a \fI$PASSWD\fR environment variable from which +to read the password. + +A third option is to use a credentials file which +contains the plaintext of the username and password. This +option is mainly provided for scripts where the admin doesn't +desire to pass the credentials on the command line or via environment +variables. If this method is used, make certain that the permissions +on the file restrict access from unwanted users. See the +\fI-A\fR for more details. + +Be cautious about including passwords in scripts or in +the \fI$PASSWD\fR environment variable. Also, on +many systems the command line of a running process may be seen +via the \fBps\fR command to be safe always allow +\fBrpcclient\fR to prompt for a password and type +it in directly. +.TP +\fB-A filename\fR +This option allows +you to specify a file from which to read the username and +password used in the connection. The format of the file is + +.sp +.nf +username = <value> +password = <value> + +.sp +.fi + +Make certain that the permissions on the file restrict +access from unwanted users. +.TP +\fB-L\fR +This option allows you to look at what services +are available on a server. You use it as \fBsmbclient -L +host\fR and a list should appear. The \fI-I +\fRoption may be useful if your NetBIOS names don't +match your tcp/ip dns host names or if you are trying to reach a +host on another network. +.TP +\fB-t terminal code\fR +This option tells smbclient how to interpret +filenames coming from the remote server. Usually Asian language +multibyte UNIX implementations use different character sets than +SMB/CIFS servers (\fBEUC\fR instead of \fB SJIS\fR for example). Setting this parameter will let +\fBsmbclient\fR convert between the UNIX filenames and +the SMB filenames correctly. This option has not been seriously tested +and may have some problems. + +The terminal codes include CWsjis, CWeuc, CWjis7, CWjis8, +CWjunet, CWhex, CWcap. This is not a complete list, check the Samba +source code for the complete list. +.TP +\fB-b buffersize\fR +This option changes the transmit/send buffer +size when getting or putting a file from/to the server. The default +is 65520 bytes. Setting this value smaller (to 1200 bytes) has been +observed to speed up file transfers to and from a Win9x server. +.TP +\fB-W WORKGROUP\fR +Override the default workgroup specified in the +workgroup parameter of the \fIsmb.conf\fR file +for this connection. This may be needed to connect to some +servers. +.TP +\fB-T tar options\fR +smbclient may be used to create \fBtar(1) +\fRcompatible backups of all the files on an SMB/CIFS +share. The secondary tar flags that can be given to this option +are : +.RS +.TP 0.2i +\(bu +\fIc\fR - Create a tar file on UNIX. +Must be followed by the name of a tar file, tape device +or "-" for standard output. If using standard output you must +turn the log level to its lowest value -d0 to avoid corrupting +your tar file. This flag is mutually exclusive with the +\fIx\fR flag. +.TP 0.2i +\(bu +\fIx\fR - Extract (restore) a local +tar file back to a share. Unless the -D option is given, the tar +files will be restored from the top level of the share. Must be +followed by the name of the tar file, device or "-" for standard +input. Mutually exclusive with the \fIc\fR flag. +Restored files have their creation times (mtime) set to the +date saved in the tar file. Directories currently do not get +their creation dates restored properly. +.TP 0.2i +\(bu +\fII\fR - Include files and directories. +Is the default behavior when filenames are specified above. Causes +tar files to be included in an extract or create (and therefore +everything else to be excluded). See example below. Filename globbing +works in one of two ways. See r below. +.TP 0.2i +\(bu +\fIX\fR - Exclude files and directories. +Causes tar files to be excluded from an extract or create. See +example below. Filename globbing works in one of two ways now. +See \fIr\fR below. +.TP 0.2i +\(bu +\fIb\fR - Blocksize. Must be followed +by a valid (greater than zero) blocksize. Causes tar file to be +written out in blocksize*TBLOCK (usually 512 byte) blocks. +.TP 0.2i +\(bu +\fIg\fR - Incremental. Only back up +files that have the archive bit set. Useful only with the +\fIc\fR flag. +.TP 0.2i +\(bu +\fIq\fR - Quiet. Keeps tar from printing +diagnostics as it works. This is the same as tarmode quiet. +.TP 0.2i +\(bu +\fIr\fR - Regular expression include +or exclude. Uses regular regular expression matching for +excluding or excluding files if compiled with HAVE_REGEX_H. +However this mode can be very slow. If not compiled with +HAVE_REGEX_H, does a limited wildcard match on '*' and '?'. +.TP 0.2i +\(bu +\fIN\fR - Newer than. Must be followed +by the name of a file whose date is compared against files found +on the share during a create. Only files newer than the file +specified are backed up to the tar file. Useful only with the +\fIc\fR flag. +.TP 0.2i +\(bu +\fIa\fR - Set archive bit. Causes the +archive bit to be reset when a file is backed up. Useful with the +\fIg\fR and \fIc\fR flags. +.RE +.PP +\fBTar Long File Names\fR +.PP +.PP +\fBsmbclient\fR's tar option now supports long +file names both on backup and restore. However, the full path +name of the file must be less than 1024 bytes. Also, when +a tar archive is created, smbclient's tar option places all +files in the archive with relative names, not absolute names. +.PP +.PP +\fBTar Filenames\fR +.PP +.PP +All file names can be given as DOS path names (with '\\' +as the component separator) or as UNIX path names (with '/' as +the component separator). +.PP +.PP +\fBExamples\fR +.PP +.PP +Restore from tar file backup.tar into myshare on mypc +(no password on share). +.PP +.PP +\fBsmbclient //mypc/myshare "" -N -Tx backup.tar +\fR.PP +.PP +Restore everything except \fIusers/docs\fR +.PP +.PP +\fBsmbclient //mypc/myshare "" -N -TXx backup.tar +users/docs\fR +.PP +.PP +Create a tar file of the files beneath \fI users/docs\fR. +.PP +.PP +\fBsmbclient //mypc/myshare "" -N -Tc +backup.tar users/docs \fR +.PP +.PP +Create the same tar file as above, but now use +a DOS path name. +.PP +.PP +\fBsmbclient //mypc/myshare "" -N -tc backup.tar +users\\edocs \fR +.PP +.PP +Create a tar file of all the files and directories in +the share. +.PP +.PP +\fBsmbclient //mypc/myshare "" -N -Tc backup.tar * +\fR.PP +.TP +\fB-D initial directory\fR +Change to initial directory before starting. Probably +only of any use with the tar -T option. +.TP +\fB-c command string\fR +command string is a semicolon separated list of +commands to be executed instead of prompting from stdin. \fI -N\fR is implied by \fI-c\fR. + +This is particularly useful in scripts and for printing stdin +to the server, e.g. \fB-c 'print -'\fR. +.SH "OPERATIONS" +.PP +Once the client is running, the user is presented with +a prompt : +.PP +smb:\\> +.PP +The backslash ("\\") indicates the current working directory +on the server, and will change if the current working directory +is changed. +.PP +The prompt indicates that the client is ready and waiting to +carry out a user command. Each command is a single word, optionally +followed by parameters specific to that command. Command and parameters +are space-delimited unless these notes specifically +state otherwise. All commands are case-insensitive. Parameters to +commands may or may not be case sensitive, depending on the command. +.PP +You can specify file names which have spaces in them by quoting +the name with double quotes, for example "a long file name". +.PP +Parameters shown in square brackets (e.g., "[parameter]") are +optional. If not given, the command will use suitable defaults. Parameters +shown in angle brackets (e.g., "<parameter>") are required. +.PP +Note that all commands operating on the server are actually +performed by issuing a request to the server. Thus the behavior may +vary from server to server, depending on how the server was implemented. +.PP +The commands available are given here in alphabetical order. +.TP +\fB? [command]\fR +If "command" is specified, the ? command will display +a brief informative message about the specified command. If no +command is specified, a list of available commands will +be displayed. +.TP +\fB! [shell command]\fR +If "shell command" is specified, the ! +command will execute a shell locally and run the specified shell +command. If no command is specified, a local shell will be run. +.TP +\fBcd [directory name]\fR +If "directory name" is specified, the current +working directory on the server will be changed to the directory +specified. This operation will fail if for any reason the specified +directory is inaccessible. + +If no directory name is specified, the current working +directory on the server will be reported. +.TP +\fBdel <mask>\fR +The client will request that the server attempt +to delete all files matching "mask" from the current working +directory on the server. +.TP +\fBdir <mask>\fR +A list of the files matching "mask" in the current +working directory on the server will be retrieved from the server +and displayed. +.TP +\fBexit\fR +Terminate the connection with the server and exit +from the program. +.TP +\fBget <remote file name> [local file name]\fR +Copy the file called "remote file name" from +the server to the machine running the client. If specified, name +the local copy "local file name". Note that all transfers in +\fBsmbclient\fR are binary. See also the +lowercase command. +.TP +\fBhelp [command]\fR +See the ? command above. +.TP +\fBlcd [directory name]\fR +If "directory name" is specified, the current +working directory on the local machine will be changed to +the directory specified. This operation will fail if for any +reason the specified directory is inaccessible. + +If no directory name is specified, the name of the +current working directory on the local machine will be reported. +.TP +\fBlowercase\fR +Toggle lowercasing of filenames for the get and +mget commands. + +When lowercasing is toggled ON, local filenames are converted +to lowercase when using the get and mget commands. This is +often useful when copying (say) MSDOS files from a server, because +lowercase filenames are the norm on UNIX systems. +.TP +\fBls <mask>\fR +See the dir command above. +.TP +\fBmask <mask>\fR +This command allows the user to set up a mask +which will be used during recursive operation of the mget and +mput commands. + +The masks specified to the mget and mput commands act as +filters for directories rather than files when recursion is +toggled ON. + +The mask specified with the mask command is necessary +to filter files within those directories. For example, if the +mask specified in an mget command is "source*" and the mask +specified with the mask command is "*.c" and recursion is +toggled ON, the mget command will retrieve all files matching +"*.c" in all directories below and including all directories +matching "source*" in the current working directory. + +Note that the value for mask defaults to blank (equivalent +to "*") and remains so until the mask command is used to change it. +It retains the most recently specified value indefinitely. To +avoid unexpected results it would be wise to change the value of +mask back to "*" after using the mget or mput commands. +.TP +\fBmd <directory name>\fR +See the mkdir command. +.TP +\fBmget <mask>\fR +Copy all files matching mask from the server to +the machine running the client. + +Note that mask is interpreted differently during recursive +operation and non-recursive operation - refer to the recurse and +mask commands for more information. Note that all transfers in +smbclient are binary. See also the lowercase command. +.TP +\fBmkdir <directory name>\fR +Create a new directory on the server (user access +privileges permitting) with the specified name. +.TP +\fBmput <mask>\fR +Copy all files matching mask in the current working +directory on the local machine to the current working directory on +the server. + +Note that mask is interpreted differently during recursive +operation and non-recursive operation - refer to the recurse and mask +commands for more information. Note that all transfers in smbclient +are binary. +.TP +\fBprint <file name>\fR +Print the specified file from the local machine +through a printable service on the server. + +See also the printmode command. +.TP +\fBprintmode <graphics or text>\fR +Set the print mode to suit either binary data +(such as graphical information) or text. Subsequent print +commands will use the currently set print mode. +.TP +\fBprompt\fR +Toggle prompting for filenames during operation +of the mget and mput commands. + +When toggled ON, the user will be prompted to confirm +the transfer of each file during these commands. When toggled +OFF, all specified files will be transferred without prompting. +.TP +\fBput <local file name> [remote file name]\fR +Copy the file called "local file name" from the +machine running the client to the server. If specified, +name the remote copy "remote file name". Note that all transfers +in smbclient are binary. See also the lowercase command. +.TP +\fBqueue\fR +Displays the print queue, showing the job id, +name, size and current status. +.TP +\fBquit\fR +See the exit command. +.TP +\fBrd <directory name>\fR +See the rmdir command. +.TP +\fBrecurse\fR +Toggle directory recursion for the commands mget +and mput. + +When toggled ON, these commands will process all directories +in the source directory (i.e., the directory they are copying +from ) and will recurse into any that match the mask specified +to the command. Only files that match the mask specified using +the mask command will be retrieved. See also the mask command. + +When recursion is toggled OFF, only files from the current +working directory on the source machine that match the mask specified +to the mget or mput commands will be copied, and any mask specified +using the mask command will be ignored. +.TP +\fBrm <mask>\fR +Remove all files matching mask from the current +working directory on the server. +.TP +\fBrmdir <directory name>\fR +Remove the specified directory (user access +privileges permitting) from the server. +.TP +\fBtar <c|x>[IXbgNa]\fR +Performs a tar operation - see the \fI-T +\fRcommand line option above. Behavior may be affected +by the tarmode command (see below). Using g (incremental) and N +(newer) will affect tarmode settings. Note that using the "-" option +with tar x may not work - use the command line option instead. +.TP +\fBblocksize <blocksize>\fR +Blocksize. Must be followed by a valid (greater +than zero) blocksize. Causes tar file to be written out in +blocksize*TBLOCK (usually 512 byte) blocks. +.TP +\fBtarmode <full|inc|reset|noreset>\fR +Changes tar's behavior with regard to archive +bits. In full mode, tar will back up everything regardless of the +archive bit setting (this is the default mode). In incremental mode, +tar will only back up files with the archive bit set. In reset mode, +tar will reset the archive bit on all files it backs up (implies +read/write share). +.TP +\fBsetmode <filename> <perm=[+|\\-]rsha>\fR +A version of the DOS attrib command to set +file permissions. For example: + +\fBsetmode myfile +r \fR + +would make myfile read only. +.SH "NOTES" +.PP +Some servers are fussy about the case of supplied usernames, +passwords, share names (AKA service names) and machine names. +If you fail to connect try giving all parameters in uppercase. +.PP +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. +.PP +smbclient supports long file names where the server +supports the LANMAN2 protocol or above. +.SH "ENVIRONMENT VARIABLES" +.PP +The variable \fI$USER\fR may contain the +username of the person using the client. This information is +used only if the protocol level is high enough to support +session-level passwords. +.PP +The variable \fI$PASSWD\fR may contain +the password of the person using the client. This information is +used only if the protocol level is high enough to support +session-level passwords. +.SH "INSTALLATION" +.PP +The location of the client program is a matter for +individual system administrators. The following are thus +suggestions only. +.PP +It is recommended that the smbclient software be installed +in the \fI/usr/local/samba/bin/\fR or \fI /usr/samba/bin/\fR directory, this directory readable +by all, writeable only by root. The client program itself should +be executable by all. The client should \fBNOT\fR be +setuid or setgid! +.PP +The client log files should be put in a directory readable +and writeable only by the user. +.PP +To test the client, you will need to know the name of a +running SMB/CIFS server. It is possible to run \fBsmbd(8) +\fRan ordinary user - running that server as a daemon +on a user-accessible port (typically any port number over 1024) +would provide a suitable test server. +.SH "DIAGNOSTICS" +.PP +Most diagnostics issued by the client are logged in a +specified log file. The log file name is specified at compile time, +but may be overridden on the command line. +.PP +The number and nature of diagnostics available depends +on the debug level used by the client. If you have problems, +set the debug level to 3 and peruse the log files. +.SH "VERSION" +.PP +This man page is correct for version 2.2 of +the Samba suite. +.SH "AUTHOR" +.PP +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. +.PP +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/ <URL: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 |