JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris 11 インストールマニュアルページ     Oracle Solaris 11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

システム管理コマンド

ファイル形式

ai_manifest(4)

dc_manifest(4)

dc_manifest

- ディストリビューションコンストラクタのマニフェストファイルのカスタマイズ

形式

次のマニフェストファイルを使用して、さまざまな Oracle Solaris イメージを構築できます。
これらのマニフェストは distribution-constructor パッケージに含まれます。
x86 Oracle Solaris LiveCD イメージを構築するには:
/usr/share/distro_const/dc_livecd.xml
x86 自動インストールイメージを構築するには:
/usr/share/distro_const/dc_ai_x86.xml
SPARC 自動インストールイメージを構築するには:
/usr/share/distro_const/dc_ai_sparc.xml
x86 テキストインストールイメージを構築するには:
/usr/share/distro_const/dc_text_x86.xml
SPARC テキストインストールイメージを構築するには:
/usr/share/distro_const/dc_text_sparc.xml

機能説明

ディストリビューションコンストラクタ (DC) を使用して、Oracle Solaris インストールイメージを構築できます。

DC XML マニフェストファイルは、ディストリビューションコンストラクタへの入力として使用されます。これらのマニフェストは、ディストリビューションコンストラクタが構築するイメージを定義します。上記のリストごとに、異なるマニフェストを使用してさまざまな種類のイメージを構築できます。

イメージを構築するには、distro_const コマンドを使用します。これにより、コマンド内のマニフェストファイルが参照されます。

イメージの仕様をカスタマイズする場合は、マニフェストファイルをコピーし、そのコピーをカスタマイズし、イメージを構築するときにそのコピーを distro_const コマンドの入力として使用します。

少なくとも、マニフェスト内でターゲット要素を編集し、イメージを作成できる構築領域の場所を指定する必要があります。また、ソフトウェア名要素を編集し、イメージの構築に必要なパッケージを含むパブリッシャーとリポジトリの場所を指定する必要があります。

マニフェストセクション

マニフェストには、次のプライマリ要素が含まれます。


注 - 次に示されているデフォルトの要素と属性は、使用するマニフェストによって異なります。


<distro name="Oracle_Solaris_Text_X86" add_timestamp="false">

この要素は、構築する予定のイメージに対してデフォルトの名前 Oracle_Solaris_Text_X86 を指定します。この名前を使用するか、またはイメージに対して一意の名前を指定できます。

イメージの構築作業を続けて実行して複数の増分イメージを保持する場合、タイムスタンプ変数を「true」に変更すると、タイムスタンプが各イメージの名前に自動的に追加されます。

HTTP プロキシを指定する必要がある場合、プロキシ変数を含む配布名要素のコメントを解除して、プロキシの場所を入力します。たとえば、次のように指定します。

<distro name="Oracle_Solaris_Text_SPARC" add_timestamp="false"
http_proxy="http://example.com">

<boot_mods>

この要素は、イメージに適用されるブートメニュー変更を指定します。

次の例では、「myentry」というタイトルの特殊なブートメニューがイメージに適用されます。タイムアウト属性は、デフォルトのブートエントリが自動的に有効にされるまでの時間を指定します。

<boot_mods title="myentry" timeout="5">

新しいエントリごとに boot_entry 要素を追加することで、ブートメニューエントリを個別に追加できます。エントリは、各ブートエントリの「start」または「end」の insert_at 属性値に基づいた順序でブートメニューに順次追加されます。


注 - 新しいエントリは、既存の「with magnifier」エントリの前に追加します。

個々の boot_entry 要素については、次の例を参照してください。


<boot_entry>
     <title_suffix>with screen reader</title_suffix>
     <kernel_args>-B assistive_tech=reader</kernel_args>
   </boot_entry>

この例ではタイトルサブ要素が含まれていないため、デフォルトが使用されます。デフォルトのタイトルは、/etc/release の先頭行です。

title_suffix は必須のサブ要素で、エントリのタイトルに追加されるテキスト文字列です。オプションの kernel_args サブ要素は、カーネル引数をブートローダーに渡します。

boot_entry 要素のオプションの属性には次のものがあります。

default_entry

この属性を「true」に設定すると、このブートエントリがデフォルトになります。複数のエントリが「true」に設定されている場合、最後のエントリとして定義されたエントリによってそれ以前のエントリは無効にされます。

insert_at

値を「start」または「end」に設定して、その他のブートエントリに対する挿入ポイントを示します。

<target>

この要素は、構築に使用する ZFS 構築データセットを定義します。このデータセットは、イメージが作成される場所です。有効なデータセットの場所を入力する必要があります。

次の例を参照してください。

<target>
      <logical>
        <zpool action="use_existing" name="rpool">
          <dataset>
            <filesystem name="dc/sample-dataset-location" 
            action="preserve"/>
          </dataset>
        </zpool>
      </logical>
    </target>

<software name="transfer-ips-install">

このセクションでは、イメージ構築のためにダウンロードおよび使用するパッケージをディストリビューションコンストラクタが取得できる場所を指定します。

Image Packaging System (IPS) のパブリッシャーは、1 つまたは複数のパッケージリポジトリでパッケージを提供します。

このセクションのソース要素で、パブリッシャー名要素と起点名要素を編集し、使用するパブリッシャーとパッケージリポジトリが存在する場所を指定します。複数のパブリッシャーを一覧表示できます。ディストリビューションコンストラクタがインストールするパッケージの検出を試みると、ここに一覧表示されている順序でパブリッシャーが検索されます。

パブリッシャーのミラーを指定する必要がある場合は、ミラー名要素をコメント解除して編集します。

次の例を参照してください。

<source>
  <publisher name="publisher1">
    <origin name="http://example.oracle.com/primary-pub"/>
    <mirror name="mirror.example.com"></mirror>
  </publisher>
  <publisher name="publisher2">
    <origin name="http://example2.com/dev/solaris"></origin>
  </publisher>
  <publisher name="publisher3.org">
    <origin name="http://example3.com/dev"></origin>
  </publisher>
</source>  

注 - この要素には、イメージの構築中に使用されるデータマウントポイントを指定する宛先タグも含まれます。宛先属性の変更は推奨されません。


<software_data action="install">

インストール属性を持つこの software_data 要素は、使用しているマニフェストに応じて、特定の種類のイメージを構築するためにインストールされるパッケージのセットを一覧表示します。たとえば、dc_livecd.xmlマニフェストは、Live CD イメージの構築に必要なパッケージを一覧表示します。

各名前タグは、1 つのパッケージの名前、または多数のパッケージを含む 1 つのグループパッケージの名前を一覧表示します。

<software_data action="install" type="IPS">
  <name>pkg:/entire</name>
  <name>pkg:/server_install</name>
  <name>pkg:/system/install/text-install</name>
  <name>pkg:/system/install/media/internal</name>
</software_data>

イメージに追加するパッケージがある場合、パッケージごとに名前タグを追加することによってパッケージ名を追加します。

デフォルトでは、指定されたリポジトリで利用できる最新のパッケージバージョンがインストールされます。他のバージョンが必要な場合、次の形式を使用して「entire」参照にバージョン番号を追加します。

<name>pkg:/entire@0.5.11-0.build#</name>

利用できるバージョンを確認するには、次のコマンドを使用します。

# pkg list -af entire

注 - 「entire」エントリは削除しないでください。「entire」は、複数のパッケージを管理するために使用される incorporation です。


<software_data action="uninstall" type="IPS">

アンインストール属性を持つ software_data 要素は、個々のパッケージのアンインストールまたはグループパッケージ定義のアンインストールに使用できます。

次の例で、「server_install」は、多数の個別パッケージを含むグループパッケージの名前です。

<software_data action="uninstall" type="IPS">
  <name>pkg:/server_install</name>
</software_data>

グループパッケージはアンインストールできます。グループパッケージをアンインストールしても、実際にアンインストールされるのはグループ定義だけです。そのグループの一部として以前にインストールされた個々のパッケージはアンインストールされません。ただし、グループパッケージをアンインストールせずに、それらの個々のパッケージをアンインストールできます。グループパッケージを保持すると、参照を継続する場合に役立つ可能性があります。

また、名前タグを使用して個々のパッケージをアンインストールすることもできます。アンインストールするパッケージをアンインストールセクションの終わりに追加します。

<software name="set-ips-attributes">

ディストリビューションコンストラクタを使用して作成されたイメージでシステムがインストールされるまで、この要素がそのシステムに影響を与えることはありません。

ソース要素で、パブリッシャー名とオプションのミラー名のタグを使用して、ダウンロードおよびインストールする追加パッケージにインストール済みシステムがアクセスできる場所を指定します。次の例を参照してください。

<source>
  <publisher name="solaris">
    <origin name="http://pkg.oracle.com/solaris/release/"/>
  </publisher>
</source>

<software name="ba-init">

この要素は、構築されるイメージのブートアーカイブに、インストールまたはアンインストールされるファイルとディレクトリを一覧表示します。詳細は、マニフェストファイルのコメントを参照してください。


注意

注意 - ブートアーカイブの内容を変更すると、システムがブートできなくなる可能性があります。


<execution stop_on_error="true">

マニフェストの実行要素は、イメージ作成処理中に実行される一連のチェックポイントを一覧表示します。チェックポイントは、このセクションに一覧表示された順序で実行されます。デフォルトのインストールイメージの構築に必要なデフォルトのチェックポイントは、各マニフェストに含まれています。

各チェックポイント名タグには、チェックポイントスクリプトが存在する場所を指定する mod-path 属性が含まれています。

特定のチェックポイントで構築処理の一時停止と再開を制御するには、distro_const(1M) コマンドオプションを使用します。

一部のチェックポイントタグには、デフォルト値を持つ引数が含まれています。詳細は、マニフェストのコメントを参照してください。

イメージの構築中に使用されるカスタムスクリプトを作成する場合、スクリプトの場所を指し示すチェックポイント名タグを追加する必要があります。

カスタムスクリプトを指し示す新しいチェックポイント名タグを追加する方法については、次の例を参照してください。

あるユーザーが、デフォルトの transfer-ips-checkpoint の後に構築処理で実行するカスタムスクリプト /tmp/myscript.sh を作成します。

この新しいスクリプトを指し示すには、transfer-ips-checkpoint 名のあとで次のタグをマニフェストに追加して、新しいスクリプトを指し示します。

<checkpoint name="custom-script"
 desc="my new script"
 mod_path="solaris_install/distro_const/checkpoints/custom_script"
 checkpoint_class="CustomScript">
   <args>/tmp/myscript.sh arg1 arg2/{PKG_IMAGE_PATH}</args>
</checkpoint>

ここで、「arg1」と「arg2」は、スクリプトが取るオプションの引数です。

'{PKG_IMAGE_PATH}' または '{BOOT_ARCHIVE}' の値は、distro_const ユーティリティーによって、実行中にそれぞれ <ZFS Dataset>/build_data/pkg_image または <ZFS Dataset>/build_data/boot_archive に置き換えられます。


注 - DC マニフェスト内では、複数のカスタムスクリプトチェックポイントを指定できます。各チェックポイントの名前は一意である必要があります。


<configuration name="pre-pkg-img-mod" type="sysconf" source="/etc/svc/profile/generic_limited_net.xml">

マニフェスト内の構成名要素は、イメージ作成処理中にメディアに適用される SMF サービスプロファイルを一覧表示します。これらの SMF サービスは、ブートされたメディア上で実行されるサービスと実行されないサービスを指定します。プロファイルは、この要素内で指定された順序で適用されます。

この要素を変更することはほとんどありません。

属性

次の属性については、attributes(5) のマニュアルページを参照してください。

属性タイプ
属性値
使用条件
install/distribution-constructor package
インタフェースの安定性
開発中

関連項目

distro_const(1M), pkg(1)

現在のリリースの OTN ドキュメントライブラリの『カスタム Oracle Solaris 11 インストールイメージの作成』。