SDB:KIWI Cookbook WebYaST
所有 KIWI 编辑
在 Kiwi 创建的镜像中包含 WebYast
本示例提供了一个关于在 Kiwi 创建的镜像中包含 WebYast 的通用指南。
WebYaST 配方
准备时间
- 10 分钟
烹饪时间
- 15-25 分钟,具体取决于带宽(参见 此处 的讨论)和主机的硬件
配料
- 一台正在运行的 openSUSE 11.3 系统(或更高版本)
- 一个 openSUSE 11.3 仓库(或更高版本)
- 互联网访问(或者从 openSUSE 构建服务仓库下载软件包)
- 已安装最新版本的 KIWI 工具集(至少版本 3.74)
- 已安装 kiwi-doc 包
- 大约 2 GB 的可用磁盘空间
WebYaST
有关 WebYast 的详细信息,请参见 WebYast 门户。WebYaST 是一套系统管理和配置工具,允许您通过 Web 浏览器远程管理系统。WebYast 是一种模块化工具集,目前已实现的用于系统管理任务的模块可以在 此处 找到。
在本示例中,我们将构建一个包含一些 WebYaST 软件包的 VMware 镜像,以演示基本用法和配置。
Kiwi 镜像描述
我们从 kiwi-doc 软件包提供的 VMware 镜像示例开始。将镜像描述复制到您选择的工作目录;在本示例中,我们将使用 /tmp 目录树。此外,假设您之前已经完成了一些或所有基本的 Kiwi 配方,并且您熟悉基本的 Kiwi 概念。
有了 VMware 镜像描述的副本后,现在我们可以编辑 config.xml 文件以包含我们感兴趣的 WebYaST 模块。使用您喜欢的编辑器编辑 config.xml 文件,并将下面显示的新的仓库添加到配置文件中。
<repository type="rpm-md"> <source path="opensuse://devel:/languages:/ruby:/extensions/openSUSE_11.3"/> </repository> <repository type="rpm-md"> <source path="opensuse://YaST:/Web/openSUSE_11.3"/> </repository>
配置好仓库后,现在我们可以添加要在镜像中安装的 WebYaST 软件包。除了基本功能外,我们还将向镜像添加时间和用户管理模块。在 config.xml 的 image 软件包部分,添加以下软件包
<packages type="image"> ..... <package name="webyast-base-ui"/> <package name="webyast-base-ui-branding-default"/> <package name="webyast-base-ws"/> <package name="webyast-reboot-ui"/> <package name="webyast-reboot-ws"/> <package name="webyast-status-ui"/> <package name="webyast-status-ws"/> <package name="webyast-time-ui"/> <package name="webyast-time-ws"/> <package name="webyast-user_en"/> <package name="webyast-users-ui"/> <package name="webyast-users-ws"/> .... </packages>
这完成了对 config.xml 的更改。接下来,我们需要确保 WebYast 服务在设备启动时启动。这通过对 config.sh 的更改来实现。使用您喜欢的编辑器编辑 config.sh,并在标记为 Activate services 的部分添加以下命令
insserv yastws insserv yastwc
保存文件并构建镜像
下一步是启动虚拟机以查看 WebYast。在本示例中,我们使用 qemu-kvm 进行测试。
镜像中的网络设置为从 DHCP 服务器接收 IP 地址。如果您在网络上没有运行 DHCP,则需要登录到机器并配置网络。否则,您可能仍然会在登录提示显示时在屏幕上看到分配的 IP 地址。使用 IP 地址,通过使用 ''https://IP-ADDRESS:54984'' 在网络上的任何其他机器上的浏览器中连接到该机器。接受证书,您将能够使用密码 linux 以 root 用户身份登录。
有关配置 WebYaST 服务的更多信息,请参见 安装和配置 页面。您可以通过在配置目录的叠加树中提供自己的文件,或者通过 config.sh 进行修改来修改配置。
就这样了,您的镜像已启动并正在运行,WebYaST 可以用作管理界面。端口 54984 是 Web 客户端的默认端口,允许您从网络上的任何机器连接到正在运行的服务。
在结束本示例之前,关于包含的 WebYaST 软件包说几句。您始终需要包含 webyast-base-* 软件包,因为它们为 Web 服务(软件包以 ws 结尾)和基于 Web 的用户界面(软件包以 ui 结尾)提供基本基础设施。webyast-reboot 软件包提供从基于 Web 的界面重新启动镜像的功能,您可能希望始终包含它,如果不是全部,则大部分时间。另一个属于此类别的软件包是 webyast-status 软件包。状态软件包提供功能,让您可以监控镜像的统计信息,例如 CPU 使用率、网络流量等。
最后但并非最不重要的一点是,关于基于 SUSE Linux Enterprise 的镜像的用户。并非所有 WebYaST 在 SLE 上所需的软件包都可从 openSUSE 构建服务获得。您可以通过使用以下方式配置仓库以直接指向 Novell Customer Center Web-Yast 和 SLE 更新仓库
<repository type="rpm-md" username="USERNAME" password="PASSWORD" <source path="https://nu.novell.com/..../> </repository>
其中用户名和密码是您从 NCC 网站获得的凭据。但是,您需要使用 Kiwi 版本大于 4.82 才能访问此功能。