Go to main content
Oracle® Solaris 11.3 パッケージリポジトリのコピーと作成

印刷ビューの終了

更新: 2016 年 11 月
 
 

ユーザーが HTTP インタフェースを使用してパッケージを取得できるようにする

このセクションでは、パッケージ集積サーバーを使用してローカルリポジトリパッケージを提供する方法について説明します。

ユーザーが HTTP インタフェースを使用してパッケージを取得できるようにする方法

パッケージ集積サーバー pkg.depotd は、パッケージリポジトリ内に含まれているデータへのネットワークアクセスを提供します。svc:/application/pkg/server SMF サービスは、pkg.depotd デーモンを呼び出します。システムが HTTP を使用してローカルリポジトリにアクセスできるようにするために、この手順では pkg/server サービスを構成する方法を示しています。サービスの default インスタンスを構成できます。この手順は、新しいインスタンスを作成および構成する方法を示しています。

  1. 集積サーバーのインスタンスを作成します。

    add サブコマンドを使用して、solaris という名前の pkg/server サービスの新しいインスタンスを追加します。

    $ svccfg -s pkg/server add solaris
  2. リポジトリへのパスを設定します。

    サービスのこのインスタンスが、リポジトリのデータを検索できるパスを設定します。

    $ svccfg -s pkg/server:solaris setprop pkg/inst_root=/var/share/pkgrepos/solaris
  3. (オプション) ポート番号を設定します。

    集積サーバーインスタンスが受信パッケージ要求を待機するポート番号を設定します。デフォルトでは、pkg.depotd はポート 80 で接続を待機します。ポートを変更するには、pkg/port プロパティーをリセットします。

    $ svccfg -s pkg/server:solaris setprop pkg/port=81
  4. (オプション) ほかのプロパティーを設定します。

    pkg/server プロパティーの完全な一覧については、pkg.depotd(1M) のマニュアルページを参照してください。

    複数のサービスプロパティーを設定するには、次のコマンドを使用してすべてのプロパティーを一度に編集します。変更するすべての行の先頭にあるコメントマーカー (#) を削除してください。

    $ svccfg -s pkg/server:solaris editprop
  5. リポジトリサービスを起動します。

    パッケージ集積サーバーサービスを再起動します。

    $ svcadm refresh pkg/server:solaris
    $ svcadm enable pkg/server:solaris
  6. リポジトリサーバーが動作しているかどうかをテストします。

    リポジトリサービスが動作しているかどうかを判別するには、localhost の場所を指定してブラウザウィンドウを開きます。デフォルトでは、pkg.depotd はポート 80 で接続を待機します。ポートを変更した場合、localhost:port_number の場所を指定してブラウザウィンドウを開きます。

  7. パブリッシャーの起点を設定します。

    システムでローカルファイルリポジトリからパッケージを取得できるようにするには、パブリッシャーの起点を設定します。

    1. パブリッシャーの名前を判別します。

      次のコマンドを使用して、リポジトリ内のパブリッシャーの名前を判別します。

      $ pkgrepo info -s /var/share/pkgrepos/solaris
      PUBLISHER PACKAGES STATUS           UPDATED
      solaris   4768     online           2014-04-02T18:11:55.640930Z
    2. このパブリッシャーの起点の適合性を確認します。

      インストール済みのパッケージの更新、インストール済みのパッケージに依存するパッケージのインストール、または非大域ゾーンのインストールを行うには、少なくともパブリッシャーの起点として設定したリポジトリに、パブリッシャーを設定しているイメージにインストールされているのと同じソフトウェアが含まれている必要があります。リポジトリにはより古いソフトウェアまたはより新しいソフトウェアを含めることもできますが、イメージにインストールされているのと同じソフトウェアが含まれている必要があります。

      次のコマンドは、指定されたリポジトリがこのイメージに適合しないパブリッシャーの起点であることを示しています。

      $ pkg list entire
      NAME (PUBLISHER)      VERSION                   IFO
      entire                0.5.11-0.175.2.0.0.36.0   i--
      $ pkgrepo list -Hs http://pkg.oracle.com/solaris/release entire@0.5.11-0.175.2.0.0.36.0
      pkgrepo list: The following pattern(s) did not match any packages:
              entire@0.5.11-0.175.2.0.0.36.0

      次のコマンドは、指定されたリポジトリがこのイメージに適合するパブリッシャーの起点であることを示しています。

      $ pkgrepo list -Hs http://localhost:81/ entire@0.5.11-0.175.2.0.0.36.0
      solaris       entire       0.5.11,5.11-0.175.2.0.0.36.0:20140401T190148Z
    3. パブリッシャーの起点を設定します。

      パブリッシャーの起点に次のいずれかの値を設定します。

      • pkg/inst_root の場所。

        $ pkg set-publisher -G '*' -M '*' -g /var/share/pkgrepos/solaris/ solaris
      • pkg/port の場所。

        $ pkg set-publisher -G '*' -M '*' -g http://localhost:81/ solaris
      -G '*'

      solaris パブリッシャーについての既存の起点をすべて削除します。

      -M '*'

      solaris パブリッシャーについての既存のミラーをすべて削除します。

      -g

      新しく作成されたローカルリポジトリの URI を solaris パブリッシャーの新しい起点として追加します。

      パブリッシャーの構成の詳細は、Oracle Solaris 11.3 ソフトウェアの追加と更新 の パブリッシャーの構成を参照してください。

    ほかのイメージでパブリッシャーの起点をリセットした場合は、適合性テストを再度実行します。ほかのイメージには別のバージョンのソフトウェアがインストールされている可能性があるため、このリポジトリを使用できないことがあります。

関連項目