在 Oracle® Solaris 11.2 中复制和创建软件包系统信息库

退出打印视图

更新时间: 2014 年 9 月
 
 

如何使用户能够使用 HTTP 接口检索软件包

软件包库 (depot) 服务器 pkg.depotd 提供对包含在软件包系统信息库中的数据的网络访问。svc:/application/pkg/server SMF 服务会调用 pkg.depotd 守护进程。为了使客户机能够通过使用 HTTP 访问本地系统信息库,以下过程将说明如何配置 pkg/server 服务。您可以配置服务的 default 实例。以下过程说明了如何创建和配置新实例。

  1. 创建 depot 服务器实例。

    使用 add 子命令添加 pkg/server 服务的新实例,名称为 solaris

    $ svccfg -s pkg/server add solaris
  2. 设置系统信息库的路径。

    设置服务的此实例可找到系统信息库数据的路径。

    $ svccfg -s pkg/server:solaris setprop pkg/inst_root=/export/IPSpkgrepos/Solaris
  3. (可选)设置端口号。

    设置 depot 服务器实例应侦听传入软件包请求的端口号。缺省情况下,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. 启动系统信息库服务。

    重新启动软件包库 (depot) 服务器服务。

    $ svcadm refresh pkg/server:solaris
    $ svcadm enable pkg/server:solaris
  6. 测试系统信息库服务器是否正在运行。

    要确定系统信息库服务器是否正在运行,请打开浏览器窗口定位到 localhost 位置。缺省情况下,pkg.depotd 在端口 80 上侦听连接。如果更改了端口,请打开浏览器窗口定位到 localhost:port_number 位置。

  7. 设置发布者源。

    要使客户机系统能够从本地文件系统信息库获取软件包,请设置发布者的源。

    1. 确定发布者的名称。

      使用以下命令确定系统信息库中发布者的名称:

      $ pkgrepo info -s /export/IPSpkgrepos/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 /export/IPSpkgrepos/Solaris/ solaris
      • pkg/port 位置。

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

      删除 solaris 发布者的所有现有源。

      -M '*'

      删除 solaris 发布者的所有现有镜像。

      -g

      将新建的本地系统信息库的 URI 添加为 solaris 发布者的新源。

      有关配置发布者的更多信息,请参见在 Oracle Solaris 11.2 中添加和更新软件 中的配置发布者

    如果重置其他映像中的发布者源,请再次执行适用性测试:其他映像可能具有所安装软件的不同版本,且可能无法使用此系统信息库。

另请参见