Guacamole是指“鳄梨色拉酱”,也许是一种美食,所谓“鳄梨”貌似是一种热带水果。这里要讲的Guacamole是一种基于HTML5和AJAX技术的vnc客户端,有了它就可以直接通过web浏览器,快速访问vnc server上的Xwindows系统界面了。优酷上有一段关于Guacamole的视频演示在http://v.youku.com/v_show/id_XMTg4ODgwNDg0.html
目前Guacamole只支持了几种常见的linux发行版:
OS Version | 32-bit | 64-bit |
---|---|---|
Debian 6.0 | Download | Download |
Ubuntu 10.04 | Download | Download |
Ubuntu 10.10 | Download | Download |
Ubuntu 11.04 | Download | Download |
Fedora 14 | Download | Download |
Fedora 15 | Download | Download |
安装使用Guacamole的过程比较简单,以Ubuntu10.10为例:
1. 首先,要安装vnc server,执行如下操作:(这个不是必需,Guacamole支持对本机之外的vncserver进行访问,包括windows上运行的vncserver)
sudo apt-get install vnc4server
接着对vnc的配置文件~/.vnc/xstartup,进行修改。将配置文件填上如下内容:
#!/bin/sh
xrdb $home/.xresources
xsetroot -solid black
gnome-session &
保存后,执行如下命令:
vnc4server
启动vnc server,
然后会提示输入密码,之后输出类似如下的结果:
“New 'NB-machine:5 (root)' desktop is NB-machine:5
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/NB-machine:5.log
其中的5,说明是第五个vnc终端,这个号码很重要,因为vnc server会占用5900-5910的端口号,如果是第五个终端的话,将会使用5905端口号
2. 安装tomcat和libvncserver0,过程如下:
sudo apt-get install tomcat6
sudo apt-get install libvncserver0
3. 下载Guacamole程序,网址为http://guacamole.sourceforge.net/#stable,当前的稳定版本为0.40。下载与你系统版本相同的安装包。如:guacamole-0.4.0-ubuntu-10.10-i586.tar.gz,然后将其解压缩:
sudo tar zxvf guacamole-0.4.0-ubuntu-10.10-i586.tar.gz
进入解压后的目录guacamole-0.4.0-ubuntu-10.10-i586,
cd guacamole-0.4.0-ubuntu-10.10-i586
可以看到目录中有如下几个文件:
-rw-r--r-- 1 root root 193698 2011-07-17 04:11 guacamole_0.4.0_all.deb
-rw-r--r-- 1 root root 5928 2011-07-17 04:32 guacd_0.4.0_i386.deb
-rw-r--r-- 1 root root 10372 2011-07-17 04:12 libguac1_0.4.0_i386.deb
-rw-r--r-- 1 root root 17082 2011-07-17 04:12 libguac1-dev_0.4.0_i386.deb
-rw-r--r-- 1 root root 8592 2011-07-17 04:19 libguac-client-vnc0_0.4.0_i386.deb
它们的功能如下
Package | Description |
---|---|
guacamole | The Guacamole web application and configuration files. |
guacd | The native proxy. |
libguac-client-vnc0 | A plugin for guacd which provides VNC support. |
libguac0 | The library on which guacd and the VNC plugin both depend. |
libguac0-dev | Header files for developing plugins for Guacamole using libguac. You do not need to install this package unless you plan to develop plugins for Guacamole. |
使用dpkg -i *,就可以将其安装。
4.执行如下命令,将Guacamole的war包、配置文件链接到tomcat下:
sudo ln -s /var/lib/guacamole/guacamole.war /var/lib/tomcat6/webapps
sudo ln -s /etc/guacamole/guacamole.properties /var/lib/tomcat6/common/classes
再修改Guacamole的配置文件user-mapping.xml,执行:
vi /etc/guacamole/user-mapping.xml
可以看到其中的内容如下:
1 <user-mapping>
2
3 <!-- Per-user authentication and config information -->
4 <authorize username="USERNAME" password="PASSWORD">
5 <protocol>vnc</protocol>
6 <param name="hostname">localhost</param>
7 <param name="port">5900</param>
8 <param name="password">VNCPASS</param>
9 </authorize>
10
11 <!-- Another user, but using md5 to hash the password
12 (example below uses the md5 hash of "PASSWORD") -->
13 <authorize
14 username="USERNAME2"
15 password="319f4d26e3c536b5dd871bb2c52e3178"
16 encoding="md5">
17 <protocol>vnc</protocol>
18 <param name="hostname">localhost</param>
19 <param name="port">5901</param>
20 <param name="password">VNCPASS</param>
21 </authorize>
22
23 </user-mapping>
其中,标红的地方是重点,<protocol>vnc</protocol>之下填写的是vnc4server启动过程中设置的端口号和密码,这里要注意!!!另外,不仅可以设置本机的vncserver信息,也可以将windows上运行的vnc server的ip地址、端口号、密码放到配置文件中,实现windows的远程桌面
5. 重启tomcat,执行
sudo /etc/init.d/tomcat6 restart
6. 之后就可以在web浏览器中测试Guacamole的效果了:
在浏览器的地址栏中输入ip:8080/Guacamole,然后可以看到如下效果:
按下login按钮,就可以显示远程的Xwindow界面了:
在界面中,还有软键盘功能,按下窗口左上角的“show keyboard”按钮,就可以显示。
最后注意,如果登录后,显示不出系统界面,而是如下的出错信息erro initializing VNC:
说明/etc/guacamole/user-mapping.xml配置文件中,关于vnc server的端口号、密码有问题,需要修改设置。
Guacamole开源项目的网址在:http://guacamole.sourceforge.net/
参考:http://blog.calebegg.com/guacamole-ubuntu-maverick-step-by-step
http://guac-dev.org/Debian%20Install%20Instructions
http://guac-dev.org/Configuring%20Guacamole