3

升级 SGD

本章介绍有关升级旧版 Sun Secure Global Desktop (SGD) 软件的要求和操作过程。

本章包括以下几个主题:


升级之前

本节介绍了您在升级之前必须了解的信息和必须执行的操作。

版本 4.40 和更高版本组织结构方面的变化

SGD 版本 4.40 引入了一个基于 Web 的新管理工具(管理控制台),该工具取代了 Object Manager、Array Manager、Configuration Wizard 和 Session Manager。因此,如果是从版本 4.40 之前的发行版升级,需要注意 SGD 组织层次结构有很大变化。主要变化如下所示:

从版本 4.40 之前的发行版升级时,现有应用程序对象和应用服务器对象及其关联的组和组织单元对象)将移到新组织中。SGD 会尽可能尝试保留对象之间的关系,但在升级之后,某些用户可能会发现有的应用程序已不再在其 Webtop 上。

从版本 4.40 之前的发行版升级之前,建议您进行测试以了解更改对您的影响。您可以通过升级反映生产环境的预试生产环境来执行测试。此外,您也可以从阵列中分离辅助服务器并对其进行升级。

升级与 Early Access Program 软件

升级到 SGD 软件的各种 Early Access Program (EAP) 发行版本或从这些发行版本升级均不受支持。对于 EAP 软件发行版本,始终都应采用全新安装方法。

升级注意事项

仅支持从以下版本升级到此版 SGD:

如果要从 SGD 的其他任何版本升级,或者从 Tarantella Enterprise 3 版本 3.30 或更低版本升级,请与 Sun 技术支持人员联系。

如果您确实要执行不受支持的升级,则在安装该软件的新版本之前必须先创建一个空文件 /opt/tarantella/var/UPGRADE。可能无法正确升级您安装的 SGD。

在 Solaris OS 平台上升级之前

在 Solaris OS 平台上进行升级时,pkgadd 命令会在安装软件包之前执行几项检查,并要求您确认是否要进行更改。您可以创建一个管理文件,用它指示 pkgadd 跳过这些检查并在不要求用户确认的情况下安装软件包。

为了不与用户进行交互,管理文件中必须包含以下行内容:

conflict=nocheck
instance=unique

升级 SGD 时,可使用 pkgadd -a adminfile 命令指定管理文件。

如果您在升级时未指定管理文件,则 SGD 安装程序会为您创建一个,还会让您选择是否退出安装,使您能够再次运行 pkgadd 命令并在该命令中使用 -a adminfile 选项。

升级与现有配置

升级过程会对现有配置应用以下更改:


执行升级

升级 SGD 的方式取决于要升级的是评估版 SGD 还是已获得完全使用许可的 SGD 版本,以及要升级的是单服务器阵列还是多服务器阵列。如果对 SGD 进行了自定义,则可能需要手动升级自定义的文件。

升级评估版 SGD

如果某一 SGD 服务器上没有安装许可证密钥,或者不属于任何已获得完全使用许可的阵列,则表示该 SGD 服务器处于评估模式。当 30 天的评估期到期后,该 SGD 服务器将处于评估期期满模式

可通过安装 SGD 软件的下一版本来升级处于评估模式或评估期期满模式的 SGD 服务器。

原先已过评估期的 SGD 服务器在升级后仍将处于评估期期满模式。您无法登录处于评估期期满模式的 SGD 服务器。

要为已过评估期的服务器获得使用许可,您必须使用 tarantella license add 命令添加有效的许可证密钥,或者使该服务器加入已获得完全使用许可的阵列。

procedure icon  如何升级已获得完全使用许可的单服务器阵列

  1. 确保阵列中没有正在运行的用户会话和应用程序会话(包括暂停的会话)。

  2. 通过安装新的 SGD 版本来升级服务器。

procedure icon  如何升级已获得完全使用许可的多服务器阵列

多服务器阵列中的所有 SGD 服务器都必须运行相同版本的 SGD 软件。这意味着,要升级某个阵列,您必须先拆分该阵列,分别升级每个服务器,然后再重新构建该阵列。

  1. 确保阵列中没有正在运行的用户会话和应用程序会话(包括暂停的会话)。

  2. 拆分阵列。

    主 SGD 服务器上,从阵列中分离各辅助 SGD 服务器:


    # tarantella array detach --secondary server
    



    注 - 一次只能分离一台辅助 SGD 服务器。对阵列结构进行更改后,请等待 SGD 将更改复制到阵列中的所有 SGD 服务器上,然后再进行进一步的更改。对主 SGD 服务器运行 tarantella status 命令以检查阵列的状态。



    当某台辅助 SGD 服务器从阵列中分离出来后,它将失去其许可证密钥,因此您可能暂时无法在该主机上登录 SGD。

  3. 通过安装新的 SGD 软件版本来升级主 SGD 服务器。

  4. 通过安装新的 SGD 软件版本来升级各辅助 SGD 服务器。

  5. 重新构建阵列。

    主 SGD 服务器上,将各辅助 SGD 服务器添加到阵列中:


    # tarantella array join --secondary server
    



    注 - 一次只能添加一台辅助 SGD 服务器。对阵列结构进行更改后,请等待 SGD 将更改复制到阵列中的所有 SGD 服务器上,然后再进行进一步的更改。对主 SGD 服务器运行 tarantella status 命令以检查阵列的状态。



    当某台辅助 SGD 服务器被添加到阵列中后,它将获得主 SGD 服务器上安装的所有许可证密钥。

升级自定义的 SGD 安装

进行升级时,SGD 安装程序会保留它所发现的自定义文件,但不会对它们进行升级。您必须手动升级这些文件。可能需要升级以下两组文件:

进行升级后您可能需要注意以下两类自定义文件:

升级自定义的 SGD Web 服务器文件

进行升级时,SGD 安装程序会将它检测到的所有自定义的 SGD Web 服务器文件备份。备份的文件及其位置列在 /opt/tarantella/var/log/webservercustomized.list 日志文件中。

要升级自定义的文件,请使用 diffpatch 之类的实用程序来比较和合并备份文件与标准 SGD 安装中的文件之间的差异。

SGD 安装程序会将它发现的所有定制 SGD Web 服务器文件复制到新的安装中。这些文件不会被更改。

升级自定义的 SGD 服务器文件

进行升级时,SGD 安装程序会将它检测到的自定义和定制 SGD 服务器文件备份,并生成以下日志文件:

  • /opt/tarantella/var/log/upgraded.files - 变化内容的摘要

  • /opt/tarantella/var/log/customized.list - 管理员编辑过或添加的所有文件的列表

  • /opt/tarantella/var/log/customizedchanged.list - 管理员编辑过且在升级过程中发生了变化的所有文件的列表

  • /opt/tarantella/var/log/docrootjava.log - 与原始安装相比,新增的或经过修改的 Javatrademark 技术文件的列表

可使用这些日志文件来找出需要手动升级的文件。

procedure icon  如何手动升级自定义的 SGD 服务器文件

  1. 创建自定义文件的副本。

  2. 找出两个 SGD 版本之间发生的变化。

    customizedchanged.list 日志文件列出了所有必须手动升级的自定义文件。对于此日志文件中列出的每个文件,系统中都将具有该文件的三个版本:

    • 旧的自定义版本,位于以下某一个目录中:

      • /opt/tarantella/var/serverresources.oldversion,其中保存的是登录脚本。

      • /opt/tarantella/etc/data.oldversion,其中保存的是其他文件(如色彩表)。

    • 旧的非自定义版本,位于 /opt/tarantella/etc/templates.oldversion 目录中。

    • 新的非自定义版本,位于 /opt/tarantella/etc/templates 目录中。

    使用 diff 之类的实用程序比较旧的非自定义文件与新的非自定义文件。这将突出显示两个 SGD 版本之间发生的变化。

  3. 将变化内容应用到自定义文件中。

    使用 patch 之类的实用程序将在步骤 2 中找出的变化应用到自定义文件的副本中。

  4. 将升级后的自定义文件复制到新 SGD 安装中的正确位置。

procedure icon  如何手动升级定制的 SGD 服务器文件

  1. 创建定制文件的副本。

  2. 找出两个 SGD 版本之间发生的变化。

    docrootjava.logcustomized.list 日志文件列出了所有可能需要手动升级的定制文件。

    升级定制文件的唯一方法是:比较标准 SGD 文件的不同版本,找出发生的变化,然后将这些变化内容应用到定制文件中。

    使用 diff 之类的实用程序比较旧的非自定义文件与新的非自定义文件。这将突出显示两个 SGD 版本之间发生的变化。

    要找出发生的变化,请比较以下文件:

    • 旧版的标准 SGD 文件,位于 /opt/tarantella/etc/templates.oldversion 目录中。

    • 新版的标准 SGD 文件,位于 /opt/tarantella/etc/templates 目录中。

  3. 将变化内容应用到定制文件中。

    使用 patch 之类的实用程序将在步骤 2 中找出的变化应用到定制文件的副本中。

  4. 将升级后的定制文件复制到新 SGD 安装中的正确位置。


升级其他 SGD 组件

本节介绍了如何升级 SGD 增强模块和 SGD Client。

procedure icon  如何升级用于 Microsoft Windows 的 SGD 增强模块

procedure icon  如何升级用于 UNIX 和 Linux 平台的 SGD 增强模块

升级 SGD 增强模块和安装 UNIX 音频模块时,可能会显示一条消息,指出 UNIX 音频模块已经在运行。之所以会出现此消息,是因为 SGD 音频驱动程序当前正在使用中,并且无法停止。由于此发行版中没有更改 SGD 音频驱动程序,所以可安全地忽略该消息。

procedure icon  如何自动升级 SGD Client

仅当以下两个条件成立时,才能自动升级 SGD Client:

  • SGD Client 的旧版本是自动安装的

  • 用户使用的浏览器具有受支持的 Java Plug-in 工具并启用了 Java 技术

  1. 关闭当前所有的浏览器会话。

  2. 启动一个新的浏览器会话。

  3. 登录到 SGD。

    请参见如何登录到 SGD

procedure icon  如何手动升级 SGD Client

只有在 SGD Client 的旧版本是手动安装的情况下,才能按照以下过程执行操作。