xref: /illumos-gate/usr/src/man/man1/svcs.1 (revision b93865c3d90e9b0d73e338c9abb3293c35c571a8)
te
Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
Copyright 2020 Joyent, Inc.
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
SVCS 1 "May 11, 2020"
NAME
svcs - report service status
SYNOPSIS
svcs [-aHpv?] [-Z | -z zone] [-o col[,col]]... [-R FMRI-instance]...
 [-sS col]... [FMRI | pattern]...

svcs {-d | -D} [-Hpv?] [-Z | -z zone] [-o col[,col]]... [-sS col]...
 [FMRI | pattern] ...

svcs [-l | -L] [-vZ] [-z zone] [FMRI | pattern]...

svcs -x [-v] [-Z | -z zone] [FMRI]...
DESCRIPTION
The svcs command displays information about service instances as recorded in the service configuration repository.

The first form of this command prints one-line status listings for service instances specified by the arguments. Each instance is listed only once. With no arguments, all enabled service instances, even if temporarily disabled, are listed with the columns indicated below.

The second form prints one-line status listings for the dependencies or dependents of the service instances specified by the arguments.

The third form prints detailed information about specific services and instances.

The fourth form explains the states of service instances. For each argument, a block of human-readable text is displayed which explains what state the service is in, and why it is in that state. With no arguments, problematic services are described.

Error messages are printed to the standard error stream.

The output of this command can be used appropriately as input to the svcadm(8) command.

OPTIONS
The following options are supported: -?

Displays an extended usage message, including column specifiers.

-a

Show all services, even disabled ones. This option has no effect if services are selected.

-d

Lists the services or service instances upon which the given service instances depend.

-D

Lists the service instances that depend on the given services or service instances.

-H

Omits the column headers.

-l

(The letter ell.) Displays all available information about the selected services and service instances, with one service attribute displayed for each line. Information for different instances are separated by blank lines. The following specific attributes require further explanation: dependency

Information about a dependency. The grouping and restart_on properties are displayed first and are separated by a forward slash (/). Next, each entity and its state is listed. See smf(7) for information about states. In addition to the standard states, each service dependency can have the following state descriptions: absent

No such service is defined on the system.

invalid

The fault management resource identifier (FMRI) is invalid (see smf(7)).

multiple

The entity is a service with multiple instances.

File dependencies can only have one of the following state descriptions: absent

No such file on the system.

online

The file exists. If the file did not exist the last time that svc.startd evaluated the service's dependencies, it can consider the dependency to be unsatisfied. svcadm refresh forces dependency re-evaluation.

unknown

stat(2) failed for a reason other than ENOENT.

See smf(7) for additional details about dependencies, grouping, and restart_on values.
enabled

Whether the service is enabled or not, and whether it is enabled or disabled temporarily (until the next system reboot). The former is specified as either true or false, and the latter is designated by the presence of (temporary). A service might be temporarily disabled because an administrator has run svcadm disable -t, used svcadm milestone, or booted the system to a specific milestone. See svcadm(8) for details. If a service instance was disabled via svcadm disable -c , then the provided comment will also be displayed.

-L

Display the log file of the selected services and service instances, one per-line.

-o col[,col]...

Prints the specified columns. Each col should be a column name. See COLUMNS below for available columns.

-p

Lists processes associated with each service instance. A service instance can have no associated processes. The process ID, start time, and command name (PID, STIME, and CMD fields from ps(1)) are displayed for each process.

-R FMRI-instance

Selects service instances that have the given service instance as their restarter.

-s col

Sorts output by column. col should be a column name. See COLUMNS below for available columns. Multiple -s options behave additively.

-S col

Sorts by col in the opposite order as option -s.

-v

Without -x or -l, displays verbose columns: STATE, NSTATE, STIME, CTID, and FMRI. With -x, displays extra information for each explanation. With -l, displays user-visible properties in property groups of type application and their description.

-x

Displays explanations for service states. Without arguments, the -x option explains the states of services which:

are enabled, but are not running.

are preventing another enabled service from running.

-z zone

Display only the services in the zone. This option is only applicable in the global zone, see zones(7).

-Z

Display services from all zones, with an additional column indicating in which zone the service is running. This option is only applicable in the global zone, see zones(7).

OPERANDS
The following operands are supported: FMRI

A fault management resource identifier (FMRI) that specifies one or more instances (see smf(7)). FMRIs can be abbreviated by specifying the instance name, or the trailing portion of the service name. For example, given the FMRI:

svc:/network/smtp:sendmail
The following are valid abbreviations:
sendmail
:sendmail
smtp
smtp:sendmail
network/smtp
The following are invalid abbreviations:
mail
network
network/smt
If the FMRI specifies a service, then the command applies to all instances of that service, except when used with the -D option. Abbreviated forms of FMRIs are unstable, and should not be used in scripts or other permanent tools.
pattern

A pattern that is matched against the FMRIs of service instances according to the "globbing" rules described by fnmatch(7). If the pattern does not begin with svc:, then svc:/ is prepended. The following is a typical example of a glob pattern:

qexample% svcs \e*keyserv\e*
STATE STIME FMRI
disabled Aug_02 svc:/network/rpc/keyserv:default
FMRI-instance

An FMRI that specifies an instance.

COLUMNS
Column names are case insensitive. The default output format is equivalent to "-o state,stime,fmri". The default sorting columns are STATE, STIME, FMRI. CTID

The primary contract ID for the service instance. Not all instances have valid primary contract IDs.

DESC

A brief description of the service, from its template element. A service might not have a description available, in which case a hyphen (\(hy) is used to denote an empty value.

FMRI

The FMRI of the service instance.

INST

The instance name of the service instance.

NSTA

The abbreviated next state of the service instance, as given in the STA column description. A hyphen denotes that the instance is not transitioning. Same as STA otherwise.

NSTATE

The next state of the service. A hyphen is used to denote that the instance is not transitioning. Same as STATE otherwise.

SCOPE

The scope name of the service instance.

SVC

The service name of the service instance.

STA

The abbreviated state of the service instance (see smf(7)): DGD

degraded

DIS

disabled

LRC

legacy rc*.d script-initiated instance

MNT

maintenance

OFF

offline

ON

online

UN

uninitialized

Absent or unrecognized states are denoted by a question mark (?) character. An asterisk (*) is appended for instances in transition, unless the NSTA or NSTATE column is also being displayed. See smf(7) for an explanation of service states.
STATE

The state of the service instance. An asterisk is appended for instances in transition, unless the NSTA or NSTATE column is also being displayed. See smf(7) for an explanation of service states.

STIME

If the service instance entered the current state within the last 24 hours, this column indicates the time that it did so. Otherwise, this column indicates the date on which it did so, printed with underscores (_) in place of blanks.

EXAMPLES
Example 1 Displaying the Default Output

This example displays default output:

example% svcs
STATE STIME FMRI
...
legacy_run 13:25:04 lrc:/etc/rc3_d/S42myscript
...
online 13:21:50 svc:/system/svc/restarter:default
...
online 13:25:03 svc:/milestone/multi-user:default
...
online 13:25:07 svc:/milestone/multi-user-server:default
...

Example 2 Listing All Local Instances

This example lists all local instances of the service1 service.

example% svcs -o state,nstate,fmri service1
STATE NSTATE FMRI
online - svc:/service1:instance1
disabled - svc:/service1:instance2

Example 3 Listing Verbose Information

This example lists verbose information.

example% svcs -v network/rpc/rstat:udp
STATE NSTATE STIME CTID FMRI
online - Aug_09 - svc:/network/rpc/rstat:udp

Example 4 Listing Detailed Information

This example lists detailed information about all instances of system/service3. Additional fields can be displayed, as appropriate to the managing restarter.

example% svcs -l network/rpc/rstat:udp

fmri svc:/network/rpc/rstat:udp
enabled true
state online
next_state none
restarter svc:/network/inetd:default
contract_id
dependency require_all/error svc:/network/rpc/bind (online)

Example 5 Listing Processes

example% svcs -p sendmail
STATE STIME FMRI
online 13:25:13 svc:/network/smtp:sendmail
 13:25:15 100939 sendmail
13:25:15 100940 sendmail

Example 6 Explaining Service States Using svcs -x

(a) In this example, svcs -x has identified that the print/server service being disabled is the root cause of two services which are enabled but not online. svcs -xv shows that those services are print/rfc1179 and print/ipp-listener. This situation can be rectified by either enabling print/server or disabling rfc1179 and ipp-listener.

example% svcs -x
svc:/application/print/server:default (LP print server)
 State: disabled since Mon Feb 13 17:56:21 2006
Reason: Disabled by an administrator.
 See: http://illumos.org/msg/SMF-8000-05
 See: lpsched(8)
Impact: 2 dependent services are not running. (Use -v for list.)

(b) In this example, NFS is not working:

example$ svcs nfs/client
STATE STIME FMRI
offline 16:03:23 svc:/network/nfs/client:default

(c) The following example shows that the problem is nfs/status. nfs/client is waiting because it depends on nfs/nlockmgr, which depends on nfs/status:

example$ svcs -xv nfs/client
svc:/network/nfs/client:default (NFS client)
 State: offline since Mon Feb 27 16:03:23 2006
Reason: Service svc:/network/nfs/status:default
 is not running because a method failed repeatedly.
 See: http://illumos.org/msg/SMF-8000-GE
 Path: svc:/network/nfs/client:default
 svc:/network/nfs/nlockmgr:default
 svc:/network/nfs/status:default
 See: man -M /usr/share/man -s 8 mount_nfs
 See: /var/svc/log/network-nfs-client:default.log
Impact: This service is not running.
EXIT STATUS
The following exit values are returned: 0

Successful command invocation.

1

Fatal error.

2

Invalid command line options were specified.

ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE TYPE ATTRIBUTE VALUE
Interface Stability See below.

Screen output is Uncommitted. The invocation is Committed.

SEE ALSO
ps (1), svcprop (1), stat (2), libscf (3LIB), attributes (7), fnmatch (7), smf (7), zones (7), svc.startd (8), svcadm (8), svccfg (8)