我已经构建并安装了 Guacamole 1.0.0 和 Tomcat 8。到目前为止,构建和安装都很顺利。Tomcat 和 Guacamole 正在运行。但是我连接失败(尝试了 SSH 和 RDP)。
Syslog 说:
Apr 13 21:05:17 myserver guacd[28616]: Creating new client for protocol "ssh"
Apr 13 21:05:17 myserver guacd[28616]: guacd[28616]: INFO:#011Creating new client for protocol "ssh"
Apr 13 21:05:17 myserver guacd[28616]: guacd[28616]: INFO:#011Connection ID is "$431c40da-9530-49e8-9f1a-72122d2a5e46"
Apr 13 21:05:17 myserver guacd[28616]: Connection ID is "$431c40da-9530-49e8-9f1a-72122d2a5e46"
Apr 13 21:05:17 myserver guacd[28654]: Wrong number of arguments
Apr 13 21:05:17 myserver guacd[28616]: guacd[28654]: ERROR:#011Wrong number of arguments
Apr 13 21:05:17 myserver guacd[28616]: guacd[28654]: ERROR:#011Unable to load client plugin
Apr 13 21:05:17 myserver guacd[28654]: Unable to load client plugin
Apr 13 21:05:17 myserver guacd[28616]: guacd[28616]: INFO:#011Connection "$431c40da-9530-49e8-9f1a-72122d2a5e46" removed.
Apr 13 21:05:17 myserver guacd[28616]: Connection "$431c40da-9530-49e8-9f1a-72122d2a5e46" removed.
为了完整性,我之前的配置输出是make && make install
:
------------------------------------------------
guacamole-server version 1.0.0
------------------------------------------------
Library status:
freerdp ............. yes
pango ............... yes
libavcodec .......... yes
libavutil ........... yes
libssh2 ............. yes
libssl .............. yes
libswscale .......... yes
libtelnet ........... yes
libVNCServer ........ yes
libvorbis ........... yes
libpulse ............ yes
libwebp ............. yes
wsock32 ............. no
Protocol support:
RDP ....... yes
SSH ....... yes
Telnet .... yes
VNC ....... yes
Services / tools:
guacd ...... yes
guacenc .... yes
guaclog .... yes
Init scripts: no
Systemd units: /etc/systemd/system
我正在运行 32 位 Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-88-generic i686)。我首先尝试了最新的 Guacamole 1.1.0,但出现了同样的错误。
不幸的是,Google 对错误消息“参数数量错误”没有提供太多帮助。任何帮助都非常感谢!
答案1
鳄梨酱开发者 Nick Couchman告诉我:
最有可能的解释是,您使用的 Guacamole Client 和 Guacamole Server 版本不匹配(例如,guacamole-server 1.0.0 和 guacamole-client 1.1.0)。在 1.1.0 版本之前,版本需要匹配。从 1.1.0 版本开始,两者之间进行了一些协商,以更好地实现跨版本兼容性,但保持它们同步仍然是一个好主意。
因此我仔细检查了服务器和客户端版本,都是 1.0.0。
但是,我之前尝试过apt-get install guacamole
安装 0.9.9,但似乎没有用。我再次清除了它,所以我认为这不会造成问题,但清除并没有删除所有内容。另一次apt autoremove
删除了其他软件包,包括:
libguac-client-rdp0:i386 (0.9.9-2build1) ...
libguac-client-ssh0:i386 (0.9.9-2build1) ...
libguac-client-vnc0:i386 (0.9.9-2build1) ...
libguac11:i386 (0.9.9-2build1) ...
我估计这些导致了版本冲突,从而导致了Wrong number of arguments
错误。删除这些包后,Guacamole 可以正常工作。