Go to main content
Oracle® Solaris 11.3 でのシステムサービスの管理

印刷ビューの終了

更新: 2016 年 11 月
 
 

サービスの停止

有効になっている、または一時的に無効になっているサービスインスタンスを無効にするには、svcadm disable コマンドを使用します。無効になっているインスタンスは再起動できません。最初にインスタンスを有効にする必要があります。


注 -  セキュリティーのベストプラクティスでは、オンラインサービスを定期的に確認して、使用されなくなったり実行が不要になったものがないかどうか評価することが推奨されています。

サービスインスタンスを無効にする方法

  1. ほかのサービスがこのインスタンスに依存しているかどうかを確認します。
    1. このインスタンスに依存するサービスを一覧表示します。
      $ svcs -D FMRI
    2. 依存したサービスがこのインスタンスを必要としているかどうかを確認します。

      svcs -D コマンドの結果ごとに svcs -l コマンドを使用して、依存関係が必要な依存関係であるかどうかを確認します。

      このインスタンスが別のサービスの必要な依存関係になっている場合は、このインスタンスを無効にしないでください。依存関係のグループと restart_on 値については、サービス依存関係の表示を参照してください。

  2. インスタンスを無効にします。

    サービスのリスタータが、指定のインスタンスを disabled 状態にしようと試みます。停止メソッドが存在する場合、サービスのリスタータは通常、停止メソッドを実行しようとします。定期的なインスタンスによって契約されたプロセスは永続的に実行されないため、定期的なリスタータはどの停止メソッドも実行しようとしません。定期的なインスタンスは短期のプロセスを実行したあとで、次にスケジュールされた実行時間まで待機します。詳細は、Oracle Solaris 11.3 でのシステムサービスの開発 の 第 3 章, 定期的に実行するサービスの作成を参照してください。

    インスタンスは永続的に無効にすることも、一時的に無効にすることもできます。永続的な無効はシステムリブートのあとも持続し、これがデフォルトです。一時的な無効はリブートまでに限り継続します。

    • 永続的にインスタンスを無効にします。
      $ svcadm disable FMRI
    • 一時的にインスタンスを無効にします。

      一時的な無効を指定するには、-t オプションを使用します。

      $ svcadm disable -t FMRI

      現時点ではインスタンスを無効にするが、次回のリブート時に実行する場合は、インスタンスが実行していること (online または degraded の状態) を確認し、一時的にインスタンスを無効にします。インスタンスが一時的に無効になっていることを検証するには、svcs -l コマンドを使用して、enabled 行が次のようになっているか確認します。

      enabled      false (temporary)
    • 同期的にインスタンスを無効にします。

      -s オプションを指定すると、svcadm はインスタンスを無効にし、インスタンスが disabled 状態になるまで待機してから戻ります。svcadm コマンドは、インスタンスが disabled 状態に達したとき、またはインスタンスが disabled 状態に達するには管理者の操作が必要だと判断したときに戻ります。

      遷移を行うか、遷移を行えないと判断するまでの上限を秒単位で指定するには、-T オプションを -s オプションとともに使用します。

      $ svcadm disable -sT 10 FMRI
  3. インスタンスが無効になっていることを検証します。
    $ svcs FMRI
使用例 14  サービスインスタンスの無効化

次のコマンドは、Generic Security Service rpc/gss がオンライン状態で、rpc/gss サービスに依存しているサービスが無効化されていることを示します。

$ svcs rpc/gss
STATE          STIME    FMRI
online         Oct_18   svc:/network/rpc/gss:default
$ svcs -D rpc/gss
STATE          STIME    FMRI
disabled       Oct_18   svc:/network/nfs/client:default
disabled       Oct_18   svc:/network/smb/client:default
disabled       Oct_18   svc:/network/nfs/server:default

次のコマンドは、依存関係がオンラインの場合であっても、rpc/gss サービスはオプションの依存関係であるため、これら 3 つのいずれかの依存サービスが何らかの理由でリフレッシュまたは停止された場合に rpc/gss サービスを開始する試行は実行されないことを示しています。

$ svcs -l nfs/client smb/client nfs/server | grep rpc/gss
dependency   optional_all/none svc:/network/rpc/gss (online)
dependency   optional_all/none svc:/network/rpc/gss (online)
dependency   optional_all/none svc:/network/rpc/gss (online)

svcadm disable コマンドが成功し、インスタンスは現在 disabled 状態になり、再起動しても失敗します。

$ svcadm disable rpc/gss
$ svcs rpc/gss
STATE          STIME    FMRI
disabled       12:45:55 svc:/network/rpc/gss:default
$ svcadm restart pkg/update:default
$ svcs rpc/gss
STATE          STIME    FMRI
disabled       12:45:55 svc:/network/rpc/gss:default