1
0
mirror of https://github.com/samba-team/samba.git synced 2025-08-07 09:49:30 +03:00
Files
samba-mirror/docs/manpages/rpcclient.8
Gerald Carter 0202f7e249 first draft at rpcclient man page for HEAD branch. Taken heavily
from the man page in TNG.  Updated for newer spoolss commands.



jerry
-

241 lines
9.6 KiB
Groff

.TH "RPCCLIENT" "8" "August 27, 2000" "Samba" "SAMBA"
.SH "NAME"
rpcclient \- developer\'s tool to testing client side MS-RPC functions
.SH "SYNOPSIS"
.IP "\fBrpcclient\fP"
[-d debuglevel] [-S server] [-l logbasename] [-n netbios name] [-N]
[-m maxprotocol] [-I destIP] [-E] [-U username] [-W workgroup] [-c `command string`]
[-t terminalcode] [-i scope] [-O socket options]
[-s smb\&.conf]
.SH "DESCRIPTION"
.IP "\fBrpcclient\fP"
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"
.PP
.IP
.IP "\fB-d debuglevel\fP"
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)\&.
.IP
.IP "\fB-S server\fP"
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 \fB-R\fP option\&.
.IP
.IP "\fB-l logbasename\fP"
File name for log/debug files\&. \&.client will be
appended\&. The log file is never removed by the client\&.
.IP
.IP "\fB-n netbios name\fP"
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\&.
.IP
.IP "\fB-N\fP"
tells rpcclient not to ask for a password\&. rpcclient will prompt
the user by default\&.
.IP
.IP "\fB-I destIP\fP"
The IP address of the server specified with the \fB-S\fP
option\&. Only needed when the server\'s NetBIOS
name cannot be resolved using WINS or broadcast
and isn\'t found in the LMHOSTS file\&.
.IP
.IP "\fB-E\fP"
causes regedit to write messages to stderr instead of stdout\&.
.IP
.IP "\fB-U username[%pass]\fP"
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\&.
.IP
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\&.
.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
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-W domain\fP"
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)\&.
.IP
.IP "\fB-P\fP"
operate in promptless mode\&. Without this mode (the default)
rpcclient displays a prompt of the form \'[domain\eusername@host]$\'
.IP
.IP "\fB-c \'command string\'\fP"
execute semicolon separated commands (listed below))
.IP
.IP "\fB-t terminalcode\fP"
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\&.
.IP
.IP "\fB-O socket options\fP"
These socket options are the same as in smb\&.conf (under the bt(socket options = )
section)\&.
.IP
.IP "\fB-s smb\&.conf\fP"
Specifies the location of the all important smb\&.conf file\&.
.IP
.IP "\fB-i scope\fP"
Defines the NetBIOS scope\&. For more information on NetBIOS scopes, see rfc1001
and rfc1002\&. NetBIOS scopes are rarely used\&.
.IP
.PP
.SH "COMMANDS"
.PP
.IP "\fBSPOOLSS Commands\fP"
.IP "spoolenum"
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\&.
.PP
.IP "spoolenumports <level>"
Executes an EnumPorts call using the specified info level\&.
Currently only info level 1 and 2 are supported\&.
.PP
.IP "spoolenumdata"
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\&.
.PP
.IP "spooljobs <printer>"
List the jobs and status of a given printer\&. This command
corresponds to the MS Platform SDK EnumJobs function\&.
.PP
.IP "spoolopen <printer>"
Execute an OpenPrinterEx() and ClosePrinter()
RPC against a given printer\&.
.PP
.IP "spoolgetdata"
Retrive the data for a given printer setting\&. See the
\fBspoolenumdata\fP command for more information\&. This command
corresponds to the GetPrinterData() MS Platform SDK function\&.
.PP
.IP "spoolgetprinter <printer>"
Retrieve the current printer information\&. This command
sorresponds to the GetPrinter() MS Platform SDK function\&.
.PP
.IP "spoolgetprinterdriver <printer>"
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\&.
.PP
.IP "spoolgetprinterdriverdir <arch>"
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"\&.
.PP
.YODLTAGSTART. roffcmd .IP "spooladdprinter <printername> <sharename>
<drivername> <port>" .YODLTAGEND.
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 \fBaddprinterdriver\fP) and the <port> must
be a valid port name\&.
.PP
.IP "spooladdprinterdriver <arch> <config>"
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
\fBspoolgetprinterdriverdir\fP\&. Possible values for <arch>
are the same as those for the \fBspooolgetprintedriverdir\fP command\&.
The <config> parameter is defined as follows:
.PP
.IP ""
<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>
.PP
.IP ""
Any empty fields should be enter as the string "NULL"\&.
.PP
.IP ""
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\&.
.PP
.IP "\fBGeneral Commands\fP"
.IP "set"
Set miscellaneous rpcclient command line options during a running
session\&.
.PP
.IP "use"
Connect to a rmeote SMB server\&. \fBrpcclient\fP has the ability
to maintain connections to multiple server simulaneously\&.
.PP
.IP "help"
Print a listing of all known commands or extended help
on a particular command\&.
.PP
.IP "quit"
Exit rpcclient\&.
.PP
.SH "BUGS"
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\&.
.PP
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\&.
.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)\fP 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\&."
.PP
.SH "SEE ALSO"
\fBsamba (7)\fP
.SH "AUTHOR"
Samba is written by The Samba Team as Open Source\&. This man page was written
by Matthew Geddes, Luke Kenneth Casson, and Gerald Carter\&.