mirror of
https://github.com/samba-team/samba.git
synced 2025-01-29 21:47:30 +03:00
2fca4a1c69
from the man page in TNG. Updated for newer spoolss commands. jerry (This used to be commit 0202f7e249a3988f94ab38706e6f6224148868bb)
242 lines
12 KiB
HTML
242 lines
12 KiB
HTML
|
|
|
|
|
|
|
|
<html><head><title>RPCCLIENT</title>
|
|
|
|
<link rev="made" href="mailto:samba-bugs@samba.org">
|
|
</head>
|
|
<body>
|
|
|
|
<hr>
|
|
|
|
<h1>RPCCLIENT</h1>
|
|
<h2>Samba</h2>
|
|
<h2>August 27, 2000</h2>
|
|
|
|
|
|
|
|
|
|
<a name="NAME"></a>
|
|
<h2>NAME</h2>
|
|
rpcclient - developer's tool to testing client side MS-RPC functions
|
|
<a name="SYNOPSIS"></a>
|
|
<h2>SYNOPSIS</h2>
|
|
|
|
<li><strong><strong>rpcclient</strong></strong> [<a href="rpcclient.8.html#minusd">-d debuglevel</a>] [<a href="rpcclient.8.html#minusS">-S server</a>] [<a href="rpcclient.8.html#minusl">-l logbasename</a>] [<a href="rpcclient.8.html#minusn">-n netbios name</a>] [<a href="rpcclient.8.html#minusN">-N</a>]
|
|
[<a href="rpcclient.8.html#minusl">-m maxprotocol</a>] [<a href="rpcclient.8.html#minusI">-I destIP</a>] [<a href="rpcclient.8.html#minusE">-E</a>] [<a href="rpcclient.8.html#minusU">-U username</a>] [<a href="rpcclient.8.html#minusW">-W workgroup</a>] [<a href="rpcclient.8.html#minusc">-c `command string`</a>]
|
|
[<a href="rpcclient.8.html#minust">-t terminalcode</a>] [<a href="rpcclient.8.html#minusi">-i scope</a>] [<a href="rpcclient.8.html#minusO">-O socket options</a>]
|
|
[<a href="rpcclient.8.html#minuss">-s smb.conf</a>]
|
|
<a name="DESCRIPTION"></a>
|
|
<h2>DESCRIPTION</h2>
|
|
|
|
<li><strong><strong>rpcclient</strong></strong>
|
|
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.
|
|
<a name="OPTIONS"></a>
|
|
<h2>OPTIONS</h2>
|
|
|
|
<p><br><ul>
|
|
<p><br><a name="minusd"></a>
|
|
<li><strong><strong>-d debuglevel</strong></strong>
|
|
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><br><a name="minusS"></a>
|
|
<li><strong><strong>-S server</strong></strong>
|
|
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 "name resolve
|
|
order = " line or by using the <strong>-R</strong> option.
|
|
<p><br><a name="minusl"></a>
|
|
<li><strong><strong>-l logbasename</strong></strong>
|
|
File name for log/debug files. .client will be
|
|
appended. The log file is never removed by the client.
|
|
<p><br><a name="minusn"></a>
|
|
<li><strong><strong>-n netbios name</strong></strong>
|
|
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><br><a name="minusN"></a>
|
|
<li><strong><strong>-N</strong></strong>
|
|
tells rpcclient not to ask for a password. rpcclient will prompt
|
|
the user by default.
|
|
<p><br><a name="minusI"></a>
|
|
<li><strong><strong>-I destIP</strong></strong>
|
|
The IP address of the server specified with the <strong>-S</strong>
|
|
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><br><a name="minusE"></a>
|
|
<li><strong><strong>-E</strong></strong>
|
|
causes regedit to write messages to stderr instead of stdout.
|
|
<p><br><a name="minusU"></a>
|
|
<li><strong><strong>-U username[%pass]</strong></strong>
|
|
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 LOGNAME 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.
|
|
<p><br>If the password is not included in these environment variables
|
|
(using the %pass syntax), rpcclient will look for a PASSWD environment
|
|
variable from which to read the password.
|
|
<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>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="minusW"></a>
|
|
<li><strong><strong>-W domain</strong></strong>
|
|
Set the SMB domain of the username. This overrides the default
|
|
domain which is the domain of the server specified with the
|
|
bt(-S) 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><br><a name="minusP"></a>
|
|
<li><strong><strong>-P</strong></strong>
|
|
operate in promptless mode. Without this mode (the default)
|
|
rpcclient displays a prompt of the form '[domain\username@host]$'
|
|
<p><br><a name="minusc"></a>
|
|
<li><strong><strong>-c 'command string'</strong></strong>
|
|
execute semicolon separated commands (listed below))
|
|
<p><br><a name="minust"></a>
|
|
<li><strong><strong>-t terminalcode</strong></strong>
|
|
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><br><a name="minusO"></a>
|
|
<li><strong><strong>-O socket options</strong></strong>
|
|
These socket options are the same as in smb.conf (under the bt(socket options = )
|
|
section).
|
|
<p><br><a name="minuss"></a>
|
|
<li><strong><strong>-s smb.conf</strong></strong>
|
|
Specifies the location of the all important smb.conf file.
|
|
<p><br><a name="minusi"></a>
|
|
<li><strong><strong>-i scope</strong></strong>
|
|
Defines the NetBIOS scope. For more information on NetBIOS scopes, see rfc1001
|
|
and rfc1002. NetBIOS scopes are rarely used.
|
|
<p><br></ul>
|
|
<p><br><a name="COMMANDS"></a>
|
|
<h2>COMMANDS</h2>
|
|
|
|
<p><br><a name="SPOOLSSCMD"></a>
|
|
<li><strong><strong>SPOOLSS Commands</strong></strong>
|
|
<li><strong><a href="??">spoolenum</a></strong>
|
|
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><br><li><strong><a href="??">spoolenumports <level></a></strong>
|
|
Executes an EnumPorts call using the specified info level.
|
|
Currently only info level 1 and 2 are supported.
|
|
<p><br><li><strong><a href="??">spoolenumdata</a></strong>
|
|
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 EnumPorts
|
|
function.
|
|
<p><br><li><strong><a href="??">spooljobs <printer></a></strong>
|
|
List the jobs and status of a given printer. This command
|
|
corresponds to the MS Platform SDK EnumJobs function.
|
|
<p><br><li><strong><a href="??">spoolopen <printer></a></strong>
|
|
Execute an OpenPrinterEx() and ClosePrinter()
|
|
RPC against a given printer.
|
|
<p><br><li><strong><a href="??">spoolgetdata</a></strong>
|
|
Retrive the data for a given printer setting. See the
|
|
<strong>spoolenumdata</strong> command for more information. This command
|
|
corresponds to the GetPrinterData() MS Platform SDK function.
|
|
<p><br><li><strong><a href="??">spoolgetprinter <printer></a></strong>
|
|
Retrieve the current printer information. This command
|
|
sorresponds to the GetPrinter() MS Platform SDK function.
|
|
<p><br><li><strong><a href="??">spoolgetprinterdriver <printer></a></strong>
|
|
Retrive 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><br><li><strong><a href="??">spoolgetprinterdriverdir <arch></a></strong>
|
|
Execute a GetPrinterDriverDirectory() RPC to retreive the
|
|
SMB share name and subdirectory for storing printer driver
|
|
files for a given architecture. Possible values for <arch> are
|
|
"Windows 4.0" (for Windows 95/98), "Windows NT x86", "Windows NT
|
|
PowerPC", "Windows Alpha_AXP", and "Windows NT R4000".
|
|
<p><br><li><strong><a href="??">spooladdprinter <printername> <sharename>
|
|
<drivername> <port></a></strong>
|
|
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 <strong>addprinterdriver</strong>) and the <port> must
|
|
be a valid port name.
|
|
<p><br><li><strong><a href="??">spooladdprinterdriver <arch> <config></a></strong>
|
|
Execute an AddPrinterDriver() RPC to install the printer
|
|
driver information on the server. Note that the driver files
|
|
should already exist in the directort returned by
|
|
<strong>spoolgetprinterdriverdir</strong>. Possible values for <arch>
|
|
are the same as those for the <strong>spooolgetprintedriverdir</strong> command.
|
|
The <config> parameter is defined as follows:
|
|
<p><br><li><strong></strong><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>
|
|
<p><br><li><strong></strong>Any empty fields should be enter as the string "NULL".
|
|
<p><br><li><strong></strong>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><br><a name="GENERALCMD"></a>
|
|
<li><strong><strong>General Commands</strong></strong>
|
|
<li><strong><a href="??">set</a></strong>
|
|
Set miscellaneous rpcclient command line options during a running
|
|
session.
|
|
<p><br><li><strong><a href="??">use</a></strong>
|
|
Connect to a rmeote SMB server. <strong>rpcclient</strong> has the ability
|
|
to maintain connections to multiple server simulaneously.
|
|
<p><br><li><strong><a href="??">help</a></strong>
|
|
Print a listing of all known commands or extended help
|
|
on a particular command.
|
|
<p><br><li><strong><a href="??">quit</a></strong>
|
|
Exit rpcclient.
|
|
<p><br><a name="BUGS"></a>
|
|
<h2>BUGS</h2>
|
|
|
|
rpcclient 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><br>From Luke Leighton's original rpcclient man page:
|
|
"WARNING! 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><br>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
|
|
<strong>smbd(8)</strong> and rpcclient 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><br><a name="SEEALSO"></a>
|
|
<h2>SEE ALSO</h2>
|
|
|
|
<strong>samba (7)</strong>
|
|
<h2>AUTHOR</h2>
|
|
|
|
Samba is written by The Samba Team as Open Source. This man page was written
|
|
by Matthew Geddes, Luke Kenneth Casson, and Gerald Carter.
|
|
</body>
|
|
</html>
|