桌面被设计为非常适合于高度网络化的环境。
桌面的体系结构使系统管理员能通过网络来分配计算资源。其中包括:
应用程序
应用程序的数据文件
桌面会话服务(诸如"登录管理器"和"文件管理器"之类的 桌面应用程序)
帮助服务(帮助数据文件可以放置在中心帮助服务器上)
操作系统提供了多种联网服务,其中包括分布式文件系统和远程执行。 X 服务器提供了附加的联网能力,其中包括访问远程显示及安全服务。
桌面提供了一个处于这些联网特性之上的用户界面。此界面及其所包含的体系结构的目标在于使网络化 系统具有下述特点:
便于使用。用户不必担心应用程序和数据究竟在网络中的什么位置,可以直接运行应用程序并且访问数据文件。
便于管理。桌面提供了应用程序集成工具和网络化搜索路径,利用这些工具便于系统定位远程数据和应用程序。 此外,桌面的文件名映射处理,使得管理由多服务器组成的复杂网络更加方便。
性能灵活。虽然桌面的管理特性是为特定的通用网络环境而设计的,但其桌面可以提供许多其它定制的网络配置。
联网使用户可以访问分布在其它系统中的各种资源,这些资源包括:
桌面会话及其应用程序-例如,"工作区管理器"和"文件管理器"
其它应用程序
数据文件
联网术语用服务器一词来描述向一个或多个其它系统提供计算资源 的系统。当一系统从 服务器获得服务的时候,它被称为此服务器的客户。
在一套复杂的网络系统中,一个系统可以使用位于整个网络中的大量的服务器所提供的服务。此外,一个系统既可以是某一类型的服务器(例如,会话服务器),又可以同时是某一服务器(例 如,应用程序服务器)的客户。
从桌面的角度来看,一套典型的网络配置可以包含下列主组件的组合:
显示-X 服务器的运行位置
登录/会话服务器-桌面应用程序("登录管理器"、"工作区 管理器"等等)的运行位置。
最为通用的网络配置常常包括一些访问应用程序管理器的系统。 图形 7-1举例说明了使用应用程序服务器的工作站。此 X 服务器和桌面会话是在该工作站上运行的。
网络也经常利用文件服务器来存储大量数据。这些数据可能被应用程序服务器上的应用程序所使用。 或者由桌面应用程序(例如,"文件管理器"需要访问数据文件,以便将其在"文件管理器"窗口中显示出来)使用。
桌面很灵活,可以支持更多复杂的网络配置。这往往能提供各种服务,除了文件服务器之外, 应用程序服务器也可使用这些服务。
显示-运行 X 服务器的系统。
登录和会话服务器-运行桌面会话(诸如"登录服务器"、"会话服务器"和"窗口服 务器"之类)的系统。
应用程序服务器-运行应用程序的系统。也称为 执行宿主机。
文件服务器-存储应用程序的数据文件的系统。
(动作)数据库服务器-存储文件的系统,这些文件包含动作和数据类型的定义。
网络还可能包括一些附加服务器,诸如口令服务器、邮件服务器、视频服务器之类。
桌面联网配置一般有三步:
配置基本操作系统的网络服务。
这些是由操作系统所提供的联网服务,桌面依赖于这些服务。请参阅 "为桌面配置基本操作系统网络"。
安装并配置桌面联网软件和服务。
无论是否建立了客户系统和服务器系统的类型,这些服务都是桌面所必需的。请参阅 "配置桌面客户和服务器"。
配置特定的服务器和客户类型。
例如,配置一应用程序服务器就与配置文件服务器的步骤不同,请参阅 "管理应用程序服务"。
桌面要求下列基本网络配置:
用户必须在会话服务器和为会话服务器提供桌面服务的各个系统上都有登录帐户。在所有的客户和服务器系统中,用户必须有 相同的用户 ID 和组 ID 。
系统必须能够访问远程文件系统,这些文件系统包含了会话和其它应用程序所 使用的数据。
lp打印假脱机程序必须配置成能够访问远程打印机。
必须适当配置 sendmail,以便用于电子邮件服务。
必须设置 X 授权。
本节描述桌面联网所需要的登录帐户。
用户必须有登录帐户在:
所有为桌面提供服务的系统,包含应用程序服务器、文件服务器和提供联网打印机的系统。
用户可能访问的所有会话服务器。通常,会话服务器是和 X 终端一起使用。
UNIX 用户是由登录名和数字式用户 ID ( UID )来标识的。在桌面网络中,用户在所有的客户和服务器系统中应有相同的 登录名和 UID 。
通常指定 UNIX 用户为某个或某些登录组的成员,每组均有其用户组名和数字式用户组 ID ( GID )。在桌面网络中,所有的系统都应有一致的组名和组 ID。
关于进一步信息,请参阅 id(1) 或 id(1M) 的手册页。
桌面利用 NFS 文件系统来进行系统间的文件共享。必须能在网络中标识所有包含共享文件的文件系统,并确保它们已正确的装配在所有相应的系统中。
典型的情况是,必须提供下列远程文件访问:
所有桌面客户和服务器系统必须共享用户的起始目录。这是必要的,因为:
用户的起始目录中包含数据文件,这些数据文件是远程系统中的应用程序所必须访问的。 例如,使用数据文件的应用程序经常利用用户的起始目录作为缺省的数据文件位置。
用户的起始目录是缺省的 dtspcd验证目录。 关于 dtspcd的进一步信息,请参阅 "配置子进程控制守护程序"。
如果用户需要访问不在起始目录及其子目录中的文件时,则这些数据文件必须是为所有对此文件进行操作的的桌面客户 和服务器系统所共享的数据文件。
桌面安装和配置目录( /usr/dt和 /etc/dt)必须为所有桌面客户和服务器系统 所共享,这样,用户所有的应用程序就可以访问同样的桌面配置文件。
若用户只使用一个起始目录,且所有客户和服务器系统均共享此目录, 则此桌面网络系统的工作效率最高。
联网的起始目录可以使得用户使用网络中不同的系统 而不失去个人的定制环境和配置。 这是因为用户个人的定制信息和用以恢复以前会话的信息被存储在用户起始目录的子目录中。
下列应用也需要通用的起始目录:
缺省的 X 授权机制 (请参阅 "配置 X 授权")。
桌面子进程控制守护进程。此守护程序参与到启动远程应用程序的过程之中,进而必须能写至用户的起始目录中。
应配置网络,以便用户可使用相同的文件名,在所有系统上访问它们的数据文件。 这称作提供文件名一致性,文件名一致性是通过创建恰当的符号链接来完成的。例如,可通过 创建符号链接到实际目录装配位置的方法来配置网络中所有系统,使每个用户的起始目录为 /users/login_name。
桌面利用 lp打印假脱机程序来访问本地或远程 的打印机。关于配置 lp的进一步信息,请参阅 lpadmin( 1M ) 的手册页。
在试图利用桌面图形接口进行打印之前,应首先测试是否能利用lp命令正确地打印到所有打印机。
确保使用一致的打印设备名。例如,如果特定的打印机在与之直接相连的系统中的设备名为 Postscript1,则所有其它远程访问此打印机的系统也都应使用Postscript1名。
桌面邮寄程序利用 sendmail在系统间传递邮件。 关于如何配置电子邮件的连接的进一步信息,请参阅 sendmail( 1M ) 的手册页。
在试图从桌面发送或接收邮件之前,应当测试一下是否可以用 mailx命令来正确地发送和接收邮件。
桌面利用缺省的 X 机制来为访问本地显示的远程应用程序( X 客户)授权。配置的最简便的方法是为每用户提供联网的起始目录。这就保证了能满足 下列要求:
用户必须对文件 HomeDirectory/.Xauthority有读写许可。
在应用程序服务器上的文件.Xauthority中必须包含 "magic cookie",以便于在应用程序将要运行的系统中显示。
关于进一步信息,请参阅 X( 1 ) 或 xauth( 1 )的手册页。
本节包括针对于桌面网络的配置要求 -也就是说,这些能力是由桌面提供的, 而不是由基本操作系统所提供的。
本节分为两部分:
配置登录和会话服务。
配置由应用程序和其数据所要求的服务。这包括应用程序、数据库、图标、文件和帮助服务器及其客户。
登录/会话服务器是个给显示和 X 服务器提供桌面服务("登录管理器"、"会 话管理器"、"文件管理器"、"窗口管理器"等)的系统。
典型的情况是,会话服务器为 X 终端提供服务。但是,可以建立网络配置,网络配置在 X 终端和工作站均可访问的一个或多个服务器上集中会话服务。
"登录管理器"是一桌面组件,负责为其它显示提供登录服务。用户一旦登录,就为用户启动 "会话管理器"。
关于配置登录/会话服务器和 X 终端的进一步信息,请参阅 "在网络显示器上显示登录屏幕"。
本节包括对公用桌面联网的要求:
提供桌面所要求的基本操作系统网络配置。
请参阅 "为桌面配置基本操作系统网络"。
必须安装:
为 ToolTalk 文件名数据库服务器守护程序rpc.ttdbserverer 配置系统。
安装桌面时,这个工作会自动进行。关于进一步信息,请参阅 "配置 ToolTalk 数据库服务器 "。
安装桌面时,这个工作会自动进行。关于进一步信息, 请参阅 "配置子进程控制守护程序"。
当数据不在使用此数据的应用程序所在的系统上的时候, 数据被认为是"远程"的。
例如:
如果应用程序利用了位于文件服务器上的数据,则它必须装配 这些文件。
如果"文件管理器"图标位于图标服务器上,则会话服务器 必须装配这些文件。
如果网络使用帮助服务器来存放桌面帮助文件,则会话服务器和所有应用程序服务器必须装配这些帮助数据。
关于装配点的详细信息,请参阅下一节 "为远程文件系统配置装配点"。
当桌面从系统中将文件名传输到另一系统中时,它必须变换这些文件名 ,或将其映射成对目标系统有意义的文件名。由于在不同的系统中同一文件有可能被装配在不同的位置, 所以必须用不同的文件名来访问它们,因此这种映射是必需的。例如文件 /projects/big,它在系统sysA中的,可能作为/net/sysA/projects/big,它在sysB中被 访问。
为了正确的执行此文件名映射操作,下列条件中必须有一个为真:
利用 mount命令来静态装配文件系统。 这些静态装配的类型 一般配置在诸如 /etc/checklist、 /etc/mnttab、 或 /etc/file系统s等文件中。
为了使文件名映射能在系统中正确地工作,文件系统的装配必须使用一致的宿主机名。如果宿主机有几个名称 (例如,别名,或者此宿主机有不止一个局域网地址,这些局域网地址的名称各不相同),必须在所有的装配中使用相同 的名称和相同的名称形式。
或者,自动装配程序被用来装配文件系统,装配在缺省的 /net装配点。
或者,自动装配程序用来装配文件系统,并未装配在 /net中,而是由 DTMOUNTPOINT 环境变量来显示此装配点。请参阅下一节"为 DTMOUNTPOINT 设置值"。
关于自动装配程序的进一步信息,请参阅 automount( 1M )的手册页。
如果下列两个条件均为真,则必须设置 DTMOUNTPOINT 环境变量:
在用户登录后,系统会自动启动用户的桌面进程,这些桌面进程包括"工作区管理器"(dtwm)和"文件管理器" (dtfile)
由本地和远程系统所启动的应用程序。
由用户 shell 命令行所启动的应用程序
为下列进程设置 DTMOUNTPOINT 变量:
在重新读取 /etc/inetd.conf的系统上执行进程。 关于进一步信息,请参阅 inetd( 1M ) 的手册页。
使用由用户登录中继承来的值设置 DTMOUNTPOINT 。
可通过在 /etc/dt/config/Xsession.d 中设置变量的值的方法来完成。关于设置环境变量的进一步信息,请参阅 "设置环境变量"。
桌面的子进程控制 ( SPC ) 服务提供了客户/服务器命令的执行环境。
桌面子进程控制守护程序( dtspcd)是由桌面在启动 远程应用程序时使用的。它是个接收远程客户执行命令的请求的 inet守护程序。关于如何配置 inet守护进 程的进一步信息,请参阅 inetd.conf( 1M ) 的手册页。
桌面的动作调用库,利用 SPC 服务来调用远程动作。
请确定 dtspc是正确注册到 /etc/services 和 /etc/inetd.conf中。
请参阅 dtspcd(1M) 的手册页。
对于子进程控制服务的验证是基于文件系统验证的。 dtspcd 必须能访问所有 SPC 客户系统均装配的 验证目录。
缺省情况下, dtspcd的验证目录即是用户的起始目录。但可配置 dtspcd,即通过在目录 -/etc/inetd.conf 中设置 auth_dir选项, 使其利用不同的目录。关于进一步信息, 请参阅 dtspcd( 1M ) 的手册页。
由于 SPC 验证是基于文件系统验证的,所以 SPC 服 务仅仅与分布式文件系统的安全性一样 。如果正在一个不可信赖的分布式文件系统的网络中使用桌面的话,可能想要使 dtspcd无效,这时只需将 /etc/services中的 dtspc项加以注释,即可使其无效。
当桌面利用动作来启动远程系统上的应用程序的时候, 用户的环境变量被复制到远程系统上, 并放入相应的应用程序的环境中。
缺省情况下,在被复制到远程系统之前,更改了某些环境变量。在环境变量放入应用程 序的环境之前,可通过配置动作调用组件和桌面的子进程控制 服务来完成对附加环境变量的处理。
关于缺省的配置和如何修改它的进一步信息,请参阅 dtactionfile(4) 和 dtspcdenv(4) 的手册页。
ToolTalk 组件之一是 ToolTalk 数据库服务器, /usr/dt/bin/rpc.ttdbserver。
ToolTalk 消息服务使用了 ToolTalk 数据库服务器, 且以此来作为文件名映射。它通常在安装桌面的时候注册到 /etc/inetd.conf中,不需另外作配置工作。
关于 ToolTalk 数据库服务器及其配置选项的进一步信息,请参阅 rpc.ttdbserver( 1M ) 的手册页。
ToolTalk 消息服务器是 ttsession。缺省情况下,它不需任何 配置;在登录期间,它由 X 会话正文启动。
关于 ToolTalk 消息服务器及其配置选项的详细信息,请参阅 ttsession 的手册页。
"日历"应用程序的组件之一是"日历守护程序"rpc.cmsd。它通常在安装桌面时注册到 /etc/inetd.conf中,因此不需要附加的配置工作。
关于日历守护程序及其配置选项的进一步信息,请参阅 rpc.cmsd(1) 的手册页。
本节包括下列服务器的特殊配置要求:
应用程序服务器及其客户
提供特殊服务的桌面服务器-数据库服务器、图标服务器和帮助服务器
它还包括两个联网的应用程序的特殊配置对联网的要求:
远程执行的宿主机
在不同的文件系统装配之间运行的应用程序。
桌面利用一系列环境变量来指定查找应用程序的桌面配置文件的搜索路径,这些配置文件包括 动作和数据类型数据库文件、帮助文件和图标文件。
关于如何使用搜索路径环境变量的进一步信息,请参阅 第 9 章,桌面搜索路径,或参阅 dtenvvar(5) 的手册页。
在标准的应用程序服务器的配置中,应用程序服务器包含与应用程序相连的所有二进制和配置文件 ,其中包括:
提供桌面所需的操作系统网络配置。
请参阅 "为桌面配置基本操作系统网络"。
提供服务器所需的公用桌面配置。
请参阅"配置桌面客户和服务器"。
安装应用程序。
如果应用程序不能自动在系统中注册,则必须执行 注册过程。
请参阅 第 5 章,注册应用程序。
提供桌面所需的操作系统网络配置。
请参阅 "为桌面配置基本操作系统网络"。
配置客户所需的公用桌面配置。
请参阅 "配置桌面客户和服务器"。
在系统范围内或个人范围内将应用程序服务器添加至应用程序搜索路径中:
系统范围内-设置并输出/etc/dt/config/Xsession.d/0010.dtpaths
中的变量 DTSPSYSAPPHOSTS。
个人范围内-设置并输出 HomeDirectory
/.dtprofile中的变量 DTSPUSERAPPHOSTS
例如, 如下所示的在 /etc/dt/config/Xsession.d/0010.dtpaths 中的行将在系统中的应用程序搜索路径中添加宿主机名 SysAAA 和 SysBBB:
export DTSPSYSAPPHOSTS=SysAAA:,SysBBB:
关于设置应用程序搜索路径的进一步信息,请参阅:
通常,与应用程序相关的动作和数据类型定义、图标和帮助数据文件是与应用程序安装在同一系统上的。
例如,可考虑以下典型的帮助数据文件的配置:
"文件管理器"的帮助文件通常是在会话服务器之上的。因为帮助的搜索路径会自动查找 会话服务器上的合适位置,所以桌面能找到这些帮助文件。
其它应用程序的帮助文件通常是与其相应的应用程序在同一应用程序服务器上的。因为修改应用程序的"搜索路径"过程会自动修改帮助搜索路径,所以会话服务器能找到这些帮助文件。
可能想要使数据库(动作和数据类型)、帮助或图标数据放置在网络中与应用程序所不同的位置。 例如,如果网络中使用了多个会话服务器,就有可能要创建帮助服务器,在此帮助服务器中存储了桌面应用程序(文件 管理器、式样管理器,等等类似的桌面应用程序)的所有帮助的数据文件。由于帮助文件不需在每个会话服务器上均复制 一份,所以这节省了磁盘空间。
提供桌面所需的操作系统网络配置。
请参阅 "为桌面配置基本操作系统网络"。
提供客户所需的公用桌面配置。
请参阅 "配置桌面客户和服务器"。
安装数据库、帮助或图标文件。
这些文件可以处于系统的任何地方。但由于应用程序服务器指定了系统 自动搜索下列目录,所以使用 下列位置会很方便。
数据库文件: /etc/dt/appconfig/types/language
帮助文件: /etc/dt/appconfig/help/language
图标文件: /etc/dt/appconfig/icons/language
如果正在设置数据库服务器,则必须写一些动作来指定它们的 EXEC_STRING命令将在何处运行。请参阅 "指定远程执行的宿主机"。
提供桌面所需的基本操作系统网 络配置。
请参阅 "为桌面配置基本操作系统网络"。
提供客户所需的公用桌面配置。
请参阅 "配置桌面客户和服务器"。
在恰当的搜索路径中添加数据库、图标或帮助服务器。
如果将数据文件放置在由 步骤 3of "创建数据库、帮助或图标服务器"所指定的位置中时,"便可以修改应用程序的搜索路径。
如果将数据文件放置在其它位置,就必须修改特定的搜索路径。
例如,如果将帮助文件放置在系统 SysCCC 的 目录 /etc/dt/help 下,则必须将下列行添加到 /etc/dt/config/Xsession.d/0010.dtpaths 中:
export DTSPSYSHELP=/net/SysCCC/etc/dt/help
关于设置搜索路径的进一步信息,请参阅:
本节描述如何配置系统,使其能运行应用程序:
不是在包含动作的系统上-而是在远程执行的 宿主机上
在本地跨文件系统装配
在典型的应用程序服务器的配置中,动作的定义是与其相应的可执行应用程序在同一系统中的。但 也可以写一些动作来执行其它系统上的命令。在此配置下,包含 应用程序的系统被称为执行宿主机。
动作定义可以定位在会话服务器上,也可以在为会话服务器提供了动作和数据类型服务的系统上-被称为数据库服务器 或数据库宿主机。
动作的定义使用 EXEC_HOST
字段来指定其 EXEC_STRING命令在何处运行。例如,下列动作定义指定了 xload客户程序运行在名为 SysDDD的宿主机上:
Action XloadSysDDD { TYPE COMMAND EXEC_HOST SysDDD EXEC_STRING /usr/bin/X11/xload -label SysDDD }
如果 EXEC_HOST
字段中指定了不止一个宿主机名,则 桌面按顺序在每个宿主机上执行 EXEC_STRING 直至找到能执行此动作的宿主机。例如,下列EXEC_HOST
字段的定义指定了动作应首先在 SysDDD系统上尝试运行 EXEC_STRING,如此运行失败,则尝试 SysEEE。
EXEC_HOST SysDDD,SYSEEE
如果 EXEC_HOST
字段不是为动作而设置,便 缺省该值%DatabaseHost%。 %DatabaseHost%的值是由数据库的查 找路径中得到的。
例如,假设数据库的搜索路径因为向/etc/dt/config/Xsession.d/0010.dtpaths 中添加下列行 的内容而更改:
DTSPSYSDATABASEHOSTS=SysAAA:,/net/SysBBB/etc/dt/appconfig/types/C
SysAAA是由宿主机限定语法-SysAAA: 指定的。我们常常发现动作定义利用搜索路径中的此元素的值来设置数据库宿主机为SysAAA。但是,也发现动作使用/net/SysBBB... 的一部分来设置数据库宿主机为本地系统,因为语法不包括主机限定符。
提供桌面所需的操作系统的网络配置。
请参阅 "为桌面配置基本操作系统网络"。
提供服务器所需的公用桌面配置。
请参阅 "配置桌面客户和服务器"。
确保应用程序已经正确安装,并为本地执行而配置。
提供桌面所需的操作系统网络配置。
请参阅 "为桌面配置基本操作系统网络"。
提供服务器所需的公用桌面配置。
请参阅 "配置桌面客户和服务器"。
创建并安装动作定义和应用程序组。
提供桌面所需的 操作系统网络配置。
请参阅 "为桌面配置基本操作系统网络"。
提供客户所需的公用桌面配置。
请参阅 "配置桌面客户和服务器"。
修改动作搜索路径,使其包含数据库主机。
请参阅 "数据库(动作 / 数据类型)搜索路径"。
修改应用程序搜索路径,使其包含执行主机。
请参阅 "应用程序的搜索路径"。
标准的应用程序服务器配置是在应用程序服务器上运行应用程序。但有时可能需要将应用程序 安装在远程系统上,但可以在本地的会话服务器上执行。
不需要特殊的配置。
修改应用程序搜索路径。利用应用程序的本地绝对路径 。
例如,可利用下列变量的定义来找到在系统 sysAAA 上注册的某一应用程序:
DTSPSYSAPPS=/net/SysAAA/etc/dt/appconfig/appmanager/C
会话服务器必须能访问诸如 app-defaults、消息目录和共享库之类的应用程序配置 文件。