| Current File : //usr/share/man/ja_JP.UTF-8/man1/svcprop.1 |
'\" te
.\" Copyright (c) 2007, 2014, Oracle and/or its affiliates.All rights reserved.
.TH svcprop 1 "2014 年 1 月 28 日" "SunOS 5.11" "ユーザーコマンド"
.SH 名前
svcprop \- サービス構成プロパティーの値の取得
.SH 形式
.LP
.nf
\fBsvcprop\fR [\fB-afqtv\fR] [\fB-C\fR | \fB-c\fR | \fB-s\fR \fIsnapshot\fR] [\fB-p\fR [\fIname\fR/]\fIname\fR]...
[ \fB-g\fR \fIpgtype\fR]... \fB-l\fR \fIlayer\fR[,...] {\fIFMRI\fR | \fIpattern\fR}...
.fi
.LP
.nf
\fBsvcprop\fR \fB-w\fR [\fB-fqtv\fR] [\fB-p\fR [\fIname\fR/]\fIname\fR] {\fIFMRI\fR | \fIpattern\fR}
.fi
.SH 機能説明
.sp
.LP
\fBsvcprop\fR ユーティリティーは、サービス構成リポジトリにあるプロパティーの値を出力します。プロパティーの選択は、 \fB-p\fR オプションとオペランドで行います。\fB-p\fR を使用してプロパティーまたはプロパティーグループを明確に選択しない場合、\fBsvcprop\fR は SMF テンプレート定義プロパティーを出力しません。将来のリリースでは、より多くの SMF インフラストラクチャープロパティーがデフォルト出力で非表示になる可能性があります。\fB-a\fR を使用すると、SMF テンプレート定義プロパティーを含むすべてのプロパティーが表示されます。
.sp
.LP
\fB-C\fR、\fB-c\fR、または \fB-s\fR オプションを使用しない場合は、\fBsvcprop\fR は有効なプロパティーにアクセスします。サービスの有効なプロパティーは、サービスに直接付属するプロパティーです。サービスインスタンスの有効なプロパティーは、「\fB実行中の\fR」スナップショットの合成されたビューのプロパティーと、インスタンスに直接付属するプロパティーの合成されたビューにある非永続的なプロパティーグループ内のプロパティーとの集合です。プロパティーの合成についての説明は、\fBsmf\fR(5) を参照してください。「\fB実行中の\fR」スナップショットが存在しない場合、代わりにインスタンスに直接付属するプロパティーが使用されます。
.SS "出力形式"
.sp
.LP
デフォルトでは、1 つのプロパティーを選択した場合には、それぞれの値が別の行に出力されます。空の \fBASCII\fR 文字列は、二重引用符 (\fB“”\fR) で表現されます。\fBASCII\fR 文字列の値に Bourne シェルのメタキャラクタ (「\fB;\fR」、「\fB&\fR」、「\fB(\fR」、「\fB)\fR」、「\fB|\fR」、「\fB^\fR」、「\fB<\fR」、「\fB>\fR」、改行、スペース、タブ、バックスラッシュ、「\fB"\fR」、単一引用符、「\fB`\fR」) が含まれる場合は、そのキャラクタの前にバックスラッシュ (\fB\\fR) が付きます。
.sp
.LP
複数のプロパティーを選択した場合は、各プロパティーが 1 行で出力されます。各行はプロパティー指示子、プロパティータイプ、および値で構成され、それぞれの間はスペース文字で区切られます。値は、前述の説明のとおりに出力されます。デフォルトでは、\fIFMRI\fR オペランドを 1 つだけ指定した場合のプロパティー指示子は、プロパティーグループ名、スラッシュ (\fB/\fR)、プロパティー名という構成になります。複数の \fIFMRI\fR オペランドを指定した場合のプロパティー指示子は、そのプロパティーの正規の \fIFMRI\fR になります。
.sp
.LP
アクセス制御によってプロパティー値の読み取りが禁止されていて、プロパティーまたはプロパティーグループが \fB-p\fR オプションによって明示的に指定されていない場合、プロパティーは値がない場合のように表示されます。プロパティーまたはプロパティーグループの名前が \fB-p\fR オプションによって 1 つ以上指定されていて、アクセス制御のためにプロパティー値が読み取れない場合は、エラーが発生します。
.sp
.LP
エラーメッセージが標準エラーストリームに出力されます。
.SH オプション
.sp
.LP
サポートしているオプションは、次のとおりです。
.sp
.ne 2
.mk
.na
\fB\fB-a\fR\fR
.ad
.sp .6
.RS 4n
SMF テンプレート定義プロパティーグループのプロパティーを含む、すべてのプロパティーを表示します。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-C\fR\fR
.ad
.sp .6
.RS 4n
直接付属するプロパティーを合成しないで使用します。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-c\fR\fR
.ad
.sp .6
.RS 4n
サービスインスタンスの場合、直接付属するプロパティーの合成されたビューを使用します。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-f\fR\fR
.ad
.sp .6
.RS 4n
完全な FMRI を指示子として、複数プロパティー出力形式を選択します。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-g\fR \fIpgtype\fR\fR
.ad
.sp .6
.RS 4n
\fIpgtype\fR タイプのプロパティーグループに属する、選択されたプロパティーのみを表示します。複数の \fB-g\fR オプションが指定されると、複数のプロパティーグループタイプのプロパティーを表示します。このオプションは、複数プロパティー出力形式 (\fB-t\fR) を暗黙的に意味します。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-l\fR \fIlayer\fR[,...]\fR
.ad
.sp .6
.RS 4n
選択されたレイヤーで定義されたプロパティーのみを表示します。使用可能なレイヤーは、\fBmanifest\fR、\fBsystem-profile\fR、\fBsite-profile\fR、および \fBadmin\fR です。すべてのレイヤーの選択に別名 \fBall\fR を使用できます。このオプションを使用する場合、非持続性プロパティーグループに属するプロパティーは表示されません。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-p\fR \fIname\fR\fR
.ad
.sp .6
.RS 4n
オペランドで指定されたそれぞれのサービスまたはサービスインスタンスについて、\fIname\fR プロパティーグループ内のすべてのプロパティーを選択します。オペランドで指定されたプロパティーグループについては、\fIname\fR プロパティーを選択します。\fB-g\fR と同時に使用する場合、一致するすべてのプロパティーグループタイプで \fIname\fR プロパティーを選択します。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-p\fR \fIpg\fR/\fIprop\fR\fR
.ad
.sp .6
.RS 4n
オペランドによって指定されたそれぞれのサービスまたはサービスインスタンスについて、プロパティーグループ \fIpg\fR 内のプロパティー \fIprop\fR を選択します。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-q\fR\fR
.ad
.sp .6
.RS 4n
非出力。出力を生成しません。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-s\fR \fIname\fR\fR
.ad
.sp .6
.RS 4n
サービスインスタンスについて、\fIname\fR スナップショットの合成されたビューを使用します。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-t\fR\fR
.ad
.sp .6
.RS 4n
複数のプロパティーを出力する形式を選択します。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-v\fR\fR
.ad
.sp .6
.RS 4n
冗長。オプション -q が使用されている場合でも、存在しないプロパティーに関するエラーメッセージを出力します。
.RE
.sp
.ne 2
.mk
.na
\fB\fB-w\fR\fR
.ad
.sp .6
.RS 4n
指定されたプロパティーグループ、または指定されたプロパティーを含むプロパティーグループが変更されるまで待機してから、出力します。
.sp
このオプションは、指定されているエンティティーが 1 つの場合にのみ有効になります。複数のオペランドが指定されている場合、または 1 つのオペランドが複数のインスタンスに一致する場合は、エラーメッセージが出力され、アクションは行われません。-C オプションの意味を含んでいます。
.RE
.SH オペランド
.sp
.LP
次のオペランドがサポートされています。
.sp
.ne 2
.mk
.na
\fB\fIFMRI\fR\fR
.ad
.sp .6
.RS 4n
サービスの FMRI、サービスインスタンス、プロパティーグループ、またはプロパティー。
.sp
インスタンスおよびサービスは、インスタンス名、またはサービス名の最後の部分を指定する方法で、省略して入力することができます。プロパティーおよびプロパティーグループの場合は、完全な FMRI を指定する必要があります。たとえば、次の FMRI があるとします。
.sp
.in +2
.nf
svc:/network/smtp:sendmail
.fi
.in -2
.sp
次のような省略が有効です。
.sp
.in +2
.nf
sendmail
:sendmail
smtp
smtp:sendmail
network/smtp
.fi
.in -2
.sp
次のような省略は無効です。
.sp
.in +2
.nf
mailnetwork
network/smt
.fi
.in -2
.sp
FMRI の省略形は「不確実」なので、スクリプトやその他の長期に渡って使用するツールには使用しないでください。省略形が複数のインスタンスとマッチする場合、\fBsvcprop\fR は各インスタンス上で動作します。
.RE
.sp
.ne 2
.mk
.na
\fBpattern\fR
.ad
.sp .6
.RS 4n
リポジトリ内のサービスおよびサービスインスタンスの FMRI に対して一致した glob パターン。\fBfnmatch\fR(5) を参照してください。パターンが複数のサービスまたはインスタンスとマッチする場合、\fBsvcprop\fR は各サービスまたはインスタンス上で動作します。
.RE
.SH 使用例
.LP
\fB例 1 \fR1 つのプロパティーの値を表示する
.sp
.LP
次の例は、サービス \fBsystem/cron\fR のインスタンス \fBdefault\fR のリスタータプロパティーグループ内にある、状態プロパティーの値を表示します。
.sp
.in +2
.nf
example% svcprop -p restarter/state system/cron:default
online
.fi
.in -2
.sp
.LP
\fB例 2 \fRサービスが有効かどうかの情報を取得する
.sp
.LP
サービスが有効かどうかは、その \fB-general/enabled\fR プロパティーによって決定されます。このプロパティーはすぐに影響するため、\fB-c\fR オプションを使用する必要があります。
.sp
.in +2
.nf
example% svcprop -c -p general/enabled system/cron:default
true
.fi
.in -2
.sp
.LP
\fB例 3 \fR特定のプロパティーグループに含まれるすべてのプロパティーを表示する
.sp
.LP
Solaris のデフォルトのインストールでは、次の例は \fBnetwork/ntp\fR サービスのそれぞれのインスタンスの \fBgeneral\fR プロパティーグループ内にある、すべてのプロパティーを表示します。
.sp
.in +2
.nf
example% svcprop -p general ntp
general/package astring SUNWntpr
general/enabled boolean true
general/entity_stability astring Uncommitted
general/single_instance boolean true
.fi
.in -2
.sp
.LP
\fB例 4 \fRプロパティーが存在することをテストする
.sp
.LP
次の例では、identity サービスのすべてのインスタンスの \fBgeneral/enabled\fR プロパティーが存在することをテストします。
.sp
.in +2
.nf
example% svcprop -q -p general/enabled identity:
example% echo $?
0
.fi
.in -2
.sp
.LP
\fB例 5 \fRプロパティーが変更されるのを待機する
.sp
.LP
次の例では、\fBsendmail\fR インスタンスの状態が変更されるのを待機します。
.sp
.in +2
.nf
example% svcprop -w -p restarter/state sendmail
.fi
.in -2
.sp
.LP
\fB例 6 \fRスクリプトの Boolean プロパティーの値を取得する
.sp
.LP
次の例は、スクリプトの boolean プロパティーの値を取得します。
.sp
.in +2
.nf
set -- `svcprop -c -t -p general/enabled service`
code=$?
if [ $code -ne 0 ]; then
echo "svcprop failed with exit code $code"
return 1
fi
if [ $2 != boolean ]; then
echo "general/enabled has unexpected type $2"
return 2
fi
if [ $# -ne 3 ]; then
echo "general/enabled has wrong number of values"
return 3
fi
value=$3
\&...
.fi
.in -2
.sp
.LP
\fB例 7 \fR\fBsvcprop\fR をスクリプトで使用する
.sp
.LP
次の例では、サービスプロパティーの値を取得し、その値をスクリプト (\fB/usr/bin/Xserver\fR) 内で使用します。
.sp
.in +2
.nf
fmri=$1
prop=$2
if svcprop -q -p ${prop} ${fmri} ; then
propval="$(svcprop -p ${prop} "${fmri}")"
if [[ "${propval}" == "\"\"" ]] ; then
propval=""
fi
fi
.fi
.in -2
.LP
\fB例 8 \fRプロパティーグループタイプによる出力のフィルタ処理
.sp
.LP
次の例では、\fBsvc:/network/ssh:default\fR のメソッドを取得します。
.sp
.in +2
.nf
example% \fBsvcprop -p exec -g method svc:/network/ssh:default\fR
start/exec astring /lib/svc/method/sshd\e start
stop/exec astring :kill
refresh/exec astring /lib/svc/method/sshd\e restart
unconfigure/exec astring /lib/svc/method/sshd\e -u
.fi
.in -2
.sp
.LP
\fB例 9 \fR管理用にカスタマイズされたプロパティの表示
.sp
.LP
次のコマンドは、SMF レイヤーを使用して管理用にカスタマイズされたプロパティーを表示します。
.sp
.in +2
.nf
example% \fBsvcprop -p config -l admin svc:/network/dns/client\fR
config/domain astring admin my.domain.com
config/nameserver net_address admin 10.22.33.44 10.44.33.11
.fi
.in -2
.sp
.SH 終了ステータス
.sp
.LP
次の終了ステータスが返されます。
.sp
.ne 2
.mk
.na
\fB\fB0\fR\fR
.ad
.sp .6
.RS 4n
正常終了。
.RE
.sp
.ne 2
.mk
.na
\fB\fB1\fR\fR
.ad
.sp .6
.RS 4n
エラーが発生した。
.RE
.sp
.ne 2
.mk
.na
\fB\fB2\fR\fR
.ad
.sp .6
.RS 4n
無効なコマンド行オプションが指定された。
.RE
.SH 属性
.sp
.LP
属性についての詳細は、マニュアルページの \fBattributes\fR(5) を参照してください。
.sp
.sp
.TS
tab() box;
cw(2.75i) |cw(2.75i)
lw(2.75i) |lw(2.75i)
.
属性タイプ属性値
_
使用条件system/core-os
.TE
.SH 関連項目
.sp
.LP
\fBsvcs\fR(1), \fBinetd\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M), \fBsvc.startd\fR(1M), \fBservice_bundle\fR(4), \fBattributes\fR(5), \fBfnmatch\fR(5), \fBsmf\fR(5), \fBsmf_method\fR(5), \fBsmf_security\fR(5)