软件包库 (depot) 服务器 pkg.depotd 提供对包含在软件包系统信息库中的数据的网络访问。svc:/application/pkg/server SMF 服务会调用 pkg.depotd 守护进程。为了使客户机能够通过使用 HTTP 访问本地系统信息库,以下过程将说明如何配置 pkg/server 服务。您可以配置服务的 default 实例。以下过程说明了如何创建和配置新实例。
使用 add 子命令添加 pkg/server 服务的新实例,名称为 solaris。
$ svccfg -s pkg/server add solaris
设置服务的此实例可找到系统信息库数据的路径。
$ svccfg -s pkg/server:solaris setprop pkg/inst_root=/export/IPSpkgrepos/Solaris
设置 depot 服务器实例应侦听传入软件包请求的端口号。缺省情况下,pkg.depotd 在端口 80 上侦听连接。要更改端口,请重置 pkg/port 属性。
$ svccfg -s pkg/server:solaris setprop pkg/port=81
有关 pkg/server 属性的完整列表,请参见 pkg.depotd(1M) 手册页。
要设置多个服务属性,请使用以下命令一次编辑所有属性。对于要更改的行,请注意删除开始处的注释标记 (#)。
$ svccfg -s pkg/server:solaris editprop
重新启动软件包库 (depot) 服务器服务。
$ svcadm refresh pkg/server:solaris $ svcadm enable pkg/server:solaris
要确定系统信息库服务器是否正在运行,请打开浏览器窗口定位到 localhost 位置。缺省情况下,pkg.depotd 在端口 80 上侦听连接。如果更改了端口,请打开浏览器窗口定位到 localhost:port_number 位置。
要使客户机系统能够从本地文件系统信息库获取软件包,请设置发布者的源。
使用以下命令确定系统信息库中发布者的名称:
$ pkgrepo info -s /export/IPSpkgrepos/Solaris PUBLISHER PACKAGES STATUS UPDATED solaris 4768 online 2014-04-02T18:11:55.640930Z
要更新已安装的软件包,请安装依赖于已安装软件包的软件包,或者安装非全局区域,设置为发布者源的系统信息库必须至少包含在其中设置发布者的相应映像中所安装的相同软件。系统信息库也可以包含更旧或更新的软件,但必须包含该映像中安装的相同软件。
以下命令显示指定的系统信息库不是此映像的合适发布者源:
$ 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
将发布者源设置为以下某一值:
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
删除 solaris 发布者的所有现有源。
删除 solaris 发布者的所有现有镜像。
将新建的本地系统信息库的 URI 添加为 solaris 发布者的新源。
有关配置发布者的更多信息,请参见在 Oracle Solaris 11.2 中添加和更新软件 中的配置发布者。
如果重置其他映像中的发布者源,请再次执行适用性测试:其他映像可能具有所安装软件的不同版本,且可能无法使用此系统信息库。
另请参见
使用 Web 服务器访问方式提供多个系统信息库介绍了如何从多个位置或从单个位置提供多个系统信息库。
在一个域中有多个系统信息库介绍了如何在具有不同前缀的一个域名下运行多个系统信息库。
配置系统信息库的 HTTPS 访问介绍了如何配置安全系统信息库访问。