依存関係のいずれかが停止またはリフレッシュしたときに再起動するように、実行中のサービスを構成できます。実行中のサービス (online または degraded 状態) は、その依存関係が充足されていないと、offline 状態に遷移します。依存関係が停止またはリフレッシュしたあとにサービスを再起動すると、依存関係が再度充足され、依存サービスは実行状態に戻ることがあります。
require_all、require_any、または optional_all の依存関係が停止またはリフレッシュしたあとで、サービスが再起動するかどうかは、次の要因によって決まります。
依存関係が停止またはリフレッシュしたかどうか。停止した場合、依存関係が停止した理由がハードウェア障害やコアダンプなどのエラーによるものか、管理アクションなどのほかの理由によるものか。
依存関係の restart_on 属性の値。可能な値は、none、error、restart、および refresh です。
次の表に示すように、依存関係の restart_on 属性の値が none である場合は、依存関係が停止またはリフレッシュしても依存サービスは再起動しません。依存関係の restart_on 属性の値が refresh である場合、依存関係が停止またはリフレッシュすると常に依存サービスは再起動します。restart_on の値が error である場合、エラーのために依存関係が停止した場合にのみ依存サービスは再起動します。restart_on の値が restart である場合、依存関係がリフレッシュした場合にのみ依存サービスは再起動します。
|
サービスが依存するインスタンスの一覧表示では、system-repository サービスに、2 つの require_all 依存関係と 1 つの optional_all 依存関係があることを示しています。次のコマンドは、milestone/network サービスまたは system/filesystem/autofs サービスがエラーのために停止した場合に、system-repository サービスが再起動し、ほかの理由でこれらのサービスが停止またはリフレッシュした場合には、再起動しないことを示します。system-repository サービスは、system/filesystem/local サービスが何らかの理由でリフレッシュまたは停止した場合、再起動しません。
$ svccfg -s system-repository:default listprop -o propname,propval '*restart_on' network/restart_on astring error filesystem-local/restart_on astring none autofs/restart_on astring error