共有の場所にリポジトリを作成します。リポジトリのファイルシステムを作成する場合は、atime を off に設定します。ローカルの IPS パッケージリポジトリの作成および使用のベストプラクティスを参照してください。
$ zfs create -o atime=off rpool/export/IPSpkgrepos $ zfs create rpool/export/IPSpkgrepos/Solaris $ zfs get atime rpool/export/IPSpkgrepos/Solaris NAME PROPERTY VALUE SOURCE rpool/export/IPSpkgrepos/Solaris atime off inherited from rpool/export/IPSpkgrepos
リポジトリをコピーするために必要な pkg(5) リポジトリインフラストラクチャーを作成します。前の方法で使用したイメージファイルには、リポジトリインフラストラクチャーが含まれているため、このステップは必要ありません。この方法の説明に従って pkgrecv コマンドを使用してリポジトリの内容をコピーする場合は、リポジトリのインフラストラクチャーを作成して、リポジトリの内容をそのインフラストラクチャーにコピーする必要があります。pkg(5)およびpkgrepo(1)のマニュアルページを参照してください。
$ pkgrepo create /export/IPSpkgrepos/Solaris
リポジトリをコピーするには、pkgrecv コマンドを使用します。この操作はネットワークパフォーマンスに影響することがあります。この操作が完了するために必要な時間は、ネットワーク帯域幅と接続速度に依存します。リポジトリのコピーのパフォーマンスに関する考慮事項も参照してください。あとでこのリポジトリを更新する場合、変更内容のみが転送され、プロセスに要する時間がずっと少なくなることがあります。
次のコマンドは、-s オプションで指定したパッケージリポジトリからすべてのパッケージのすべてのバージョンを取得し、-d オプションで指定したリポジトリに入れます。セキュアなサイトからコピーする場合は、必要な SSL 証明書および鍵がインストールされていることを確認し、必要な証明書および鍵のオプションを指定します。
$ pkgrecv -s https://pkg.oracle.com/solaris/support -d /export/IPSpkgrepos/Solaris \ --key /path-to-ssl_key --cert /path-to-ssl_cert '*'
-m および --clone オプションの詳細は、pkgrecv(1)のマニュアルページを参照してください。このためには -m latest オプションを使用しないでください。極端な疎リポジトリを使用すると、ユーザーがそのイメージを更新しようとしたときに、エラーが発生する場合があります。
pkgrepo コマンドの info、list、および verify サブコマンドを使用して、リポジトリが正常にコピーされたことを確認します。pkgrepo verify コマンドでエラーが報告された場合は、pkgrepo fix コマンドを使用してそのエラーの修正を試みてください。詳細は、pkgrepo(1) のマニュアルページを参照してください。
$ zfs snapshot rpool/export/IPSpkgrepos/Solaris@sol-11_2_0