名前 | 形式 | 機能説明 | オプション | サブコマンド | 使用例 | 環境変数 | 終了ステータス | 属性 | 関連項目
/usr/sbin/svccfg [-v] [-s FMRI]
/usr/sbin/svccfg [-v] [-s FMRI] subcommand [args]...
/usr/sbin/svccfg [-v] [-s FMRI] -f command-file
svccfg コマンドは、サービス構成リポジトリ内のデータを操作します。svccfg は、個別のサブコマンドを使用するか、一連のサブコマンドが格納されているコマンドファイルを指定することで、対話形式で呼び出すことができます。
通常、リポジトリ内の既存のサービスに加えた変更は、次にサービスインスタンスが更新されるまでサービスに反映されません。詳細については、svcadm(1M) マニュアルページの refresh サブコマンドを参照してください。
サポートしているオプションは、次のとおりです。
svccfg サブコマンドを command-file から読み込んで実行します。
サブコマンドを実行する前に、FMRI (障害管理リソース識別子) で指定されているエンティティーを選択します。
詳細表示。
サポートされているサブコマンドは次のとおりです。
すぐに終了します。
オプション動作を設定します。オプションが何も指定されていない場合、set は現在有効になっているオプションを表示します。
詳細表示モードを有効にします。
詳細表示モードを無効にします。
repfile を非公開リポジトリとして使用します。デフォルトでは、svccfg(1M) はシステムリポジトリを使用します。
サービスプロファイルのサブコマンド
file がサービスプロファイルの場合は、ファイル内で指定されているサービスインスタンスが、指定に従って有効または無効になります。サービスプロファイルについては、smf(5) を参照してください。このコマンドには、サービスインスタンスの「general/enabled」プロパティーを変更するための特権が必要です。プロパティーを変更するために必要な特権については、smf_security(5) を参照してください。file がサービスプロファイルでない場合、このサブコマンドは失敗します。
リポジトリ内のサービスインスタンスの有効化状態を表すサービスプロファイルを、標準出力に出力します。出力はファイルにリダイレクトされる場合があります。
サービスマニフェストのサブコマンド
file がサービスマニフェストの場合は、それによって指定されているサービスおよびインスタンスがリポジトリにインポートされます。ファイルに従って、ほかのサービスに依存関係が作成される場合があります。サービスマニフェストについては、smf(5) を参照してください。サービス構成を作成および変更するために必要な特権については、smf_security(5) を参照してください。
既存のサービスおよびインスタンスについては、最後に import スナップショットが作成された以降に変更されていないプロパティーは、マニフェストで指定されているものにアップグレードされます。競合 (リポジトリとマニフェストの両方で変更されたプロパティー) は、標準エラーストリームに報告されます。「general/enabled」プロパティーと「general/restarter」プロパティーは、管理者によって選択された設定を表すので、svccfg でアップグレードされることはありません。
リポジトリ内のすべてのサービス、インスタンス、およびそれらの持続的プロパティーに関する完全なサービス説明を XML でダンプします。これには、サービス状態などの一時的なプロパティーは含まれません。このダンプは、再配置可能なリポジトリバックアップとして適しています。
file は import と同様の方法で処理されますが、リポジトリは変更されません。エラーが検出された場合、svccfg(1M) はゼロ以外の終了ステータスで終了します。
指定されたサービスおよびそのインスタンスに関するサービス説明が、標準出力に書き込まれるか、指定されたファイルにリダイレクトされます。ブール型の「external」プロパティーが true に設定されている依存関係は、別のサービスのために作成されたものと見なされ、除外されます。
file がサービスマニフェストであると判定された場合は、file で指定されているサービスおよびインスタンスの FMRI が出力されます。各サービスについて、そのインスタンスの FMRI に続いてサービスの FMRI が表示されます。
エンティティーの選択、変更、およびナビゲーションのサブコマンド
「エンティティー」とは、スコープ、サービス、またはサービスインスタンスを指します。
引数で現在の選択内容の子が指定されている場合は、それが現在の選択内容になります。それ以外の場合、引数は FMRI であると解釈され、引数で指定されているエンティティーが現在の選択内容になります。
現在の選択内容の親が現在の選択内容になります。
現在の選択内容の子エンティティーのうち、展開パターン pattern に一致する名前を持つものが表示されます (fnmatch(5) を参照)。プロパティーを持つエンティティー、すなわちサービスおよびサービスインスタンスには、「:properties」も一覧表示されます。
現在の選択内容の子として、指定された名前で新しいエンティティーが作成されます。エンティティーを作成するために必要な特権については、smf_security(5) を参照してください。
name で指定されている現在の選択内容の子、または fmri で指定されているエンティティーが削除されます。-f フラグを指定しない限り、「online」状態または「degraded」状態のサービスインスタンスを削除しようとすると失敗します。サービスまたはサービスインスタンスが「framework」タイプの「dependents」プロパティーグループを持っている場合は、その中の「astring」タイプまたは「fmri」タイプの各プロパティーが調べられ、そのプロパティーがサービスまたはサービスインスタンスの名前を指定する 1 つの値を持っているときは、指定されたサービスまたはサービスインスタンスの、プロパティーと同じ名前を持つ dependency プロパティーグループが削除されます。サービス構成を削除するために必要な特権については、smf_security(5) を参照してください。
プロパティーの検査および変更のサブコマンド
現在の選択内容のプロパティーグループの名前、タイプ、およびフラグを表示します。引数が指定されている場合、それは展開パターンと見なされ、引数に一致する名前を持つプロパティーグループだけが一覧表示されます。
指定された名前 name と type で、プロパティーグループを現在の選択内容に追加します。flags は、プロパティーグループの作成に使用するフラグを指定する文字列です。「P」は SCF_PG_FLAG_NONPERSISTENT を表します (scf_service_add_pg(3SCF) を参照)。プロパティーグループを作成するために必要な特権については、smf_security(5) を参照してください。
現在の選択内容のプロパティーグループ name を削除します。プロパティーグループを削除するために必要な特権については、smf_security(5) を参照してください。
現在の選択内容のプロパティーグループとプロパティーを一覧表示します。プロパティーグループの場合は、名前、タイプ、およびフラグが一覧表示されます。プロパティーの場合は、名前 (プロパティーグループ名とスラッシュ (/) が前に付加される)、タイプ、および値が一覧表示されます。使用可能なプロパティータイプのリストについては、scf_value_create(3SCF) を参照してください。引数が指定されている場合、それは展開パターンと見なされ、引数に一致する名前を持つプロパティーグループおよびプロパティーだけが一覧表示されます。
現在の選択内容の pg プロパティーグループの name プロパティーを、タイプ type の指定された値に設定します。使用可能なプロパティータイプのリストについては、scf_value_create(3SCF) を参照してください。プロパティーがすでに存在している場合は、そのプロパティーに既存の type が type と一致しないと、このサブコマンドは失敗します。値は二重引用符で囲まれる場合があります。二重引用符やバックスラッシュを含んでいる文字列値は、二重引用符で囲む必要があります。また、文字列値に含まれている二重引用符とバックスラッシュは、バックスラッシュでエスケープする必要があります。name で指定されたプロパティーが存在しない場合は、type が指定されていればプロパティーが作成されます。プロパティーを作成または変更するために必要な特権については、smf_security(5) を参照してください。
現在の選択内容のプロパティーグループまたはプロパティーのうち、name で指定されているものを削除します。プロパティーを削除するために必要な特権については、smf_security(5) を参照してください。
現在の選択内容のプロパティーグループおよびプロパティーを再生成するためのコマンドのコメントが一時ファイルに格納され、それを編集するために EDITOR 環境変数で指定されているプログラムが呼び出されます。完了すると、一時ファイル内のコマンドが実行されます。デフォルトのエディタは vi(1) です。プロパティーを作成、変更、または削除するために必要な特権については、smf_security(5) を参照してください。
指定された値をプロパティーに追加します。type が指定されている場合で、プロパティーが存在しているときは、そのプロパティーのタイプが type と一致しないと、このサブコマンドは失敗します。値は二重引用符で囲まれる場合があります。二重引用符やバックスラッシュを含んでいる文字列値は、二重引用符で囲む必要があります。また、文字列値に含まれている二重引用符とバックスラッシュは、バックスラッシュでエスケープする必要があります。存在していないプロパティーは作成されますが、その場合は type 指定子が指定されている必要があります。使用可能なプロパティータイプのリストについては、scf_value_create(3SCF) を参照してください。プロパティーを変更するために必要な特権については、smf_security(5) を参照してください。
name で指定されたプロパティーの値のうち、指定された globpattern に一致するものをすべて削除します。一致する値がない場合でも、このサブコマンドは成功します。プロパティーを変更するために必要な特権については、smf_security(5) を参照してください。
method_name プロパティーグループのタイプが「method」の場合は、そのプロパティーグループの「environment」プロパティーを変更することにより、サービスまたはインスタンスのメソッドの環境変数を設定します。method_name が指定されていない場合で、-i オプションが使用されているときは、現在インスタンスが選択されていれば「method_context」プロパティーグループが使用されます。-s オプションが使用されている場合で、現在サービスが選択されているときは、その「method_context」プロパティーグループが使用されます。-s オプションが使用されている場合で、現在インスタンスが選択されているときは、その親の「method_context」プロパティーグループが使用されます。-i オプションと -s オプションのどちらも使用されていない場合は、現在選択されているエンティティー内で「start」プロパティーグループが検索されます。また、現在インスタンスが選択されている場合は、その親も検索されます。「inetd_start」プロパティーグループが見つからない場合は、同様の方法で検索されます。
プロパティーが見つかると、「envvar=」で始まる値がすべて削除され、値「envvar=value」が追加されます。プロパティーを変更するために必要な特権については、smf_security(5) を参照してください。
method_name プロパティーグループのタイプが「method」の場合は、そのプロパティーグループの「environment」プロパティーを変更することにより、サービスまたはインスタンスのメソッドの環境変数を削除します。method_name が指定されていない場合で、-i オプションが使用されているときは、現在インスタンスが選択されていれば「method_context」プロパティーグループが使用されます。-s オプションが使用されている場合で、現在サービスが選択されているときは、その「method_context」プロパティーグループが使用されます。-s オプションが使用されている場合で、現在インスタンスが選択されているときは、その親の「method_context」プロパティーグループが使用されます。-i オプションと -s オプションのどちらも使用されていない場合は、現在選択されているエンティティー内で「start」プロパティーグループが検索されます。また、現在インスタンスが選択されている場合は、その親も検索されます。「inetd_start」プロパティーグループが見つからない場合は、同様の方法で検索されます。
プロパティーが見つかると、「envvar=」で始まる値がすべて削除されます。プロパティーを変更するために必要な特権については、smf_security(5) を参照してください。
スナップショットのナビゲーションおよび選択のサブコマンド
現在選択されているインスタンスで使用可能なスナップショットを表示します。
現在のスナップショットを、name で指定されたスナップショットに変更します。name が指定されていない場合は、現在選択されているスナップショットを選択解除します。スナップショットは読み取り専用です。
現在選択されているインスタンスとそのサービスのプロパティーを、指定されたスナップショットに記録されているプロパティーに戻します。引数が何も指定されていない場合は、現在選択されているスナップショットを使用し、成功時にそれを選択解除します。変更したプロパティー値は、svcadm(1M) の refresh サブコマンドを使用してアクティブにすることができます。プロパティーを変更するために必要な特権については、smf_security(5) を参照してください。
FMRI を受け入れるコマンドはすべて、省略形や展開パターンも受け入れます。インスタンス名を指定するか、サービス名の連続する部分を指定することにより、インスタンスおよびサービスを省略形にすることもできます。たとえば、次のような FMRI を仮定します。
svc:/network/smtp:sendmail |
この場合、次に示す省略形はすべて有効です。
sendmail :sendmail smtp smtp:sendmail network/smtp |
これに対し、次のような省略形は無効です。
mail network network/smt |
FMRI の省略形は不安定なので、スクリプトやその他の長期に渡って使用するツールには使用しないでください。パターンが複数のインスタンスまたはサービスに一致する場合は、エラーメッセージが表示され、処理は行われません。
サービス説明をローカルシステムにエクスポートするには、次のように指定します。
$ svccfg export dumpadm >/tmp/dump.xml |
サービスインスタンスを削除するには、次のように指定します。
$ svccfg delete network/inetd-upgrade:default |
サービス説明を非公開リポジトリに対話形式でインポートするには、次のように指定します。
$ svccfg svc:> repository /tmp/repository svc:> import /home/hjs/svc/box-factory.xml svc:> end |
start メソッドの LD_PRELOAD を変更し、デバッグ機能で libumem(3LIB) の使用を有効にするには、次のように指定します。
$ svccfg -s system/service setenv LD_PRELOAD libumem.so $ svccfg -s system/service setenv UMEM_DEBUG default |
editprop サブコマンドが使用されたときに実行するコマンド。デフォルトのエディタは vi(1) です。
属性についての詳細は、マニュアルページの attributes(5) を参照してください。
属性タイプ |
属性値 |
---|---|
使用条件 |
SUNWcsu |
インタフェースの安定性 |
下記を参照 |
対話型出力は不安定です。呼び出しおよび非対話型出力は開発中です。
svcprop(1), svcs(1), svcadm(1M), svc.configd(1M), libscf(3LIB), libumem(3LIB), scf_service_add_pg(3SCF), scf_value_create(3SCF), contract(4), attributes(5), fnmatch(5), smf(5), smf_method(5), smf_security(5)
名前 | 形式 | 機能説明 | オプション | サブコマンド | 使用例 | 環境変数 | 終了ステータス | 属性 | 関連項目