7. WBEM utility commands¶
The pywbem package provides a number of WBEM utility commands. They are all implemented as pure-Python scripts.
These commands are installed into the Python script directory and should therefore automatically be available in the command search path.
The following commands are provided:
-
A MOF compiler that takes MOF files as input and creates, updates or removes CIM instances, classes or qualifier types in a CIM repository.
-
A WBEM command line interface that provides an interactive Python environment for issuing WBEM operations to a WBEM server.
7.1. mof_compiler¶
The mof_compiler
command is a MOF compiler. It compiles MOF files, and
updates the repository of a WBEM server with the result.
The MOF compiler can also be invoked from programs via the MOF compiler API.
The MOF compiler has a pluggable interface for the CIM repository. The default implementation of that interface uses a WBEM server as its repository. The plug interface is also described in the MOF compiler API.
Here is the help text of the command:
usage: mof_compiler [options] moffile ...
Compile MOF files, and update a namespace in a WBEM server with the result.
Positional arguments:
moffile Path name of the MOF file to be compiled.
Can be specified multiple times.
Server related options:
Specify the WBEM server and namespace the MOF compiler works against, for
looking up existing elements, and for applying the MOF compilation results
to.
-s url, --server url Host name or URL of the WBEM server (required),
in this format:
[scheme://]host[:port]
- scheme: Defines the protocol to use:
- "https" for HTTPS protocol
- "http" for HTTP protocol
Default: "https".
- host: Defines host name as follows:
- short or fully qualified DNS hostname
- literal IPV4 address(dotted)
- literal IPV6 address (RFC 3986) with zone
identifier extensions(RFC 6874)
supporting "-" or %25 for the delimiter
- port: Defines the WBEM server port to be used.
Defaults:
- 5988, when using HTTP
- 5989, whenusing HTTPS
-n namespace, --namespace namespace
Namespace in the WBEM server.
Default: root/cimv2
Connection security related options:
Specify user name and password or certificates and keys
-u user, --user user User name for authenticating with the WBEM server.
Default: No user name.
-p password, --password password
Password for authenticating with the WBEM server.
Default: Will be prompted for, if user name
specified.
-nvc, --no-verify-cert
Client will not verify certificate returned by the
WBEM server (see cacerts). This bypasses the client-
side verification of the server identity, but allows
encrypted communication with a server for which the
client does not have certificates.
--cacerts cacerts File or directory containing certificates that will be
matched against a certificate received from the WBEM
server. Set the --no-verify-cert option to bypass
client verification of the WBEM server certificate.
Default: Searches for matching certificates in the
following system directories:
/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt
/etc/ssl/certs
/etc/ssl/certificates
--certfile certfile Client certificate file for authenticating with the
WBEM server. If option specified the client attempts
to execute mutual authentication.
Default: Simple authentication.
--keyfile keyfile Client private key file for authenticating with the
WBEM server. Not required if private key is part of the
certfile option. Not allowed if no certfile option.
Default: No client key file. Client private key should
then be part of the certfile
Action related options:
Specify actions against the WBEM server's namespace. Default:
Create/update elements.
-r, --remove Remove elements (found in the MOF files) from the WBEM
server's namespace, instead of creating or updating
them
-d, --dry-run Don't actually modify the WBEM server's namespace,
just check MOF syntax. Connection to WBEM server is
still required to check qualifiers.
General options:
-I dir, --include dir
Path name of a MOF include directory. Can be specified
multiple times.
-v, --verbose Print more messages while processing
-h, --help Show this help message and exit
Example: mof_compiler CIM_Schema_2.45.mof -s https://localhost:15989 -n
root/cimv2 -u sheldon -p penny42
7.2. wbemcli¶
The wbemcli
command is a WBEM client command line interface (CLI). It is
implemented as an interactive shell.
The WBEM client CLI does not have an external API on its own; it is for the most part a consumer of the WBEM client library API.
Here is the help text of the command:
usage: wbemcli [options] server
Provide an interactive shell for issuing operations against a WBEM server.
Positional arguments:
server Host name or url of the WBEM server in this format:
[{scheme}://]{host}[:{port}]
- scheme: Defines the protocol to use;
- "https" for HTTPs protocol
- "http" for HTTP protocol.
Default: "https".
- host: Defines host name as follows:
- short or fully qualified DNS hostname,
- literal IPV4 address(dotted)
- literal IPV6 address (RFC 3986) with zone
identifier extensions(RFC 6874)
supporting "-" or %25 for the delimiter.
- port: Defines the WBEM server port to be used
Defaults:
- HTTP - 5988
- HTTPS - 5989
Server related options:
Specify the WBEM server namespace and timeout
-n namespace, --namespace namespace
Default namespace in the WBEM server for operation
requests when namespace option not supplied with
operation request.
Default: root/cimv2
-t timeout, --timeout timeout
Timeout of the completion of WBEM Server operation
in seconds(integer between 0 and 300).
Default: No timeout
Connection security related options:
Specify user name and password or certificates and keys
-u user, --user user User name for authenticating with the WBEM server.
Default: No user name.
-p password, --password password
Password for authenticating with the WBEM server.
Default: Will be prompted for, if user name
specified.
-nvc, --no-verify-cert
Client will not verify certificate returned by the
WBEM server (see cacerts). This bypasses the client-
side verification of the server identity, but allows
encrypted communication with a server for which the
client does not have certificates.
--cacerts cacerts File or directory containing certificates that will be
matched against a certificate received from the WBEM
server. Set the --no-verify-cert option to bypass
client verification of the WBEM server certificate.
Default: Searches for matching certificates in the
following system directories:
/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt
/etc/ssl/certs
/etc/ssl/certificates
--certfile certfile Client certificate file for authenticating with the
WBEM server. If option specified the client attempts
to execute mutual authentication.
Default: Simple authentication.
--keyfile keyfile Client private key file for authenticating with the
WBEM server. Not required if private key is part of the
certfile option. Not allowed if no certfile option.
Default: No client key file. Client private key should
then be part of the certfile
General options:
-v, --verbose Print more messages while processing
-h, --help Show this help message and exit
Examples: wbemcli https://localhost:15345 -n vendor -u sheldon -p penny -
(https localhost, port=15345, namespace=vendor user=sheldon password=penny)
wbemcli http://[2001:db8::1234-eth0] -(http port 5988 ipv6, zone id eth0)