System Administration Commands svccfg(1M)
NAME
svccfg - import, export, and modify service configurations
SYNOPSIS
/usr/sbin/svccfg [-v] [-s FMRI]
/usr/sbin/svccfg [-v] [-s FMRI] subcommand [args]...
/usr/sbin/svccfg [-v] [-s FMRI] -f command-file
DESCRIPTION
The svccfg command manipulates data in the service confi-
guration repository. svccfg can be invoked interactively,
with an individual subcommand, or by specifying a command
file that contains a series of subcommands.
Changes made to an existing service in the repository typi-
cally do not take effect for that service until the next
time the service instance is refreshed. See the refresh sub-
command on the svcadm(1M) man page for more details.
OPTIONS
The following options are supported:
-f command-file
Reads and executes svccfg subcommands from command-file.
-s FMRI
Selects the entity indicated by FMRI (a fault management
resource identifier) before executing any subcommands.
See smf(5).
-v
Verbose.
SUBCOMANDS
Subcommands are divided into the categories specified in the
subsections that follow.
All subcommands that accept FMRIs also accept abbreviated or
globbed patterns. Instances and services can be abbreviated
SunOS 5.11 Last change: 25 Nov 2008 1
System Administration Commands svccfg(1M)
by specifying the instance name, or the trailing portion of
the service name. For example, given the FMRI:
svc:/network/smtp:sendmail
All the following are valid abbreviations:
sendmail
:sendmail
smtp
smtp:sendmail
network/smtp
While the following are invalid:
mail
network
network/smt
Abbreviated forms of FMRIs are unstable, and should not be
used in scripts or other permanent tools. If a pattern
matches more than one instance or service, an error message
is printed and no action is taken.
General Subcommands
end
exit
quit
Exits immediately.
repository repfile
Uses repfile as a repository. By default, svccfg(1M)
uses the system repository.
Use repository only with files from the identical ver-
sion of Solaris, including patches, that you are
currently running. Do not use this subcommand with the
system repository, /etc/svc/repository.db.
SunOS 5.11 Last change: 25 Nov 2008 2
System Administration Commands svccfg(1M)
set [-v-V]
Sets optional behavior. If no options are specified, set
displays the options currently in effect.
-v
Turns on verbose mode.
-V
Turns off verbose mode.
Service Profile Subcommands
apply file
If file is a service profile, then service instances
specified within the file are enabled or disabled
according to it. See smf(5) for a description of service
profiles. This command requires privileges to modify the
"general/enabled" property of the service instances. See
smfsecurity(5) for the privileges required to modify
properties. If file is not a service profile, the sub-
command fails.
extract [> file]
Prints a service profile which represents the enabled
status of the service instances in the repository to
standard output. The output may be redirected to a file.
Service Manifest Subcommands
archive [-a]
Dumps a full XML service description for all services,
instances, and their persistent properties in the repo-
sitory. This does not include transient properties such
as service state, and is suitable for a relocatable
repository backup.
Without the -a option, property groups containing pro-
tected information (identified by the presence of the
readauthorization property-see smfsecurity(5)) will be
archived without their property values. When the -a
option is specified, all values will be archived. An
error results if there are insufficient privileges to
read these values.
SunOS 5.11 Last change: 25 Nov 2008 3
System Administration Commands svccfg(1M)
export [-a] serviceFMRI [>file]
The service description for the specified service and
its instances is written to standard output or
redirected to the given file. Dependencies with a
boolean "external" property set to true are omitted in
the belief that they were created on behalf of another
service.
Without the -a option, property groups containing pro-
tected information (identified by the presence of the
readauthorization property-see smfsecurity(5)) will be
exported without their property values. When the -a
option is specified, all values will be archived. An
error results if there are insufficient privileges to
read these values.
Note that export requires a service FMRI. If you specify
an instance (including an abbreviation, such as apache2
or sendmail, that specifies an instance), the command
fails.
import [-V] file
If file is a service manifest, then the services and
instances it specifies are imported into the repository.
According to the file, dependencies may be created in
other services. See smf(5) for a description of service
manifests. See smfsecurity(5) for the privileges
required to create and modify service configurations.
Services and instances in the manifest will be validated
against template data in the manifest and the reposi-
tory, and warnings will be issued for all template vio-
lations. See smftemplate(5) for a description of tem-
plates. If the -V option is specified, manifests that
violate the defined templates will fail to import. In
interactive invocations of svccfg, -V is the default
behavior.
For existing services and instances, properties which
have not changed since the last import snapshot was
taken are upgraded to those specified by the manifest.
Conflicts (properties which have been changed both in
the repository and the manifest) are reported on the
standard error stream. svccfg will never upgrade the
"general/enabled" and "general/restarter" properties,
since they represent administrator preference.
SunOS 5.11 Last change: 25 Nov 2008 4
System Administration Commands svccfg(1M)
inventory file
If file is determined to be a service manifest, then the
FMRIs of the services and instances the file describes
are printed. For each service, the FMRIs of its
instances are displayed before the FMRI of the service.
restore
Restores the contents of the repository from a full XML
service description previously created by the archive
subcommand. If the archive was generated without the use
of the -a option, the contents of the repository follow-
ing completion of the restore will not include the
values of any read-protected properties (see
smfsecurity(5)). If these are required, they must be
restored manually.
Restoring an archive which is inconsistent with
currently installed software (including patch revisions)
might yield unpredictable results. Therefore, prior to
restoring an archive, all system and application
software, including any service manifests, should be
restored to the same state it was in at the time the
archive was made.
validate [file fmri]
The validate subcommand can operate on a manifest file,
an instance FMRI, or the current instance or snapshot
entity selection. When an argument is specified, svccfg
will check to see whether the specified file exists. If
the file exists, it will be validated. If a file of the
specified name does not exist, the argument is treated
as an FMRI pattern. If a conflict arises between a
filename and an FMRI, use the svc: and file: prefixes to
tell svccfg how to interpret the argument.
When you specify a file, the file is processed in a
manner similar to import -V, but no changes are made to
the repository. If any errors are detected, svccfg
displays the errors and exits with a nonzero exit
status.
For an instance fmri, instance entity selection, or
snapshot entity selection, the specified instance in its
composed form (see "Properties and Property Groups" in
smf(5)) will be validated against template data in the
repository. Instance FMRIs and instance entity selec-
tions use the "running" snapshot for validation.
SunOS 5.11 Last change: 25 Nov 2008 5
System Administration Commands svccfg(1M)
Warnings will be issued for all template violations. See
smftemplate(5) for a description of templates.
Entity Selection, Modification, and Navigation Subcommands
An "entity" refers to a scope, service, or service instance.
add name
A new entity with the given name is created as a child
of the current selection. See smfsecurity(5) for the
privileges required to create entities.
delete [-f] {name fmri}
The named child of the current selection or the entity
specified by fmri is deleted. Attempts to delete service
instances in the "online" or "degraded" state will fail
unless the -f flag is specified. If a service or service
instance has a "dependents" property group of type
"framework", then for each of its properties with type
"astring" or "fmri", if the property has a single value
which names a service or service instance then the
dependency property group in the indicated service or
service instance with the same name as the property will
be deleted. See smfsecurity(5) for the privileges
required to delete service configurations.
list [pattern]
The child entities of the current selection whose names
match the glob pattern pattern are displayed (see
fnmatch(5)). ':properties' is also listed for property-
bearing entities, namely services and service instances.
select {name fmri}
If the argument names a child of the current selection,
it becomes the current selection. Otherwise, the argu-
ment is interpreted as an FMRI and the entity that the
argument specifies becomes the current selection.
unselect
The parent of the current selection becomes the current
selection.
SunOS 5.11 Last change: 25 Nov 2008 6
System Administration Commands svccfg(1M)
Property Inspection and Modification Subcommands
addpg name type [flags]
Adds a property group with the given name and type to
the current selection. flags is a string of characters
which designates the flags with which to create the pro-
perty group. 'P' represents SCFPGFLAGNONPERSISTENT
(see scfserviceaddpg(3SCF)). See smfsecurity(5) for
the privileges required to create property groups.
addpropvalue pg/name [type:] value
Adds the given value to a property. If type is given and
the property exists, then if type does not agree with
the property's type, the subcommand fails. The values
may be enclosed in double-quotes. String values contain-
ing double-quotes or backslashes must be enclosed by
double-quotes and the contained double-quotes and
backslashes must be quoted by backslashes. Nonexistent
properties are created, in which case the type specifier
must be present. See scfvaluecreate(3SCF) for a list
of available property types. See smfsecurity(5) for the
privileges required to modify properties. The new value
will be appended to the end of the list of property
values associated with the property.
delpg name
Deletes the property group name of the current selec-
tion. See smfsecurity(5) for the privileges required to
delete property groups.
delprop pg[/name]
Deletes the named property group or property of the
current selection. See smfsecurity(5) for the
privileges required to delete properties.
delpropvalue pg/name globpattern
Deletes all values matching the given glob pattern in
the named property. Succeeds even if no values match.
See smfsecurity(5) for the privileges required to
modify properties.
describe [-v] [-t] [propertygroup/property]
SunOS 5.11 Last change: 25 Nov 2008 7
System Administration Commands svccfg(1M)
Describes either the current or the possible settings.
When invoked without arguments, describe gives basic
descriptions (if available) of the currently selected
entity and all of its currently set property groups and
properties. A property group or specific property can be
queried by specifying either the property group name, or
the property group name and property name, separated by
a slash (/), as an argument.
The -v option gives all information available, including
descriptions for current settings, constraints, and
other possible setting choices.
The -t option shows only the template data for the
selection (see smftemplate(5)), and does not display
the current settings for property groups and properties.
editprop
Comments of commands to reproduce the property groups
and properties of the current selection are placed in a
temporary file and the program named by the EDITOR
environment variable is invoked to edit it. Upon comple-
tion, the commands in the temporary file are executed.
The default editor is vi(1). See smfsecurity(5) for the
privileges required to create, modify, or delete proper-
ties.
listpg [pattern]
Displays the names, types, and flags of property groups
of the current selection. If an argument is given, it is
taken as a glob pattern and only property groups with
names which match the argument are listed.
In interactive mode, a basic description of the property
groups is also given.
listprop [pattern]
Lists property groups and properties of the current
selection. For property groups, names, types, and flags
are listed. For properties, names (prepended by the pro-
perty group name and a slash (/)), types, and values are
listed. See scfvaluecreate(3SCF) for a list of avail-
able property types. If an argument is supplied it is
taken as a glob pattern and only property groups and
properties with names which match the argument are
SunOS 5.11 Last change: 25 Nov 2008 8
System Administration Commands svccfg(1M)
listed.
setenv [-i -s] [-m methodname] envvar value
Sets a method environment variable for a service or
instance by changing the "environment" property in the
methodname property group, if that property group has
type "method". If methodname is not specified and the
-i option is used, the "methodcontext" property group
is used, if an instance is currently selected. If the -s
option is used and a service is currently selected, its
"methodcontext" property group is used. If the -s
option is used and an instance is currently selected,
the "methodcontext" property group of its parent is
used. If neither the -i option nor the -s option is
used, the "start" property group is searched for in the
currently selected entity and, if an instance is
currently selected, its parent is also searched. If the
"inetdstart" property group is not located, it is
searched for in a similiar manner.
Once the property is located, all values which begin
with envvar followed by a "=" are removed, and the value
"envvar=value" is added. See smfsecurity(5) for the
privileges required to modify properties.
setprop pg/name = [type:] value
setprop pg/name = [type:] ([values ...])
Sets the name property of the pg property group of the
current selection to the given values of type type. See
scfvaluecreate(3SCF) for a list of available property
types. If the property already exists and the type
disagrees with the existing type on the property, the
subcommand fails. Values may be enclosed in double-
quotes. String values which contain double-quotes or
backslashes must be enclosed by double-quotes and the
contained double-quotes and backslashes must be quoted
by backslashes. If the named property does not exist, it
is created, as long as the type is specified. See
smfsecurity(5) for the privileges required to create or
modify properties. Multiple values will be stored in the
order in which they are specified.
unsetenv [-i -s] [-m methodname] envvar value
Removes a method environment variable for a service or
instance by changing the "environment" property in the
methodname property group, if that property group has
SunOS 5.11 Last change: 25 Nov 2008 9
System Administration Commands svccfg(1M)
type "method". If methodname is not specified and the
-i option is used, the "methodcontext" property group
is used, if an instance is currently selected. If the -s
option is used and a service is currently selected, its
"methodcontext" property group is used. If the -s
option is used and an instance is currently selected,
the "methodcontext" property group of its parent is
used. If neither the -i option nor the -s option is
used, the "start" property group is searched for in the
currently selected entity and, if an instance is
currently selected, its parent is also searched. If the
"inetdstart" property group is not located, it is
searched for in a similiar manner.
Once the property is located, all values which begin
with envvar followed by "=" are removed. See
smfsecurity(5) for the privileges required to modify
properties.
Snapshot Navigation and Selection Subcommands
listsnap
Displays snapshots available for the currently selected
instance.
revert [snapshot]
Reverts the properties of the currently selected
instance and its service to those recorded in the named
snapshot. If no argument is given, use the currently
selected snapshot and deselect it on success. The
changed property values can be made active via the
refresh subcommand of svcadm(1M). See smfsecurity(5)
for the privileges required to change properties.
selectsnap [name]
Changes the current snapshot to the one named by name.
If no name is specified, deselect the currently selected
snapshot. Snapshots are read-only.
Instance Subcommands
refresh
Commit the values from the current configuration to the
running snapshot, making them available for use by the
currently selected instance. If the repository subcom-
mand has not been used to select a repository, direct
SunOS 5.11 Last change: 25 Nov 2008 10
System Administration Commands svccfg(1M)
the instance's restarter to reread the updated confi-
guration.
EXAMPLES
Example 1 Importing a Service Description
The following example imports a service description for the
seismic service in the XML manifest specified on the command
line.
# svccfg import /var/svc/manifest/site/seismic.xml
Note that the manifest must follow the format specified in
servicebundle(4).
Example 2 Exporting a Service Description
To export a service description on the local system:
# svccfg export dumpadm >/tmp/dump.xml
Example 3 Deleting a Service Instance
To delete a service instance:
# svccfg delete network/inetd-upgrade:default
Example 4 Checking Properties in an Alternate Repository
To examine the state of a service's properties after loading
an alternate repository, use the sequence of commands shown
below. One might use such commands, for example, to deter-
mine whether a service was enabled in a particular reposi-
tory backup.
SunOS 5.11 Last change: 25 Nov 2008 11
System Administration Commands svccfg(1M)
# svccfg
svc:> repository /etc/svc/repository-boot
svc:> select telnet:default
svc:/network/telnet:default> listprop general/enabled
general/enabled boolean false
svc:/network/telnet:default> exit
Example 5 Enabling Debugging
To modify LDPRELOAD for a start method and enable the use
of libumem(3LIB) with debugging features active:
$ svccfg -s system/service setenv LDPRELOAD libumem.so
$ svccfg -s system/service setenv UMEMDEBUG default
Example 6 Using describe Subcommand
The following command illustrates the use of the describe
subcommand.
# svccfg -s console-login describe ttymon
ttymon application
ttymon/device astring /dev/console
terminal device to be used for the console login prompt
ttymon/label astring console
appropriate entry from /etc/ttydefs
...
ENVIRONMENTAL VARIABLES
EDITOR
The command to run when the editprop subcommand is used.
The default editor is vi(1).
EXIT STATUS
The following exit values are returned:
0
Successful execution.
SunOS 5.11 Last change: 25 Nov 2008 12
System Administration Commands svccfg(1M)
1
One or more subcommands resulted in failure. Error mes-
sages are written to the standard error stream.
2
Invalid command line options were specified.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Availability SUNWcsu
Interface Stability See below.
The interactive output is Uncommitted. The invocation and
non-interactive output are Committed.
SEE ALSO
svcprop(1), svcs(1), svcadm(1M), svc.configd(1M),
libscf(3LIB), libumem(3LIB), scfserviceaddpg(3SCF),
scfvaluecreate(3SCF), contract(4), servicebundle(4),
attributes(5), fnmatch(5), smf(5), smfmethod(5),
smfsecurity(5), smftemplate(5)
SunOS 5.11 Last change: 25 Nov 2008 13
|