/etc/system ファイルは、カーネルパラメータの値を静的に調整するメカニズムを提供します。このファイルに指定された値は、ブート時に読み込まれ適用されます。このファイルに対する変更は、システムがリブートされるまでオペレーティングシステムに適用されません。
構成パラメータが計算される前に、すべての値を設定するために 1 回のパスが行われます。
次のエントリでは、ZFS ARC の最大値 (zfs_arc_max) を 30G バイトに設定します。
set zfs:zfs_arc_max = 0x780000000
会社の名前が Widget, Inc. であるとします。このエントリを widget:zfs または、/etc/system.d ディレクトリ内の同様の名前のファイルに格納します。システムがブートすると、/etc/system.d 内のすべてのパラメータ構成が /etc/system ファイルに追加されます。これにより、システムは /etc/system の内容に従って構成されます。
間違った値を元に戻すには、次のいずれかの方法を実行します。
/etc/system.d ディレクトリ内の構成ファイルから欠陥のあるパラメータ設定を削除します。ブート時に、/etc/system ファイルが以前の構成で更新され、それらがシステムに再適用されます。
システムパラメータの変更を導入する前に、まずブート環境のクローンを作成してください。
# beadm create BE-clonename
その後、/etc/system に変更を適用したあと現在の BE が使用不能になった場合は、システムをリブートします。x86 GRUB メニューまたは SPARC ブートメニューで、「BE clone」を選択します。ブートが完了したあと、以降のシステムブートで使用されるデフォルトの BE になるように、オプションで BE クローンをアクティブ化できます。
正しくない値から簡単に回復できるように、/etc/system.d ディレクトリ内の構成ファイルの新しいパラメータで更新する前に、/etc/system ファイルのコピーを作成します。例:
# cp /etc/system /etc/system.good
/etc/system.d 内の構成ファイルに指定した値が原因でシステムがブートできなくなった場合は、次のコマンドで回復できます。
ok boot -a
このコマンドを実行すると、ブートプロセスで使用する各ファイルの名前をシステムから要求されます。/etc/system ファイルの名前が要求されるまで Return キーを押して、デフォルトの値を適用します。Name of system file [/etc/system]: というプロンプトが表示されたら、正しい /etc/system ファイルの名前かまたは /dev/null を入力します。
Name of system file [/etc/system]: /etc/system.good
/dev/null を指定した場合は、このパスによってシステムは /dev/null から構成情報を読み取ろうとします。このファイルは空なので、システムはデフォルト値を使用することになります。システムがブートしたあと、/etc/system ファイルを修正できます。
システム回復についての詳細は、Oracle Solaris 11.2 でのシステム管理のトラブルシューティング を参照してください。