JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris 11.1 での Image Packaging System を使用したソフトウェアのパッケージ化および配布     Oracle Solaris 11.1 Information Library (日本語)
このドキュメントの評価
search filter icon
search icon

ドキュメントの情報

はじめに

1.  IPS の設計目標、概念、および用語

2.  IPS を使用したソフトウェアのパッケージ化

3.  ソフトウェアパッケージのインストール、削除、および更新

4.  パッケージの依存関係の指定

5.  バリエーションの許可

6.  プログラムによるパッケージマニフェストの変更

7.  パッケージインストールの一環としてのシステム変更の自動化

8.  パッケージ更新の高度なトピック

パッケージ内容の競合の回避

パッケージの名前変更、マージ、および分割

単一パッケージの名前変更

2 つのパッケージのマージ

あるパッケージによる別のパッケージの取り込み

2 つのパッケージの名前変更

パッケージの分割

パッケージの廃止

移行する編集可能ファイルの保持

ディレクトリの削除または名前変更時のパッケージ解除された内容の移動

複数のアプリケーション実装の配布

ブート環境間で共有されるディレクトリの提供

共有ディレクトリに内容を配布する方法

9.  IPS パッケージの署名

10.  非大域ゾーンの処理

11.  発行されたパッケージの変更

A.  パッケージの分類

B.  IPS を使用して Oracle Solaris OS をパッケージ化する方法

ドキュメントの品質向上のためのご意見をください
簡潔すぎた
読みづらかった、または難し過ぎた
重要な情報が欠けていた
内容が間違っていた
翻訳版が必要
その他
Your rating has been updated
貴重なご意見を有り難うございました!

あなたの貴重なご意見はより良いドキュメント作成の手助けとなります 内容の品質向上と追加コメントのためのアンケートに参加されますか?

ブート環境間で共有されるディレクトリの提供

ブート環境 (BE) に配布される一部のファイルは、複数の BE を含む環境で正常なシステム操作を保持するために BE 間で共有される必要があります。一般に、IPS では BE 間で共有される内容の配布をサポートしていません。1 つの BE で更新された、そのような共有内容は、ほかの BE の要件を満たさない可能性があります。このセクションでは、BE 間で共有される内容を配布する方法について説明します。

次のディレクトリは、IPS によって BE 間ですでに共有されています。

/var/audit
/var/cores
/var/crash
/var/mail

各 BE 内では、これらのディレクトリは次の共有ディレクトリへのシンボリックリンクです。

/var/share/audit
/var/share/cores
/var/share/crash
/var/share/mail

これらの共有ディレクトリは、/var/share にマウントされた共有データセットである VARSHARE データセット内にあります。

BE 間で共有される必要のあるデータがほかにあり、それが IPS パッケージで非共有として配布される場合、管理者はそのようなデータを別個のデータセットまたはリモートファイルサーバーに配置する可能性があります。ただし、ディレクトリごとのデータセットを作成することは、1 つのゾーンで多数のデータセットを作成することを意味しており、それは望ましくありません。

代わりに、次の手順を使用して共有データセットを配布するパッケージを作成するか、以前に非共有として配布された内容を共有するようにパッケージを変更します。IPS では、内容を共有しなかった古いバージョンのパッケージから、BE 間で内容を共有する同じパッケージの新しいバージョンへの更新をサポートしています。

共有ディレクトリに内容を配布する方法

この手順では、BE 間で共有される内容を配布する必要があるパッケージの設計方法について説明します。

BE 間でデータを共有するには、ブート中に BE にマウントされた共有データセットを、BE の内側の場所からその共有データセット内を指すシンボリックリンクとともに使用します。BE の内側で、基本的なディレクトリ構造をステージングディレクトリに配布します。ブート中に BE の内側に配置された内容を共有データセットに移動する SMF サービスを指定し、リブートを必要とするアクチュエータを指定します。

  1. BE で共有内容をステージング領域に渡します。
    1. ステージング領域を提供します。

      パッケージ内で、共有内容のためのステージング領域を配布します。たとえば、.migrate というディレクトリを配布できます。

    2. 共有構造を提供します。

      共有データセットで必要なディレクトリ構造を提供するサブディレクトリを .migrate ディレクトリに渡します。

    3. 共有ファイルを提供します。

      必要に応じて、ステージング領域のディレクトリ構造にファイルを渡します。リンクなどの他のファイルシステムオブジェクトは共有できません。

    ステージング領域に配布された内容が以前に非共有として配布されたものである場合は、新しい dir または file アクションで salvage-from 属性を使用します。次の例では、以前に /opt/myapplication/logs に配布された内容が、BE 間で共有されるデータセットに配布されるようになります。この共有データセットのステージング領域は /opt/.migrate です。

    次のアクションは以前配布されたものです。

    dir path=opt/myapplication/logs owner=daemon group=daemon mode=0755

    次のアクションは、共有されるディレクトリのための新しいアクションです。

    dir path=opt/.migrate/myapplication/logs owner=daemon group=daemon \
        mode=0755 reboot-needed=true salvage-from=/opt/myapplication/logs

    salvage-from 属性については、「ディレクトリの削除または名前変更時のパッケージ解除された内容の移動」でも説明されています。

  2. 内容を共有データセットに移動するためのスクリプトを指定します。

    ブート中に、ファイルの内容をステージングディレクトリから共有データセットに移動するためのスクリプトを SMF メソッドのスクリプトの一部として実行できます。このスクリプトでは、次の手順を実行する必要があります。

    1. 共有データセットを作成します。

      SMF メソッドスクリプト内の次のコマンドは、/opt/share にマウントされるデータセット rpool/OPTSHARE を作成します。/opt からのほかの共有内容もこのデータセットを使用できます。このスクリプトでは、zfs list を使用してデータセットがすでに存在しているかどうかをテストします。

      zfs create -o mountpoint=/opt/share rpool/OPTSHARE
    2. 共有ディレクトリ構造を作成します。

      共有データセットでは、BE のステージングディレクトリの下に定義されたディレクトリ構造の、まだ存在していない部分をすべて再作成します。

    3. ファイルの内容を移動します。

      ファイルの内容を、ステージングディレクトリから共有データセットに移動します。

  3. BE から共有ディレクトリへのシンボリックリンクを提供します。

    次のアクションでは、以前にパッケージ化されたディレクトリから、システムがリブートしたときにスクリプトによって作成される /opt/share 内の共有ディレクトリへのシンボリックリンクを作成します。

    link path=opt/myapplication/logs target=../../opt/share/myapplication/logs
  4. リブートを必要とするアクチュエータを追加します。

    reboot-needed アクチュエータは、「ソフトウェアの自己アセンブリ」 に説明されている不変ゾーンの更新を適切にサポートするために、これらのディレクトリエントリに必要です。読み取り専用でリブートする前に、自己アセンブリが必要な場合、不変ゾーンは svc:/milestone/self-assembly-complete:default マイルストーンまで読み取り/書き込みモードでブートします。詳細は、zonecfg(1M) マニュアルページの file-mac-profile プロパティーを参照してください。

    リブート時に、SMF サービスは新しいディレクトリおよび回収されたディレクトリの内容を共有データセットに移動します。/opt/myapplication からのシンボリックリンクは、共有データセットを指しています。