上一主题: 通用 Windows 组件下一主题: 手工执行 APK Prep 脚本


Windows APK

Windows 组件可完全通过包含 Windows APK msi(由 CA AppLogic® 随附的 Windows exe 安装程序安装)进行管理。

文件
兼容性

windows_apk-ver.msi 版本与所有支持的 Windows 版本兼容。

要安装 APK,您需要以下内容:

注意:要安装 Windows,请为操作系统安装验证 ISO 映像。

此部分包含以下主题:

操作特性

Windows 特定信息

单独安装 APK

操作特性

使用 Windows APK 的 Windows 组件的操作特征如下所示:

计算机名称

组件实例名更改时,Windows 组件的计算机名由 CA AppLogic® 自动更改。 您可以使用 GUI 或在将目录中的新组件实例添加到应用时更改实例名。 在所有 Windows 组件中运行的 Windows APK 均可处理计算机名称更改。

组件启动时,Windows APK 将计算机名与组件名进行比较。 如果两个名称不同,APK 将执行以下操作:

启动正在更新计算机名称的 Windows 组件时,组件启动过程需要的时间较正常状态要多几分钟。 这是因为计算机名更改需要重新启动额外的组件。

组件正在重新启动时,会在 app/comp 启动期间在控制台中显示下列消息:“compname 进入维护状态”(其中 compname 是 Windows 组件的名称)。

防止 APK 重命名组件:

要更改组件的计算机名,您可以使用 Windows GUI,或您可以登录到组件,并从登录 shell 运行以下命令。 这假定 APK 计算机名更改已如上所述被禁用。

运行以下命令:

wmic computersystem 

where name="%COMPUTERNAME%" rename name="newname"

将 newname 替换成计算机名

注意:CA AppLogic® 包括 wincfg 实用工具,允许用户更改 Windows 组件的各种设置,如计算机名称和管理员密码。

管理员密码

如果您需要进入图形控制台但您不知道管理员密码,那么可以通过登录 shell 更改密码。

使用以下命令:

net user Administrator admin-new-password 

其中,admin-new-password 是管理员的新密码

注意:

登录 Shell

Windows msi 安装程序包括 Cygwin,在 Windows 下运行的压缩的类似 Linux 的环境。 Cygwin ssh 服务器向 Windows 组件提供 ssh 访问权限。 登录 shell 是 bash。 Cygwin bash shell 支持 Windows 命令 shell 下的多数可用命令,以及通常的 bash 命令。

cygwin shell 使用 / 作为目录分隔符而不是 \。

要访问驱动器使用的根目录,例如,cd c: 或 cd c:/,您也可以使用 cygpath 实用工具在 Cygwin POSIX 风格的路径名和 Windows 本地文件名之间转换;有关详细信息,请参考 cygpath 手册。

公钥验证的 ssh 登录中的安全上下文几乎但不完全与管理员登录相同。 当前用户 SID 是管理员,但是 SID 的名称查找返回 sshd_service,而不是管理员。

几个命令,如 diskpart,从登录 shell 不起作用。

服务

Windows msi 安装程序既禁用 Windows 自动更新服务,又禁用 Windows 防火墙服务。 这些服务在安装之后,可以根据需要手工重新启用。 有关其他信息,请参阅“手工执行 APK Prep 脚本”。

NTFS 卷

Windows msi 安装程序禁用 Microsoft Windows 卷自动挂接功能。 APK 自动挂接功能取代了此功能。

使用 Windows Filer 在 NTFS 卷上操作之前,请在 Filer 数据表中读取 NTFS 实施细节。

关闭

使用 APK 生成的关闭事件来关闭受管理的 Windows 组件。 有时,如果正在等待用户交互,Windows 可阻止该事件,例如,在 GUI 中。 在这种情况下,发出 app stop 或 comp stop 命令会导致组件停止,在 15 分钟内超时,此时组件突然停止且非正常关闭。

要在这种情况下正常关闭,请登录到组件的图形控制台,并在发出 app stop 或 comp stop 命令之后,通过 GUI 关闭它。

Windows 特定信息

文件名

除非另有说明,否则本文档中的名称位于 CygWin 文件命名空间中,这是效仿 Posix 系统。

注意:这些名称无法与任何非 Cygwin 实用工具一起使用。 这包括 APK 二进制文件本身(如 vme 和 udlparse),以及所有固有的 Windows 命令行工具。 大多数 Cygwin 实用工具将接受 CygWin 名称(posix 样式)或 Windows 名称(例如:C:\path\),但有些工具例外,这些工具考虑那些为了表示 computername:filename 之意而包含 ":" 的字符串,例如:scp、rsync,特别是 tar。 可以使用 --force-local 选项强制后者接受 Windows 名称。

要在 Windows 和 Cygwin 命名空间之间转换文件名,请使用 cygpath。

windowspath=`cygpath -w /var/applogic/appliance.desc` 

磁盘挂接

指定磁盘的挂接点时,如有需要,请使用下列名称:

X-单独一个字母(A、B、D-Z)将使磁盘可访问,其作用就像 X:\ 一样。

X:\-与 X 一样

C:\dir1\[dir2\...]-允许在启动文件系统的给定子目录中访问磁盘。 如果此目录不存在,将创建它。

注意:不应允许 APK 创建此目录。 默认目录权限可能不同于您的需求。

如果磁盘没有类描述符中指定的挂接点,将导致 APK 忽略该磁盘并将其挂接分配按照原样保留在 Windows 中。 在这种情况下,从 Windows 本身手工为此磁盘完成的任何挂接点分配是持久的,而且优先于使用类描述符实现的该挂接点向其他磁盘的分配。 后一种分配将没有任何作用,并且会将磁盘保留为取消挂接状态。 例如:如果您已经在类编辑器/“修改”对话框中指定了以下内容:

disk 0 ->(启动)
disk 1 ->(未分配挂接)
disk 2 -> Z:\ 

然后您再登录到组件,从 disk2 中删除 Z 并将其分配给 disk1。 那么重新启动后 Z 将保持分配给 disk1, 而类描述符中的 disk2 -> Z 分配将不会生效。 Disk2 不会被挂接到任何位置,直到 Z 从 disk1 中删除,或为 disk2 设置了除 Z 以外的其他分配。

C:\ 会保留并且无法指定为任何磁盘的挂接点。 启动磁盘的任何分配都会被忽略,并且将被报告为挂接在组件实例描述符中的 C:\ 上。

不要将挂接路径与任何除 C: 以外的驱动器上的子目录一起使用。 否则可能导致您的挂接无法使用,因为它依赖于磁盘的挂接顺序。

Windows 不会拒绝挂接未格式化的磁盘或使用 Windows 不识别的文件系统格式化的磁盘。 APK 分配挂接时完全不会有任何错误或警告。 但尝试访问挂接点和任何子路径时将会失败。

用户名

APK 安装脚本将使管理员的 CygWin 别名变为 root。 因此,root 将是任何 CygWin 二进制文件看到的用户名,并在 CygWin shell 以及目录列表中显示为当前用户名。 该设置允许使用远程 shell 命令 (3t ssh component-name) 访问组件。

CygWin 用户名和 Windows 用户名之间的映射不是自动的。 此映射在 /etc/passwd 和 /etc/group 文件中进行了描述,这两个文件在添加/删除 Windows 用户时不会自动更新。 CygWin 包括维护 /etc/passwd 和 /etc/group 文件的实用工具。 使用这些实用工具时,请务必为 APK 创建的 root 保留特殊的映射, 否则从网格进行的 ssh 登录将停止。

单独安装 APK

APK 将在 Windows 基类安装期间自动安装。 如果需要,您可以单独安装 APK,也可以升级现有组件上的 APK。

必须在实际系统上安装 APK。 不能将用于 Windows 的 APK 安装到未实际运行的已挂接操作系统磁盘映像中。 为获得最佳效果,使用配置了外部网络访问的操作系统映像,再使用您最喜爱的操作系统中的远程桌面客户端(例如:rdesktop)登录到此映像。 比起使用 VNC 来查看 HVM 模拟视频屏幕,使用配置了外部网络访问的操作系统映像能提供更好的交互式操作。

执行以下安装选项之一:

本节包含以下主题:

手工执行 APK Prep 脚本