'\" 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)