Java Solaris 加入Sun中国技术社区 我的社区 注册说明
 
ISV Online
 
SunRay 搭建Windows环境以及解决Windows环境下中文打印
 
By Benny.Luo@Sun.com, 6/19/07  
SUN中国软件技术中心
罗浩/Benny Luo

简介:

Sun Ray是由Sun Microsystems公司于1999年9月针对企业推出的无状态瘦客户机解决方案的环境.

Sun Ray包含了智能芯片,智能卡读卡机, 液晶显示器。和普通的瘦客户端对比, Sun Ray是一种所有应用都运行在服务器但通过Sun Ray的显示器显示结果的设备。由于Sun Ray的用户会话是放在服务器上,所以它的用户状态不会固定地放在某个Sun Ray终端,只要通过用户验证,你可以在世界各地部署好的Sun Ray环境任意地使用,而且能够继续使用用户 Logout之前的状态。

除此之外,还可以通过智能卡自动识别用户,只需输入密码即可使用原来保存的用户会话,使全世界范围的移动办公更加方便和安全。

Sun Ray的客户端是通过网络连接到Sun Ray服务器的。建立起Sun Ray整套环境,我们需要Sun Ray服务器硬件,Sun Ray 客户端,Sun Ray Server Software – SRSS,最新版本为3.1,可运行在Solaris和Linux操作系统上,如果您希望登陆到Sun Ray上,出来见到的立即是 Windows操作界面,那 么您还需要建立另外一台Windows server 2003/2000版本的服务器,以及在Sun Ray服务器上装Sun Ray connector for windows软件。

Sun Ray Connector 在 Sun Ray 台式机和Windows终端服务器之间起中介作用。它驻留在Sun Ray 服务器上,使用远程桌面协议(Remote Desktop Protocol, RDP) 与 Windows Terminal Server 进行通信,使用Appliance Link Protocol (ALP) 与 Sun Ray 台式机进行通信。

Sun Ray for Windows演示:

● 背景:
以下是我和公司同事以及我们的总代理荣联公司一起为医疗行业所做的Sun Ray for windows演示简要过程,和大家分享一下。

荣联公司投入医疗行业已经很久了,也非常清楚了了解目前医院的IT现状的未来发展需求,在华南地区也和不少重点的行业ISV一起在合作。其 中的工作的重点涉及到SUNRAY+SGD如何取代PC成为现代数字化医院桌面平台的可行性的构想。之后荣联专门和几个熟悉的医院做了交流, 得到的回应是非常的鼓舞人心。其中有一间著名的医院更是对Sun Ray的需求更是非常迫切,该院主任明确表示,只要医院系统能正常安装使用, 打印功能能够实现的话就会马上购买。

此家医院的应用是它的ISV用VB开发的用户交互程序,运行在Windows环境,程序中间使用 Formula one打印控件和Windows自带的打印 API来进行打印,原 来所使用的都是直接附接在PC机上的Epson-LQ300k, Epson-LQ1600k针式打印机。

要建立一套Sun Ray的环境,其实非常简单,但其中我们还是碰到一些问题需要特别的方法解决。

其中包括了:
  1. 如何在Sun Ray环境下一登陆就使用Windows的界面,并且保存原来的用户会话。
  2. 如何正常地打印医院单的格式和中文?
● 硬件设备

两台Sun Fire V20z,一台安装Sun Ray Server,一台安装Windows 2000终端服务器和一个
VB开发的产品。

● 过程  
  1. 首先我们按照 <SRSS 3.1 安装和配置指南>文档建立SRSS软件。& lt; /li>
  2. 然后按照 <Sun Ray Connector for Windows OS版本1.1 安装和管理指南>文档资料连接Windows 2000 终端服务器。
  3. 以上所有步骤都非常顺利,然后我们碰到的问题是:需要配置用户一进行重新登陆就可以自动登陆到Windows界面, 不需要经过Solaris Os的认证,并 且在客户取出智能卡时依然能够保持客户的Windows会话,解决这个问题需要和智能卡配合才能做到,我们通过把智能卡绑定到Solaris的用户上做到不需要输入密码而自动认证。

A. 首先我们在Sun Ray服务器上的Solaris Os里面建立一个用户bennyluo.
. mkdir /export/home/bennyluo
. useradd -d /export/home/bennyluo bennyluo

B.然后我们需要在Sun Ray的管理网页建立智能卡与用户的一一对应关系。
. 首先让 Sun Ray变成读卡器.
sunray1
. 然后加入用户bennyluo并指定智能卡号。

sunray2
. 恢复 Sun Ray为正常使用终端。

sunray3
. 在Solaris OS里面的/export/home目录下建立一个名为sunrays-windows.sh
的脚本, 里面包含了使用uttsc连接Windows界面的命令

  • vi /export/home/sunrays-windows.sh
    /opt/SUNWuttsc/bin/uttsc -m -b 192.168.100.103
    (PS: uttsc: -m为使用Windows全界面,-b 为关闭 Windows界面滚动属性)
  • chmod 755 /export/home/sunrays-windows.sh

.设定Sun Ray策略, 持卡用户使用受控制访问模式。

sunray4
.在Sun Ray管理网页上按受控制的访问模式导航到添加/编辑应用程序.

sunray5
.在Sun Ray管理网页上按受控制的访问模式导航到选择到应用程序.

sunray6
. 最后我们做Sun Ray服务器的冷启动。
sunray7
然后进行测试, 使用我自己的智能卡登陆,可以直接去到Windows终端服务器界面,我们只需要输入Windows登陆的用户名和密码,即可使用Windows终端服务器,并 且把智能卡拔出再重新插入,依然可以保持原来所做的一切事务。


  1. 解决完上面这个问题后,我们来看看如何让打印机在客户自己开发的VB应用环境中正常地打印出中文和它们所需的格式。在试验的初步阶段,我们使用了Solaris的普遍加打印机的方式来进行,由 于在Solaris Os下没有带Epson-LQ300k的打印驱动,在咨询了Epson公司后,我们使用了Epson-LQ2550通用打印驱动代替,这种方式在普通的打印英文和中文都没问题,比 如txt文件,word文档,但碰到了客户自已用VB开发的应用,里面使用Formula One控件和Windows自带的打印 API, 就出现了格式混乱和中文乱码问题,后 来查看过一些文档和在同事的帮助下,知道了我们应该在 Solaris Os上建立一个不带任何驱动程序的裸打印机队列,对发出的打印请求只是做简单的传递作用,具体的打印操作交给 Windows带的打印驱动程序处理。经过测试后,果然没有问题。下面是具体的步骤:
.下面是打印机在Solaris上的具体位置:
/tmp/SUNWut/units/IEEE802.00144f579cc0/dev/printers/Prolific_Technology_
Inc.2305-ca

.建立打印机:
#>/usr/sbin/lpadmin -p utdotlp01 -v
/tmp/SUNWut/units/IEEE802..00144f579cc0/dev/printers/Prolific_Technology
_Inc.2305 -A none -i /usr/lib/lp/model/standard -o banner=never -l any -u
allow:all

.查看打印机状态
#>lpstat -p utdot1p01 -l
printer utdotlp01 is idle. enabled since Fri Mar 23 11:00:08 2007. available.
Form mounted:
Content types: simple
Printer types: unknown
Description:
Connection: direct
Interface: /usr/lib/lp/model/standard
PPD: none
On fault: no alert
After fault: continue
Users allowed:
(all)
Forms allowed:
(none)
Banner page never printed
Character sets:
(none)
Default pitch:
Default page size:
Default port settings:

.启动打印队列
[root@sunrayserver]/> /usr/bin/enable utdotlp01
printer "utdotlp01" now enabled
[root@sunrayserver]/> /usr/sbin/accept utdotlp01

.连接Windows,具体的选项大家如果有兴趣可参考uttsc
man
page.
#>/opt/SUNWuttsc/bin/uttsc -m -O -A 24 -r 'printer:utdotlp01=Epson LQ300K'
192.168.100.103 (Windows OS IP)

至此,Sun Ray的Windows环境基本都已建立好,而且主要的问题都已解决,通过了给用户演示让用户感觉到了Sun Ray的极其方便的特性和良好的操作性。当然,Sun Ray还有其它很多的好处,具体大家可以参考它的相关文档资料,以下列举出一些文档资料。

文档资料:

http://192.18.109.11/819-3384-10/819-3384-10.pdf
ftp://docs-pdf.sun.com/819-3373-10/819-3373-10.pdf
http://192.18.109.11/819-3402-10/819-3402-10.pdf
http://docs-pdf.sun.com/819-7215/819-7215.pdf
http://docs.sun.com/app/docs/coll/1230.1_zh