32.4 コマンドラインを使用したSCPMの設定

このセクションではコマンドラインを使用してSCPMを設定する方法を説明します。まず初めに開始方法を説明し、続いて設定方法、そしてプロファイルの利用方法について説明します。

32.4.1 SCPMの起動とリソースグループの定義

SCPMは使用する前に有効にする必要があります。SCPMを有効にするには、scpm enableコマンドを使用します。SCPMを初めて実行すると初期化が行われますが、これには数秒かかります。SCPMはいつでもscpm disableで無効にできます。これにより誤ってプロファイルが切り替わらないようにすることができます。その後、再度有効にするには、初期化を再開するだけです。

デフォルトでは、SCPMはネットワークやプリンタだけでなく、X.Orgの設定も処理します。特別なサービスや設定ファイルを管理するには、それぞれのリソースグループを有効にします。事前定義のリソースグループを一覧表示するには、scpm list_groupsを使用します。既に有効なグループのみを表示するには、scpm list_groups -aを使用します。これらのコマンドは、コマンドラインでrootとして実行します。

scpm list_groups -a

nis                 Network Information Service client
mail                Mail subsystem
ntpd                Network Time Protocol daemon
xf86                X Server settings
autofs              Automounter service
network             Basic network settings
printer             Printer settings

グループを有効または無効にするには、それぞれscpm activate_group NAMEscpm deactivate_group NAMEを使用します。ここでNAMEは、対象のグループ名に置き換えて使用してください。

32.4.2 プロファイルの作成と管理

SCPMを有効にすると、defaultという名前のプロファイルが自動的に作成されます。利用可能なプロファイルを一覧表示するには、scpm listを実行します。この既存プロファイルが有効なプロファイルでもあります。コマンドscpm activeで確認できます。プロファイルdefaultは基本設定であり、これを元に他のプロファイルを作成することが可能です。このため、すべてのプロファイルで同一になる設定をあらかじめすべて設定してしまいます。続いてこれらの変更内容をscpm reloadコマンドを使用して、有効なプロファイルに保存します。次回からはdefaultプロファイルを新規プロファイルのベースとしてコピーし、名前を変更して使用できます。

新しいプロファイルを追加する方法は2つあります。defaultプロファイルをベースにして、新規プロファイル(ここではworkとします)を作成する場合は、scpm copy default workコマンドを実行します。scpm switch workコマンドを実行すると、新しいプロファイルに切り替わり、変更が可能になります。特別な用途に合わせてシステム設定を変更し、変更内容を新しいプロファイルに保存できます。この場合、scpm add workコマンドを実行すると、新しいプロファイルが作成されるとともに、作成されたworkプロファイルに現在のシステム設定が保存され、有効を示すマークが付きます。scpm reloadを実行すると、変更内容がプロファイルworkに保存されます。

プロファイルの名前の変更または削除には、それぞれコマンドscpm rename x yおよびscpm delete zを使用します。たとえば、workという名前をprojectに変更するには、scpm rename work projectと入力します。projectを削除するには、コマンドscpm delete projectを入力します。有効なプロファイルは削除できません。

32.4.3 設定プロファイルの切り替え

コマンドscpm switch workを実行すると、別のプロファイル(ここでは、プロファイルwork)に切り替えることができます。有効なプロファイルに切り替えると、変更したシステム設定が組み込まれます。これは、コマンドscpm reloadに対応します。

プロファイルを切り替えると、まずSCPMは有効なプロファイルのリソースが変更されているかを確認します。次に、各リソースの変更内容を有効なプロファイルに追加するか、削除するかを確認するメッセージが表示されます。リソースを別に一覧表示する場合(以前のバージョンのSCPMのように)は、スイッチコマンドで-rパラメータを使用して、scpm switch -r workのように指定してください。

scpm switch -r work

変更したリソースの確認、
開始/シャットダウンするリソースの確認、
依存関係の確認、
デフォルトプロファイルの復元

次にSCPMは、現在のシステム設定と切り替えた後のプロファイルを比較します。この段階で、SCPMは相互依存への対応や設定変更の反映のために停止または再起動が必要なシステムサービスを評価します。これは、部分的なシステムの再起動のようなもので、システムのごく一部だけが再起動し、残りの部分は変更なく動作し続けます。システムサービスが停止し、変更されたすべてのリソース(たとえば、設定ファイル)が書き込まれ、システムサービスが再起動されるのは、この時点のみです。

32.4.4 詳細なプロファイル設定

すべてのプロファイルには説明を入力できます。説明はscpmlistを使って表示できます。有効なプロファイルに説明を入力するには、scpm set description "text"を実行します。有効なプロファイル以外のプロファイル名を使用するには、たとえば、scpm set description "text" workのように指定します。場合によっては、プロファイルの切り替え時に、SCPMが提供する以外のアクションを実行することがあります。各プロファイルには、最高4つの実行可能ファイルを添付することができます。これらはそれぞれ、切り替え処理において起動する段階が異なります。これら4つの段階を次に示します。

prestop

切り替え前、サービス停止前

poststop

切り替え前、サービス停止後

prestart

切り替え後、サービス停止前

poststart

切り替え後、サービス停止後

これらのアクションを挿入するには、コマンドsetを、scpm set prestop filenamescpm set poststop filenamescpm set prestart filenamescpm set poststart filenameのように使用します。スクリプトが実行可能ファイルであることと、正しいインタプリタを参照することが必要です。

[Warning]カスタムスクリプトの統合

SCPMにより実行されるその他のスクリプトを、スーパーユーザ(root)が読み取って実行できるようにする必要があります。他のユーザは誰もこれらのファイルにアクセスできないようにします。コマンドchmod 700 filenameおよびchown root:root filenameを入力して、rootにファイルへの排他アクセス権を付与します。

setコマンドで追加した設定を表示するには、コマンドgetを使用します。たとえば、コマンドscpm get poststartを実行すると、poststartの名前が返されるか、何も添付していない場合は何も返されません。このような設定は、""を使って上書きできます。scpm set prestop ""を実行すると、添付したprestopプログラムが削除されます。

すべてのsetコマンドとgetコマンドは、コメントを追加する場合と同じように任意のプロファイルに適用できます。たとえば、scpm get prestop filename workまたはscpm get prestop workとなります。