ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
Oracle Solaris の管理: 基本管理 Oracle Solaris 10 1/13 Information Library (日本語) |
1. Oracle Solaris 管理ツール (製品概要)
3. Oracle Java Web Console の操作 (タスク)
11. Oracle Solaris ブート動作の変更 (タスク)
12. Oracle Solaris システムのブート (タスク)
13. Oracle Solaris ブートアーカイブの管理 (タスク)
14. Oracle Solaris システムのブートのトラブルシューティング (タスク)
16. x86: GRUB を実装しないシステムのブート (タスク)
17. Oracle Configuration Manager の操作
実行制御スクリプトを使用して従来のサービスを起動または停止する方法
ブート中に system/filesystem/local:default サービスで障害が発生した場合に sulogin プロンプトを強制的に表示する方法
21. Oracle Solaris システム管理ツールによるソフトウェアの管理 (タスク)
このセクションでは、SMF サービスの管理について説明します。
RBAC 権利プロファイルを使用して root アクセス権を付与していないユーザーに、一部の SMF サービスの管理を許可することができます。権利プロファイルには、そのユーザーが実行できるコマンドを定義します。SMF のために次のプロファイルが作成されています。
Service Management: サービスを追加、削除、または変更できます。
Service Operator: 再起動やリフレッシュなど、サービスインスタンスの状態の変更を要求できます。
承認については、smf_security(5) のマニュアルページを参照してください。権利プロファイルを割り当てる手順については、『Solaris のシステム管理: セキュリティーサービス』の「ユーザーの RBAC プロパティーを変更する方法」を参照してください。
サービスを無効にするには、次の手順に従います。サービスのステータス変化はサービス構成リポジトリ内に記録されます。サービスがいったん無効になると、その無効な状態はリブート後も維持されます。サービスを実行中の状態に戻す唯一の方法は、そのサービスを有効にすることです。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理: セキュリティーサービス』の「RBAC の構成 (タスクマップ)」を参照してください。
必要とするサービスがこのサービスに依存していた場合、このサービスを無効にできません。
# svcs -D FMRI
# svcadm disable FMRI
例 19-7 rlogin サービスを無効にする
最初のコマンドの出力結果から、rlogin サービスに依存するサービスは存在しないことがわかります。この例の 2 番目のコマンドは、rlogin サービスを無効にしています。3 番目のコマンドの結果から、rlogin サービスインスタンスの状態が無効になっていることがわかります。
# svcs -D network/login:rlogin # svcadm disable network/login:rlogin STATE STIME FMRI # svcs network/login:rlogin STATE STIME FMRI disabled 11:17:24 svc:/network/login:rlogin
サービスを有効にするには、次の手順に従います。サービスのステータス変化はサービス構成リポジトリ内に記録されます。サービスがいったん有効になると、そのサービスの依存関係に問題がない限り、その有効な状態はシステムのリブート後も維持されます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理: セキュリティーサービス』の「RBAC の構成 (タスクマップ)」を参照してください。
依存するサービスが有効になっている場合、サービスの依存関係に問題はありません。そうでない場合は、svcadm enable -r FMRI を使用して、すべての依存関係を再帰的に有効にします。
# svcs -l FMRI|grep enabled
# svcadm enable FMRI
例 19-8 rlogin サービスを有効にする
この例の 2 番目のコマンドは、rlogin サービスを有効にしています。3 番目のコマンドの結果から、rlogin サービスインスタンスの状態がオンラインになっていることがわかります。
# svcs -l network/login:rlogin|grep enabled enabled false # svcadm enable network/login:rlogin # svcs network/login:rlogin STATE STIME FMRI online 12:09:16 svc:/network/login:rlogin
例 19-9 シングルユーザーモードでサービスを有効にする
次のコマンドは rpcbind を有効にします。-t オプションは、サービスリポジトリを変更しないモードでサービスを一時的に起動します。このリポジトリにシングルユーザーモードで書き込むことはできません。-r オプションは、指定されたサービスのすべての依存関係を再帰的に有効にします。
# svcadm enable -rt rpc/bind
構成が変更されたなどの理由により現在実行中のサービスを再起動する必要が生じた場合、サービスの停止時と起動時に個々のコマンドを入力することなく、サービスの再起動を行えます。サービスの無効化と有効化を別々に行う必要があるのは、サービスの無効化後かつ有効化前に変更を反映する必要がある場合だけです。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理: セキュリティーサービス』の「RBAC の構成 (タスクマップ)」を参照してください。
# svcadm restart FMRI
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理: セキュリティーサービス』の「RBAC の構成 (タスクマップ)」を参照してください。
通常、サービスインスタンスが保守状態になっている場合、そのインスタンスに関連付けられたすべてのプロセスが停止しています。ただし、処理を進める前にそのことを確認する必要があります。次のコマンドを実行すると、特定のサービスインスタンスに関連付けられたすべてのプロセスが一覧表示されます。その際、各プロセスの PID も表示されます。
# svcs -p FMRI
svcs コマンドで表示されたすべてのプロセスに対して、この手順を繰り返します。
# pkill -9 PID
/var/svc/log 内の対応するサービスログファイルを開き、エラーが発生していないか確認します。
# svcadm clear FMRI
サービスの構成が間違っている場合、正常に起動した最後のスナップショットに戻すことで問題を解決できます。この手順では、console-login サービスの以前のスナップショットを使用します。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理: セキュリティーサービス』の「RBAC の構成 (タスクマップ)」を参照してください。
# svccfg svc:>
注 - インスタンスを完全に定義した FMRI を使用する必要があります。短縮形は使えません。
svc:> select system/console-login:default svc:/system/console-login:default>
svc:/system/console-login:default> listsnap initial running start svc:/system/console-login:default>
start スナップショットとは、サービスが正常に起動した最後のスナップショットのことです。
svc:/system/console-login:default> revert start svc:/system/console-login:default>
svc:/system/console-login:default> quit #
この手順では、start スナップショットの構成情報に基づいてリポジトリを更新します。
# svcadm refresh system/console-login
# svcadm restart system/console-login
プロファイルとは、SMF サービスの一覧とそれぞれを有効にするかどうかを示す XML ファイルのことです。プロファイルは、多くのサービスを一度に有効または無効にするために使用されます。すべてのサービスをプロファイルに含める必要はありません。効果的なプロファイルを作成するには、各プロファイルには有効または無効にする必要のあるサービスだけを含めるようにします。
この例では、svccfg コマンドを使用して、現在のシステムで有効になっているサービスと無効になっているサービスを反映するプロファイルを作成します。代わりに、既存のプロファイルのコピーを作成し、それを編集することもできます。
# svccfg extract> profile.xml
Oracle Solaris JumpStart を使用する場合、同一のシステムが多数ある場合、またはあとで復元できるようにシステムの構成のアーカイブを作成する場合は、この手順を使用して単一の SMF プロファイルを作成することができます。
この例では、profile という名前に変更しています。
# cat profile.xml ... <service_bundle type=`profile` name=`profile` xmIns::xi='http://www.w3.org/2003/XInclude' ...
各サービスについて、サービスを説明する 3 行を削除します。各サービスの説明は、<service で始まり、</service で終わります。この例は、LDAP クライアントサービスの行を示しています。
# cat profile.xml ... <service name='network/ldap/client' version='1' type='service'> <instance name='default' enabled='true'/> </service>
上記の 3 行の構文を使用して各サービスを定義する必要があります。
この例では、sendmail サービスを無効にしています。
# cat profile.xml ... <service name='network/smtp' version='1' type='service'> <instance name='sendmail' enabled='false'/> </service> ...
手順については、「SMF プロファイルを適用する方法」を参照してください。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理: セキュリティーサービス』の「RBAC の構成 (タスクマップ)」を参照してください。
この例では、profile.xml プロファイルを使用しています。
# svccfg apply profile.xml
注 - generic_limited_net.xml と generic_open.xml を切り替えるための具体的な手順、およびこの切り替えを行うときに適用する必要のあるプロパティーについては、「ネットワークに提供するサービスを generic*.xml で変更する」を参照してください。
netservices コマンドを使用すると、ネットワークに最小限のシステムサービスを公開するか、従来の (以前の Solaris リリースと同じ) サービスを公開するかを切り替えることができます。この切り替えは、generic_limited.xml プロファイルと generic_open.xml プロファイルによって行われます。また、このコマンドによって一部のサービスのプロパティーが変更され、それに従ってサービスがローカル専用モードや従来モードに制限されます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理: セキュリティーサービス』の「RBAC の構成 (タスクマップ)」を参照してください。
この例では、open、つまり従来のネットワークサービスの公開を選択しています。
# /usr/sbin/netservices open
例 19-10 ネットワークサービスの公開を制限する
このコマンドは、一部のサービスをローカルモードで実行するようにプロパティーを変更し、有効にするサービスを generic_limited_net プロファイルによって制限します。このコマンドは、generic_open.xml プロファイルが適用されている場合のみ使用するようにしてください。
# /usr/sbin/netservices limited